1 Commits

Author SHA1 Message Date
clay
e220831a64 ci: 测试ci 2023-11-11 16:55:15 +08:00

View File

@@ -7,36 +7,32 @@ steps:
volumes: volumes:
- name: cache - name: cache
path: /drone/src/node_modules path: /drone/src/node_modules
- name: build
path: /app/build
commands: commands:
- export CI=false - export CI=false
- mkdir -p /app/build/$DRONE_REPO_NAME - mkdir -p /app/build/$DRONE_REPO_NAME
- rm -rf /app/build/$DRONE_REPO_NAME/* - rm -rf /app/build/$DRONE_REPO_NAME/*
- cp deployment.yml /app/build/$DRONE_REPO_NAME/ # - cp deployment.yml /app/build/$DRONE_REPO_NAME/
- cp Dockerfile /app/build/$DRONE_REPO_NAME/ # - cp Dockerfile /app/build/$DRONE_REPO_NAME/
- cp .dockerignore /app/build/$DRONE_REPO_NAME/ # - cp .dockerignore /app/build/$DRONE_REPO_NAME/
- cp default.conf /app/build/$DRONE_REPO_NAME/ # - cp default.conf /app/build/$DRONE_REPO_NAME/
- cp docker.sh /app/build/$DRONE_REPO_NAME/ # - cp docker.sh /app/build/$DRONE_REPO_NAME/
- cp nginx.conf /app/build/$DRONE_REPO_NAME/ # - cp nginx.conf /app/build/$DRONE_REPO_NAME/
- npm -v # - npm -v
- mkdir -p ./node_modules - mkdir -p ./node_modules
- export NODE_MODULES_PATH=`pwd`/node_modules - export NODE_MODULES_PATH=`pwd`/node_modules
- npm config set registry https://registry.npm.taobao.org - npm config set registry https://registry.npm.taobao.org
- set NODE_OPTIONS=--openssl-legacy-provider - set NODE_OPTIONS=--openssl-legacy-provider
- npm install - npm install
- npm run build - npm run build
- ls /app/build/$DRONE_REPO_NAME/ # - ls /app/build/$DRONE_REPO_NAME/
- echo $NODE_MODULES_PATH - echo $NODE_MODULES_PATH
- cp -r dist /app/build/$DRONE_REPO_NAME # - cp -r dist /app/build/$DRONE_REPO_NAME
- name: build-docker # 制作docker镜像 - name: build-docker # 制作docker镜像
image: docker # 使用官方docker镜像 image: docker # 使用官方docker镜像
volumes: # 将容器内目录挂载到宿主机 volumes: # 将容器内目录挂载到宿主机
- name: build
path: /app/build
- name: docker - name: docker
path: /var/run/docker.sock # 挂载宿主机的docker path: /var/run/docker.sock # 挂载宿主机的docker
- name: config - name: config
@@ -51,8 +47,7 @@ steps:
REGISTRY_NAMESPACE: REGISTRY_NAMESPACE:
from_secret: registry_namespace from_secret: registry_namespace
commands: # 定义在Docker容器中执行的shell命令 commands: # 定义在Docker容器中执行的shell命令
- cd /app/build/$DRONE_REPO_NAME/ # - cat Dockerfile
- cat Dockerfile
- sed -i 's/$REGISTRY/'"$REGISTRY"'/' deployment.yml - sed -i 's/$REGISTRY/'"$REGISTRY"'/' deployment.yml
- sed -i 's/$REGISTRY_NAMESPACE/'"$REGISTRY_NAMESPACE"'/' 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_REPO_NAME/'"$DRONE_REPO_NAME"'/' deployment.yml
@@ -71,25 +66,20 @@ steps:
- name: drone-rancher # rancher运行 - name: drone-rancher # rancher运行
image: registry.cn-chengdu.aliyuncs.com/claywang/kubectl #阿里云的kubectl镜像,里面包含kubectl命令行工具 image: registry.cn-chengdu.aliyuncs.com/claywang/kubectl #阿里云的kubectl镜像,里面包含kubectl命令行工具
volumes: # 将容器内目录挂载到宿主机 volumes: # 将容器内目录挂载到宿主机
- name: build
path: /app/build # 将应用打包好的Jar和执行脚本挂载出来
- name: config - name: config
path: /app/config # 将kubectl 配置文件挂载出来 path: /app/config # 将kubectl 配置文件挂载出来
commands: # 定义在Docker容器中执行的shell命令 commands: # 定义在Docker容器中执行的shell命令
- cd /app/build/$DRONE_REPO_NAME/ - cd /app/build/$DRONE_REPO_NAME/
# 将deployment中定义的变量替换为drone中的内置变量 # 将deployment中定义的变量替换为drone中的内置变量
- cat deployment.yml # - cat deployment.yml
# 通过kubectl指令运行deployment.yml,并指定授权文件kubectl_conf.yml # 通过kubectl指令运行deployment.yml,并指定授权文件kubectl_conf.yml
# - kubectl apply -f deployment.yml -n $DRONE_COMMIT_BRANCH --kubeconfig=/app/config/kubectl_conf.yml # - kubectl apply -f deployment.yml -n $DRONE_COMMIT_BRANCH --kubeconfig=/app/config/kubectl_conf.yml
- kubectl apply -f deployment.yml -n dev --kubeconfig=/app/config/hcy-text-kubectl.yml - kubectl apply -f deployment.yml -n dev --kubeconfig=/app/config/hcy-text-kubectl.yml
volumes: volumes:
- name: build
host:
path: /home/build
- name: cache - name: cache
host: host:
path: /home/npm/cache path: /home/npm/fateverse-react
- name: config # k8s对接的配置文件 - name: config # k8s对接的配置文件
host: host:
path: /home/kubect path: /home/kubect
@@ -103,5 +93,6 @@ volumes:
trigger: trigger:
branch: branch:
- prod - prod
# - dev
event: event:
- push - push