opengis/.drone.yml
Flook afcbb7d487
Some checks failed
continuous-integration/drone/push Build is failing
Fix การทดสอบด้วย Drone-CI
2025-04-15 08:19:04 +07:00

59 lines
1.9 KiB
YAML

kind: pipeline
type: docker
name: default
steps:
- name: Build Backend (Spring Boot)
image: maven:3.9-eclipse-temurin-21
commands:
- cd employee-service
- mvn clean install -DskipTests # ใช้ mvn clean install แทน mvn clean package เพื่อสร้างไฟล์ .class
- name: Build Frontend (React)
image: node:20-alpine
commands:
- cd frontend
- npm install
- npm run build
- name: Run SonarQube Scan
image: sonarsource/sonar-scanner-cli
environment:
SONAR_HOST_URL:
from_secret: SCANNER_HOST_URL
SONAR_LOGIN:
from_secret: SCANNER_LOGIN
SONAR_TOKEN:
from_secret: SCANNER_TOKEN
commands:
- mkdir -p /tmp/.scannerwork
- chmod -R 777 /tmp/.scannerwork
- >
sonar-scanner
-Dsonar.login=$SONAR_LOGIN
-Dsonar.token=$SONAR_TOKEN
-Dsonar.host.url=$SONAR_HOST_URL
-Dsonar.projectKey=crud_app
-Dsonar.projectName=crud_app
-Dsonar.working.directory=/tmp/.scannerwork
-Dsonar.modules=frontend,employee-service
-Dfrontend.sonar.projectBaseDir=frontend
-Dfrontend.sonar.sources=src
-Dfrontend.sonar.exclusions=**/node_modules/**
-Demployee-service.sonar.projectBaseDir=employee-service
-Demployee-service.sonar.sources=src/main/java
-Demployee-service.sonar.java.binaries=employee-service/target/classes # เส้นทางของ .class ต้องตรงกับที่สร้างจากการคอมไพล์
- name: Deploy to Server
image: curlimages/curl:latest
environment:
WEBHOOK_URL:
from_secret: WEBHOOK_URL
WEBHOOK_SECRET:
from_secret: WEBHOOK_SECRET
commands:
- >
curl -X POST -H "Content-Type: application/json"
-H "Authorization: Bearer $WEBHOOK_SECRET"
-d "{\"branch\":\"master\"}" "$WEBHOOK_URL"