From 2dac68c48f2821db1ca238da2d7151b44e3a0b26 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=B6=E6=9E=97?= Date: Sat, 7 May 2022 19:29:30 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20'.drone.yml'?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .drone.yml | 93 ++++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 90 insertions(+), 3 deletions(-) diff --git a/.drone.yml b/.drone.yml index 4115973..dd9dc6c 100644 --- a/.drone.yml +++ b/.drone.yml @@ -1,6 +1,93 @@ kind: pipeline type: docker -name: default +name: trytest + +clone: + disable: true + steps: - - name: test - - name: two + - name: clone + pull: if-not-exists + image: alpine/git + volumes: + - name: sshkeys + path: /root/.ssh + commands: + - echo $DRONE_GIT_SSH_URL + - git clone $DRONE_GIT_SSH_URL . + - git checkout $DRONE_COMMIT + - name: restore-cache + pull: if-not-exists + image: drillster/drone-volume-cache + volumes: + - name: cache + path: /cache + settings: + restore: true + mount: + - ./node_modules + - name: build-front + pull: if-not-exists + image: node + settings: + mirror: https://docker.mirrors.ustc.edu.cn + commands: + - yarn install + - yarn run build-test + - name: rebuild-cache + pull: if-not-exists + image: drillster/drone-volume-cache + volumes: + - name: cache + path: /cache + settings: + rebuild: true + mount: + - ./node_modules + - name: build-image + pull: if-not-exists + image: plugins/docker + privileged: true + volumes: + - name: certs + path: /etc/docker/certs.d + settings: + mirror: https://docker.mirrors.ustc.edu.cn + dockerfile: docker/test/Dockerfile + repo: registry.happykit.net:5000/test/my-app + registry: registry.happykit.net:5000 + tags: ${DRONE_BUILD_NUMBER} + username: admin + password: admin + + - name: deploy-container + pull: if-not-exists + image: appleboy/drone-ssh + settings: + host: 172.16.113.10 + username: root + password: password + port: 22 + script: + - docker login -u admin -p admin registry.happykit.net:5000 + - docker pull registry.happykit.net:5000/test/my-app:${DRONE_BUILD_NUMBER} + - list=$(docker ps -a| grep test-my-app* | awk '{print $1}') + - test "$list" = "" && echo "none test-my-app containers running" || docker stop $list + - docker run -d -v /data/my-app:/logs --privileged=true -l "traefik.http.routers.web-service.rule=Host(\`web.happykit.net\`)" -l "traefik.http.services.web-service.loadbalancer.server.port=8080" --network=app_network --name=test-my-app-${DRONE_BUILD_NUMBER} registry.happykit.net:5000/test/my-app:${DRONE_BUILD_NUMBER} + +trigger: + branch: + - master + event: + - push +volumes: + - name: sshkeys + host: + path: /root/.ssh + - name: cache + host: + path: /tmp/cache + - name: certs + host: + path: /etc/docker/certs.d +