Skip to content

Commit 07ae37e

Browse files
committed
update gitlab-ci.yml
1 parent 00ef4d2 commit 07ae37e

File tree

1 file changed

+88
-0
lines changed

1 file changed

+88
-0
lines changed

.gitlab-ci.yml

Lines changed: 88 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,88 @@
1+
variables:
2+
PATH: /opt/go-1.23/go/bin/:/opt/node-1.22/bin/:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
3+
GOROOT: /opt/go-1.23/go
4+
GOPROXY: https://goproxy.cn
5+
VERSION: $CI_COMMIT_SHORT_SHA
6+
APP: apipark
7+
APP_PRE: ${APP}_${VERSION}
8+
BUILD_DIR: ${APP}-build
9+
DEPLOY_DESC: "DEV 环境"
10+
VIEW_ADDR: http://172.18.166.219:8288
11+
SAVE_DIR: /opt/${APP}
12+
NODE_OPTIONS: --max_old_space_size=8192
13+
14+
stages:
15+
# - notice
16+
- build
17+
- deploy
18+
- webhook
19+
#
20+
#feishu-informer: # 飞书回调
21+
# stage: notice
22+
# variables:
23+
# DIFF_URL: "$CI_MERGE_REQUEST_PROJECT_URL/-/merge_requests/$CI_MERGE_REQUEST_IID/diffs"
24+
# rules:
25+
# - if: $CI_PIPELINE_SOURCE=="merge_request_event" && $CI_COMMIT_BRANCH =~ "main-github-pro"
26+
# script:
27+
# - echo "merge request"
28+
# - |
29+
# curl -X POST -H "Content-Type: application/json" \
30+
# -d "{\"msg_type\":\"text\",\"content\":{\"text\":\"项目:${CI_PROJECT_NAME}\\n提交人:${GITLAB_USER_NAME}\\n提交信息:${CI_MERGE_REQUEST_TITLE}\\n合并分支信息:${CI_MERGE_REQUEST_SOURCE_BRANCH_NAME} -> ${CI_MERGE_REQUEST_TARGET_BRANCH_NAME}\\n差异性地址:${DIFF_URL}\\n请及时review代码\"}}" \
31+
# ${FEISHU_WEBHOOK}
32+
33+
builder:
34+
stage: build
35+
rules:
36+
- if: $CI_COMMIT_BRANCH == "main-github-pro" || $CI_COMMIT_BRANCH == "main"
37+
script:
38+
- set -e
39+
- |
40+
if [ ! -d "../artifacts" ]; then
41+
mkdir -p ../artifacts
42+
fi
43+
if [ -d "../artifacts/dist" ]; then
44+
cp -r ../artifacts/dist frontend/dist
45+
fi
46+
- |
47+
if [ -n "$(git diff --name-status HEAD~1 HEAD -- frontend)" ]; then
48+
./scripts/build.sh $BUILD_DIR ${VERSION} all ""
49+
else
50+
./scripts/build.sh $BUILD_DIR ${VERSION}
51+
fi
52+
if [ -d "frontend/dist" ]; then
53+
echo "copy frontend/dist to artifacts/dist"
54+
rm -fr ../artifacts/dist
55+
cp -r frontend/dist ../artifacts/dist
56+
fi
57+
cp $BUILD_DIR/${APP_PRE}_linux_amd64.tar.gz ${SAVE_DIR}
58+
59+
deployer:
60+
stage: deploy
61+
rules:
62+
- if: $CI_COMMIT_BRANCH == "main-github-pro" || $CI_COMMIT_BRANCH == "main"
63+
variables:
64+
APIPARK_GUEST_MODE: allow
65+
APIPARK_GUEST_ID: dklejrfbhjqwdh
66+
script:
67+
- cd ${SAVE_DIR};mkdir -p ${APP_PRE};tar -zxvf ${APP_PRE}_linux_amd64.tar.gz -C ${APP_PRE};cd ${APP_PRE};./install.sh ${SAVE_DIR};./run.sh restart;cd ${SAVE_DIR} && ./clean.sh ${APP_PRE}
68+
when: on_success
69+
success:
70+
stage: webhook
71+
rules:
72+
- if: $CI_COMMIT_BRANCH == "main-github-pro" || $CI_COMMIT_BRANCH == "main"
73+
script:
74+
- |
75+
curl -X POST -H "Content-Type: application/json" \
76+
-d "{\"msg_type\":\"text\",\"content\":{\"text\":\"最近一次提交:${CI_COMMIT_TITLE}\\n提交人:${GITLAB_USER_NAME}\\n项目:${CI_PROJECT_NAME}\\n环境:${DEPLOY_DESC}\\n更新部署完成.\\n访问地址:${VIEW_ADDR}\\n工作流地址:${CI_PIPELINE_URL}\"}}" \
77+
${FEISHU_WEBHOOK}
78+
when: on_success
79+
failure:
80+
stage: webhook
81+
rules:
82+
- if: $CI_COMMIT_BRANCH == "main-github-pro" || $CI_COMMIT_BRANCH == "main"
83+
script:
84+
- |
85+
curl -X POST -H "Content-Type: application/json" \
86+
-d "{\"msg_type\":\"text\",\"content\":{\"text\":\"最近一次提交:${CI_COMMIT_TITLE}\\n提交人:${GITLAB_USER_NAME}\\n项目:${CI_PROJECT_NAME}\\n环境:${DEPLOY_DESC}\\n更新部署失败,请及时到gitlab上查看\\n工作流地址:${CI_PIPELINE_URL}\"}}" \
87+
${FEISHU_WEBHOOK}
88+
when: on_failure

0 commit comments

Comments
 (0)