From 9123149565d393e9260a90197f5e35097f7ab355 Mon Sep 17 00:00:00 2001 From: lilinyuan <1084668738@qq.com> Date: Mon, 1 Apr 2024 11:23:51 +0800 Subject: [PATCH] feat: up dependencies --- .drone.yml | 68 +++++++++++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 65 insertions(+), 3 deletions(-) diff --git a/.drone.yml b/.drone.yml index ff45f09..fada25d 100644 --- a/.drone.yml +++ b/.drone.yml @@ -5,6 +5,8 @@ platform: os: linux arch: arm64 steps: + + - name: build-package image: node:16.20.0 volumes: @@ -32,8 +34,7 @@ steps: - cp -r dist /app/build/$DRONE_REPO_NAME - - - name: build-docker # 制作docker镜像 + - name: build-docker-prod # 制作docker镜像 image: docker # 使用官方docker镜像 volumes: # 将容器内目录挂载到宿主机 - name: docker @@ -55,6 +56,9 @@ steps: - sed -i 's/$REGISTRY_NAMESPACE/'"$REGISTRY_NAMESPACE"'/' deployment.yml - sed -i 's/$DRONE_REPO_NAME/'"$DRONE_REPO_NAME"'/' deployment.yml - sed -i 's/$DRONE_COMMIT/'"$DRONE_COMMIT"'/' deployment.yml + - sed -i 's/$PORTS_NAME/'"dasdafas"'/' deployment.yml + - sed -i 's/$PORTS_PORT/'"8081"'/' deployment.yml + - sed -i 's/$PROFILES/'"mosr"'/' nginx.conf # docker登录,不能在脚本中登录,并且不能使用docker login -u -p - echo $DOCKER_PASSWORD | docker login $REGISTRY --username $DOCKER_USERNAME --password-stdin - chmod +x docker.sh @@ -62,9 +66,47 @@ steps: - sh docker.sh # 执行完脚本删除本次制作的docker镜像,避免多次后当前runner空间不足 - docker rmi -f $(docker images | grep $DRONE_REPO_NAME | awk '{print $3}') + when: + branch: + - prod + - name: build-docker-dm # 制作docker镜像 + image: docker # 使用官方docker镜像 + volumes: # 将容器内目录挂载到宿主机 + - name: docker + path: /var/run/docker.sock # 挂载宿主机的docker + - name: config + path: /config + environment: # 获取到密文的docker用户名和密码 + DOCKER_USERNAME: + from_secret: docker_username + DOCKER_PASSWORD: + from_secret: docker_password + REGISTRY: + from_secret: registry + REGISTRY_NAMESPACE: + from_secret: registry_namespace + commands: # 定义在Docker容器中执行的shell命令 + - cat Dockerfile + - sed -i 's/$REGISTRY/'"$REGISTRY"'/' deployment.yml + - sed -i 's/$REGISTRY_NAMESPACE/'"$REGISTRY_NAMESPACE"'/' deployment.yml + - sed -i 's/$DRONE_REPO_NAME/'"$DRONE_REPO_NAME"'/' deployment.yml + - sed -i 's/$DRONE_COMMIT/'"$DRONE_COMMIT"'/' deployment.yml + - sed -i 's/$PORTS_NAME/'"dasdafas"'/' deployment.yml + - sed -i 's/$PORTS_PORT/'"8082"'/' deployment.yml + - sed -i 's/$PROFILES/'"mosr-dm"'/' nginx.conf + # docker登录,不能在脚本中登录,并且不能使用docker login -u -p + - echo $DOCKER_PASSWORD | docker login $REGISTRY --username $DOCKER_USERNAME --password-stdin + - chmod +x docker.sh + - cat docker.sh + - sh docker.sh + # 执行完脚本删除本次制作的docker镜像,避免多次后当前runner空间不足 + - docker rmi -f $(docker images | grep $DRONE_REPO_NAME | awk '{print $3}') + when: + branch: + - dm - - name: drone-rancher # rancher运行 + - name: drone-rancher-prod # rancher运行 image: bitnami/kubectl:1.26.13-debian-11-r1 volumes: # 将容器内目录挂载到宿主机 - name: config @@ -72,6 +114,24 @@ steps: commands: # 定义在Docker容器中执行的shell命令 # 将deployment中定义的变量替换为drone中的内置变量 - kubectl apply -f deployment.yml -n mosr --kubeconfig=/app/config/base-taishan-kubectl.yml + when: + branch: + - prod + + + - name: drone-rancher-dm # rancher运行 + image: bitnami/kubectl:1.26.13-debian-11-r1 + volumes: # 将容器内目录挂载到宿主机 + - name: config + path: /app/config # 将kubectl 配置文件挂载出来 + commands: # 定义在Docker容器中执行的shell命令 + # 将deployment中定义的变量替换为drone中的内置变量 + - kubectl apply -f deployment.yml -n mosr-dm --kubeconfig=/app/config/base-taishan-kubectl.yml + when: + branch: + - dm + + volumes: - name: cache @@ -84,8 +144,10 @@ volumes: host: path: /var/run/docker.sock +load: trigger: branch: - prod + - dm event: - push