Files
plugin-library/.gitlab-ci.yml
2025-04-02 03:06:56 +00:00

54 lines
1.4 KiB
YAML

default:
image: node:latest
before_script:
- echo '====== 准备构建中 ========='
- ln -sf /srv/node-v13.11.0-linux-x64/bin/node /bin/node # 创建软链接到 bin 目录
stages:
- deploy
# 发布
job_deploy:
only:
- master
stage: deploy
tags:
- staryEvo
before_script:
- echo '开始发布'
- echo '开始发布'
- docker info # 添加 Docker 环境验证
- node -v # 验证 Node.js 版本
script:
# 添加镜像拉取重试逻辑
- retry_count=0
- until [ "$retry_count" -ge 3 ]; do
docker pull node:latest && break;
retry_count=$((retry_count+1));
echo "镜像拉取失败,重试 $retry_count/3";
sleep 5;
done
- cd Assets/00.StaryEvo
# 获取当前版本
- CURRENT_VERSION=$(node -p "require('./package.json').version")
# - echo " ProjectID ${CI_SERVER_HOST}"
# - echo " ProjectID ${CI_PROJECT_ID}"
# - echo " ProjectTOKEN ${CI_JOB_TOKEN}"
- echo "registry=http://${SERVER_HOST}/npm" > .npmrc
- echo "//${SERVER_HOST}/:_authToken=${AuthToken}" >> .npmrc
# 版本存在检测
# - if [[ "$REMOTE_VERSION" == *"$CURRENT_VERSION"* ]]; then
# echo "版本 $CURRENT_VERSION 已存在,跳过发布";
# exit 0;
# fi
- npm publish
- echo '构建完成'
when: 'on_success'
retry: 0
after_script:
- echo "====== 发布完成 ========="