# Drone CI/CD 配置文件 kind: pipeline type: docker # 使用 Docker 作为执行环境 name: default steps: # 步骤1: 构建 Python 应用 - name: build_imgsearcher image: python:3.9-slim commands: - pip install -r requirements.txt - mkdir -p build/imgsearcher - cp -r app.py app requirements.txt Dockerfile build/imgsearcher/ - pip install -r requirements.txt when: branch: - dev # 步骤2: 构建 imgsearcher 服务的 Docker 镜像 - name: image_imgsearcher image: ccr-29eug8s3-vpc.cnc.bj.baidubce.com/service/kaniko:latest settings: registry: ccr-29eug8s3-vpc.cnc.bj.baidubce.com repo: ccr-29eug8s3-vpc.cnc.bj.baidubce.com/service/imgsearcher username: from_secret: registry_username password: from_secret: registry_password tags: - latest - ${DRONE_COMMIT_SHA} dockerfile: Dockerfile build_args: - HTTP_PROXY=${HTTP_PROXY} - HTTPS_PROXY=${HTTPS_PROXY} - NO_PROXY=${NO_PROXY} when: branch: - dev # 步骤3: 部署 imgsearcher 到开发环境 - name: deploy-imgsearcher-dev image: ccr-29eug8s3-vpc.cnc.bj.baidubce.com/service/drone-kubernetes settings: kubernetes_server: from_secret: kubernetes_server_dev kubernetes_token: from_secret: kubernetes_token_dev kubernetes_cert: from_secret: kubernetes_cert_dev namespace: from_secret: kubernetes_namespace_dev deployment: imgsearcher-api container: imgsearcher-api repo: ccr-29eug8s3-vpc.cnc.bj.baidubce.com/service/imgsearcher tag: ${DRONE_COMMIT_SHA} when: branch: - dev trigger: branch: - dev event: - push - tag