diff --git a/.drone.yml b/.drone.yml index d6ddf4a..29a4951 100644 --- a/.drone.yml +++ b/.drone.yml @@ -17,8 +17,8 @@ workspace: volumes: - name: maven-cache path: /localcache/maven/repository - - name: node-cache - path: /localcache/node_modules + - name: npm-cache + path: /localcache/npm-cache clone: depth: 0 @@ -36,35 +36,20 @@ steps: MAVEN_OPTS: -Dmaven.repo.local=/localcache/maven/repository commands: - mkdir -p ~/.m2 - - | - cat > ~/.m2/settings.xml << 'EOF' - - - - - aliyun - * - Aliyun Maven - https://maven.aliyun.com/repository/public - - - - EOF - - mvn -s ~/.m2/settings.xml clean test package + - ls cat ~/.m2/settings.xml + - mvn -B clean test package - ls -lah target/*.jar || (echo "JAR file not found!" && exit 1) - name: frontend-build image: registry.cn-beijing.aliyuncs.com/yinzy/node:20.11-alpine3.19 pull: false volumes: - - name: node-cache - path: /localcache/node_modules + - name: npm-cache + path: /localcache/npm-cache commands: - cd vue-ui - - npm config set cache /localcache/node_modules/.npm - - npm ci --registry=https://registry.npmmirror.com + - npm config set cache /localcache/npm-cache/.npm + - npm ci -prefer-offline --registry=https://registry.npmmirror.com - npm run build - ls -lah dist @@ -103,9 +88,9 @@ volumes: - name: docker_sock path: /var/run/docker.sock - name: jar-cache - path: /localcache - - name: node-cache - path: /localcache/node_modules + path: /localcache/apps + - name: npm-cache + path: /localcache/npm-cache clone: depth: 0 @@ -117,19 +102,19 @@ steps: image: registry.cn-beijing.aliyuncs.com/yinzy/node:20.11-alpine3.19 pull: false volumes: - - name: node-cache - path: /localcache/node_modules + - name: npm-cache + path: /localcache/npm-cache - name: jar-cache # 复用已有 /localcache,用于暂存 dist.zip - path: /localcache + path: /localcache/apps commands: - cd vue-ui - - npm config set cache /localcache/node_modules/.npm - - npm ci --registry=https://registry.npmmirror.com + - npm config set cache /localcache/npm-cache/.npm + - npm ci -prefer-offline --registry=https://registry.npmmirror.com - npm run build - cd dist && tar -czf ../dist.tgz . && cd .. - - mkdir -p /localcache/${DRONE_REPO_NAME} - - cp dist.tgz /localcache/${DRONE_REPO_NAME}/dist-${DRONE_TAG}.tgz -f - - ls -lah /localcache/${DRONE_REPO_NAME}/dist-${DRONE_TAG}.tgz + - mkdir -p /localcache/apps/${DRONE_REPO_NAME} + - cp dist.tgz /localcache/apps/${DRONE_REPO_NAME}/dist-${DRONE_TAG}.tgz -f + - ls -lah /localcache/apps/${DRONE_REPO_NAME}/dist-${DRONE_TAG}.tgz - name: java-build image: registry.cn-beijing.aliyuncs.com/yinzy/maven:3.9-eclipse-temurin-8 @@ -138,36 +123,19 @@ steps: - name: maven-cache path: /localcache/maven/repository - name: jar-cache - path: /localcache + path: /localcache/apps environment: MAVEN_OPTS: -Dmaven.repo.local=/localcache/maven/repository commands: - - mkdir -p ~/.m2 - - | - cat > ~/.m2/settings.xml << 'EOF' - - - - - aliyun - * - Aliyun Maven - https://maven.aliyun.com/repository/public - - - - EOF - - mvn -s ~/.m2/settings.xml -DskipTests=true clean package + - mvn -B -DskipTests=true clean package - ls -lah target/*.jar || (echo "JAR file not found!" && exit 1) - | - mkdir -p /localcache/${DRONE_REPO_NAME} + mkdir -p /localcache/apps/${DRONE_REPO_NAME} JAR_FILE=$(ls target/*.jar 2>/dev/null | head -1) if [ -n "$JAR_FILE" ]; then - cp "$JAR_FILE" /localcache/${DRONE_REPO_NAME}/ -f - echo "✅ JAR file backed up to /localcache/${DRONE_REPO_NAME}/$(basename $JAR_FILE)" - ls -lh /localcache/${DRONE_REPO_NAME}/ + cp "$JAR_FILE" /localcache/apps/${DRONE_REPO_NAME}/ -f + echo "✅ JAR file backed up to /localcache/apps/${DRONE_REPO_NAME}/$(basename $JAR_FILE)" + ls -lh /localcache/apps/${DRONE_REPO_NAME}/ else echo "⚠️ No JAR file found to backup" fi @@ -179,7 +147,7 @@ steps: - name: docker_sock path: /var/run/docker.sock commands: - - cp /localcache/${DRONE_REPO_NAME}/dist-${DRONE_TAG}.tgz dist.tgz + - cp /localcache/apps/${DRONE_REPO_NAME}/dist-${DRONE_TAG}.tgz dist.tgz - ls -lh dist.tgz - docker info - docker build -t ${DRONE_REPO_NAME}-frontend:latest -f docker/Dockerfile-frontend . @@ -215,15 +183,15 @@ steps: pull: false volumes: - name: jar-cache - path: /localcache + path: /localcache/apps settings: api_key: from_secret: gitea_token base_url: from_secret: gitea_base_url files: - - /localcache/${DRONE_REPO_NAME}/*.jar - - /localcache/${DRONE_REPO_NAME}/dist-${DRONE_TAG}.tgz + - /localcache/apps/${DRONE_REPO_NAME}/*.jar + - /localcache/apps/${DRONE_REPO_NAME}/dist-${DRONE_TAG}.tgz title: Release ${DRONE_TAG} note: | Release ${DRONE_TAG}