# drone 会自动先拉取代码 # 再按顺序执行 pipeline 配置中定义的任务 kind: pipeline type: docker name: feature platform: os: linux arch: amd64 trigger: branch: include: - feature/* clone: disable: true steps: - name: deploy image: appleboy/drone-ssh settings: host: from_secret: host username: root key: from_secret: ssh_key port: 22 script_stop: true script: - cd /var/www/todo - git fetch - git checkout ${DRONE_BRANCH} - git reset --hard ${DRONE_COMMIT} - docker-compose down - docker-compose up -d --build --force-recreate - docker image prune -f when: event: include: - push - custom --- kind: pipeline type: docker name: develop platform: os: linux arch: amd64 trigger: branch: include: - develop clone: disable: true steps: - name: deploy image: appleboy/drone-ssh settings: host: from_secret: host username: root key: from_secret: ssh_key port: 22 script_stop: true script: - cd /var/www/todo - git fetch - git checkout ${DRONE_BRANCH} - git reset --hard ${DRONE_COMMIT} - docker-compose down - docker-compose up -d --build --force-recreate - docker image prune -f when: event: include: - push --- kind: pipeline type: docker name: main-pull-request-staging platform: os: linux arch: amd64 trigger: branch: include: - main event: - pull_request action: include: - opened - reopened - synchronized clone: disable: true steps: - name: deploy image: appleboy/drone-ssh settings: host: from_secret: host username: root key: from_secret: ssh_key port: 22 script_stop: true script: - cd /var/www/todo - git fetch - git checkout ${DRONE_BRANCH} - git reset --hard ${DRONE_COMMIT} - docker-compose down - docker-compose up -d --build --force-recreate - docker image prune -f --- kind: pipeline type: docker name: main-merge-pull-request-prod platform: os: linux arch: amd64 trigger: branch: include: - main event: include: - push clone: disable: true steps: - name: semantic-release image: lework/semantic-release settings: git_login: from_secret: gitea_user git_password: from_secret: gitea_password