增加wookpecker流水线配置文件
This commit is contained in:
+28
-22
@@ -4,6 +4,12 @@ clone:
|
||||
depth: 1
|
||||
tags: true
|
||||
|
||||
# 定义命名卷(必须)
|
||||
volumes:
|
||||
- name: docker-sock
|
||||
host:
|
||||
path: /var/run/docker.sock
|
||||
|
||||
labels:
|
||||
runtime: docker
|
||||
arch: amd64
|
||||
@@ -13,7 +19,8 @@ steps:
|
||||
diagnose:
|
||||
image: docker:29.0-cli
|
||||
volumes:
|
||||
- /var/run/docker.sock:/var/run/docker.sock
|
||||
- name: docker-sock
|
||||
path: /var/run/docker.sock
|
||||
commands:
|
||||
- apk add --no-cache curl jq 2>/dev/null || true
|
||||
- echo "=== Docker CLI ==="; docker version
|
||||
@@ -22,7 +29,8 @@ steps:
|
||||
debug_engine_api:
|
||||
image: curlimages/curl
|
||||
volumes:
|
||||
- /var/run/docker.sock:/var/run/docker.sock
|
||||
- name: docker-sock
|
||||
path: /var/run/docker.sock
|
||||
commands:
|
||||
- curl --unix-socket /var/run/docker.sock http://localhost/version
|
||||
|
||||
@@ -32,7 +40,8 @@ steps:
|
||||
DOCKER_API_VERSION: "1.45"
|
||||
DOCKER_HOST: unix:///var/run/docker.sock
|
||||
volumes:
|
||||
- /var/run/docker.sock:/var/run/docker.sock
|
||||
- name: docker-sock
|
||||
path: /var/run/docker.sock
|
||||
commands:
|
||||
- which docker
|
||||
- docker --version
|
||||
@@ -41,7 +50,8 @@ steps:
|
||||
registry_login:
|
||||
image: docker:29.0-cli
|
||||
volumes:
|
||||
- /var/run/docker.sock:/var/run/docker.sock
|
||||
- name: docker-sock
|
||||
path: /var/run/docker.sock
|
||||
environment:
|
||||
REGISTRY_SERVER: swr.cn-north-4.myhuaweicloud.com
|
||||
REGISTRY_USER:
|
||||
@@ -59,12 +69,10 @@ steps:
|
||||
build_and_push:
|
||||
image: docker:29.0-cli
|
||||
volumes:
|
||||
- /var/run/docker.sock:/var/run/docker.sock
|
||||
- name: docker-sock
|
||||
path: /var/run/docker.sock
|
||||
environment:
|
||||
REGISTRY_REPO: swr.cn-north-4.myhuaweicloud.com/colovu/scratch
|
||||
CI_COMMIT_TAG: ${CI_COMMIT_TAG}
|
||||
CI_COMMIT_SHA: ${CI_COMMIT_SHA}
|
||||
CI_COMMIT_BRANCH: ${CI_COMMIT_BRANCH}
|
||||
commands:
|
||||
- |
|
||||
set -euo pipefail
|
||||
@@ -75,34 +83,32 @@ steps:
|
||||
IMAGE_TAG="${CI_COMMIT_SHA:0:8}"
|
||||
fi
|
||||
|
||||
echo "Building image..."
|
||||
docker build -t "${REGISTRY_REPO}:${IMAGE_TAG}" .
|
||||
if [ "${CI_COMMIT_BRANCH}" = "main" ]; then
|
||||
LATEST=true
|
||||
else
|
||||
LATEST=false
|
||||
fi
|
||||
|
||||
echo "Pushing image..."
|
||||
echo "Building and pushing ${REGISTRY_REPO}:${IMAGE_TAG}"
|
||||
docker build -t "${REGISTRY_REPO}:${IMAGE_TAG}" .
|
||||
docker push "${REGISTRY_REPO}:${IMAGE_TAG}"
|
||||
|
||||
# 打 latest 标签(仅 main 分支)
|
||||
if [ "${CI_COMMIT_BRANCH}" = "main" ]; then
|
||||
if [ "$LATEST" = true ]; then
|
||||
docker tag "${REGISTRY_REPO}:${IMAGE_TAG}" "${REGISTRY_REPO}:latest"
|
||||
docker push "${REGISTRY_REPO}:latest"
|
||||
fi
|
||||
|
||||
echo "Image pushed: ${REGISTRY_REPO}:${IMAGE_TAG}"
|
||||
|
||||
cleanup:
|
||||
image: docker:29.0-cli
|
||||
volumes:
|
||||
- /var/run/docker.sock:/var/run/docker.sock
|
||||
- name: docker-sock
|
||||
path: /var/run/docker.sock
|
||||
commands:
|
||||
- |
|
||||
echo "Logging out of registry..."
|
||||
docker logout swr.cn-north-4.myhuaweicloud.com || true
|
||||
echo "Cleaning up unused images..."
|
||||
docker system prune -af || true
|
||||
- docker logout swr.cn-north-4.myhuaweicloud.com || true
|
||||
- docker system prune -af || true
|
||||
when:
|
||||
status: [success, failure]
|
||||
|
||||
# 触发条件
|
||||
trigger:
|
||||
event: [push, tag]
|
||||
branch: [main, "release/*"]
|
||||
|
||||
Reference in New Issue
Block a user