ci: sync Woodpecker configuration from main
ci/woodpecker/push/woodpecker Pipeline was successful

This commit is contained in:
shishengliang
2026-09-16 10:49:39 +08:00
parent 0c26b973ef
commit 1e4afacac7
+21 -17
View File
@@ -1,3 +1,7 @@
# 凭据通过 Woodpecker Secret 注入(HARBOR_USERNAME / HARBOR_PASSWORD),
# 不再把 Harbor 账号密码 base64 后写进流水线脚本。
# 镜像推送只在 push / manual 触发:pull_request 不应向生产 registry 推送。
steps: steps:
- name: npm-build - name: npm-build
image: node:22-alpine image: node:22-alpine
@@ -12,14 +16,17 @@ steps:
- main - main
- feature/asset-statistics - feature/asset-statistics
commands: | commands: |
cd $CI_WORKSPACE set -eu
npm ci cd "$CI_WORKSPACE"
node --version
npm --version
npm ci --registry=https://registry.npmmirror.com/ --no-audit --no-fund --loglevel=verbose
npm run lint npm run lint
npm test npm test
npm run build npm run build
# 获取分支名 # 获取分支名
BRANCH_NAME=$(echo $CI_COMMIT_BRANCH | tr / -) BRANCH_NAME=$(echo ${CI_COMMIT_BRANCH:-manual} | tr / -)
echo "Branch name: $BRANCH_NAME" echo "Branch name: $BRANCH_NAME"
# 版本号: 分支名-package.json版本 # 版本号: 分支名-package.json版本
@@ -30,10 +37,10 @@ steps:
- name: docker-build - name: docker-build
image: docker:24.0.5-cli image: docker:24.0.5-cli
depends_on: [npm-build]
when: when:
event: event:
- push - push
- pull_request
- manual - manual
branch: branch:
- master - master
@@ -42,25 +49,22 @@ steps:
- feature/asset-statistics - feature/asset-statistics
volumes: volumes:
- /var/run/docker.sock:/var/run/docker.sock - /var/run/docker.sock:/var/run/docker.sock
environment:
HARBOR_USERNAME:
from_secret: HARBOR_USERNAME
HARBOR_PASSWORD:
from_secret: HARBOR_PASSWORD
commands: | commands: |
PROJECT_VERSION=$(cat $CI_WORKSPACE/project_version.txt) PROJECT_VERSION=$(cat $CI_WORKSPACE/project_version.txt)
MODULE_NAME=ln-bi MODULE_NAME=ln-bi
REGISTRY=harbor.lnh2e.com
PROJECT=lingniu-v1
echo "Building Docker image: $MODULE_NAME:$PROJECT_VERSION" echo "Building Docker image: $MODULE_NAME:$PROJECT_VERSION"
cd $CI_WORKSPACE cd $CI_WORKSPACE
docker build -t $REGISTRY/$PROJECT/$MODULE_NAME:$PROJECT_VERSION .
docker build -t harbor.lnh2e.com/lingniu-v1/$MODULE_NAME:$PROJECT_VERSION . echo "$HARBOR_PASSWORD" | docker login $REGISTRY -u "$HARBOR_USERNAME" --password-stdin
mkdir -p /root/.docker docker push $REGISTRY/$PROJECT/$MODULE_NAME:$PROJECT_VERSION
cat > /root/.docker/config.json <<EOF
{
"auths": {
"harbor.lnh2e.com": {
"auth": "$(echo Y2ljZDpMbkBjaWNkMDE=)"
}
}
}
EOF
docker push harbor.lnh2e.com/lingniu-v1/$MODULE_NAME:$PROJECT_VERSION