Commit b0a22fa2 authored by 李鹏 's avatar 李鹏

流水线构建[Beagle-CI]

parent 2112ffe9
clone:
disable: true
kind: pipeline kind: pipeline
name: dev name: dev
trigger: trigger:
branch: branch:
- dev - dev
clone:
disable: true
volumes: volumes:
- host:
path: /var/run/docker.sock
name: docker-sock
steps:
- image: registry.cn-qingdao.aliyuncs.com/wod/devops-git:1.0
name: fetch
network_mode: host
pull: false
- image: registry.cn-qingdao.aliyuncs.com/wod/devops-s3-cache:1.0
name: s3-cache
network_mode: host
pull: false
settings:
access_key:
from_secret: ACCESS_KEY_MINIO
endpoint: http://cache.wodcloud.com
mount:
- ./vendor
secret_key:
from_secret: SECRET_KEY_MINIO
- commands:
- yarn
- export NODE_ENV=production
- yarn build
image: registry.cn-qingdao.aliyuncs.com/wod/devops-node:16.16.0-slim
name: build
network_mode: ""
pull: null
- image: registry.cn-qingdao.aliyuncs.com/wod/devops-s3-cache:1.0
name: s3-cache-build
network_mode: host
pull: false
settings:
access_key:
from_secret: ACCESS_KEY_MINIO
endpoint: http://cache.wodcloud.com
hash: package.json
mount:
- node_modules
rebuild: true
secret_key:
from_secret: SECRET_KEY_MINIO
- image: registry.cn-qingdao.aliyuncs.com/wod/devops-docker:1.0
name: docker-amd64
network_mode: ""
pull: false
settings:
args: TARGETOS=linux,TARGETARCH=amd64
base: registry.cn-qingdao.aliyuncs.com/wod/nginx:1.19.5-amd64
channel: amd64
dockerfile: .beagle/dockerfile
registry: hub.wodcloud.com
registry_password:
from_secret: REGISTRY_PASSWORD
registry_user:
from_secret: REGISTRY_USER
repo: smart-operation/so-manage-ui
version: v3.0.1
volumes:
- name: docker-sock - name: docker-sock
host: path: /var/run/docker.sock
path: /var/run/docker.sock - environment:
KUBERNETES_SERVER:
##-------------------------------流水线⬇-------------------------------## from_secret: KUBERNETES_SERVER
steps: # 定义流水线执行步骤,这些步骤将顺序执行 KUBERNETES_TOKEN:
- name: fetch from_secret: KUBERNETES_TOKEN
image: registry.cn-qingdao.aliyuncs.com/wod/devops-git:1.0 image: registry.cn-qingdao.aliyuncs.com/wod/devops-kubernetes:1.0
network_mode: host name: deploy-amd64
network_mode: ""
- name: s3-cache pull: false
image: registry.cn-qingdao.aliyuncs.com/wod/devops-s3-cache:1.0 settings:
network_mode: host container: so-manage-ui
settings: deployment: so-manage-ui
endpoint: http://cache.wodcloud.com image: hub.wodcloud.com/smart-operation/so-manage-ui:v3.0.1-amd64
access_key: namespace: smart-manage
from_secret: ACCESS_KEY_MINIO - image: registry.cn-qingdao.aliyuncs.com/wod/devops-docker:1.0
secret_key: name: docker-arm64
from_secret: SECRET_KEY_MINIO network_mode: ""
pull: false
- name: build # 项目打包 settings:
image: registry.cn-qingdao.aliyuncs.com/wod/devops-node:16.16.0-slim args: TARGETOS=linux,TARGETARCH=arm64
# 将宿主机中文件夹挂载到容器中,宿主机文件夹中的文件会被容器访问并修改,起到使用缓存的作用,避免每次运行都要重现下载依赖,提高运行速度 base: registry.cn-qingdao.aliyuncs.com/wod/nginx:1.19.5-arm64
commands: channel: arm64
- yarn dockerfile: .beagle/dockerfile
- export NODE_ENV=production registry: hub.wodcloud.com
- yarn build registry_password:
from_secret: REGISTRY_PASSWORD
- name: s3-cache-build registry_user:
image: registry.cn-qingdao.aliyuncs.com/wod/devops-s3-cache:1.0 from_secret: REGISTRY_USER
network_mode: host repo: smart-operation/so-manage-ui
settings: version: v3.0.1
rebuild: true volumes:
hash: package.json - name: docker-sock
mount: path: /var/run/docker.sock
- node_modules - image: registry.cn-qingdao.aliyuncs.com/wod/devops-docker:1.0
endpoint: http://cache.wodcloud.com name: docker-ppc64le
access_key: network_mode: ""
from_secret: ACCESS_KEY_MINIO pull: false
secret_key: settings:
from_secret: SECRET_KEY_MINIO args: TARGETOS=linux,TARGETARCH=ppc64le
base: registry.cn-qingdao.aliyuncs.com/wod/nginx:1.19.5-ppc64le
- name: docker-amd64 channel: ppc64le
image: registry.cn-qingdao.aliyuncs.com/wod/devops-docker:1.0 dockerfile: .beagle/dockerfile
# 将宿主机的 docker和配置挂载到运行的 docker 容器中,那么在容器中运行 docker 命令时,等同于在宿主机中运行该docker命令 registry: hub.wodcloud.com
volumes: registry_password:
- name: docker-sock from_secret: REGISTRY_PASSWORD
path: /var/run/docker.sock # 将下载依赖的目录挂载出来,防止重复下载 registry_user:
settings: # 当前设置 from_secret: REGISTRY_USER
base: registry.cn-qingdao.aliyuncs.com/wod/nginx:1.19.5-amd64 # 基础镜像 repo: smart-operation/so-manage-ui
dockerfile: .beagle/dockerfile version: v3.0.1
repo: smart-operation/so-manage-ui # 生成镜像的 分组/名称 volumes:
version: "v3.0.1" # 版本号 - name: docker-sock
channel: amd64 # 后缀 path: /var/run/docker.sock
args: "TARGETOS=linux,TARGETARCH=amd64" # 不同架构的构建参数 - image: registry.cn-qingdao.aliyuncs.com/wod/devops-docker:1.0
registry: hub.wodcloud.com # 私有仓库地址 name: docker-mips64le
registry_user: # 用户 network_mode: ""
from_secret: REGISTRY_USER pull: false
registry_password: # 密码 settings:
from_secret: REGISTRY_PASSWORD args: TARGETOS=linux,TARGETARCH=mips64le
base: registry.cn-qingdao.aliyuncs.com/wod/nginx:1.19.5-mips64le
- name: deploy-amd64 channel: mips64le
image: registry.cn-qingdao.aliyuncs.com/wod/devops-kubernetes:1.0 dockerfile: .beagle/dockerfile
settings: registry: hub.wodcloud.com
namespace: smart-manage registry_password:
deployment: so-manage-ui from_secret: REGISTRY_PASSWORD
container: so-manage-ui registry_user:
image: hub.wodcloud.com/smart-operation/so-manage-ui:v3.0.1-amd64 from_secret: REGISTRY_USER
environment: repo: smart-operation/so-manage-ui
KUBERNETES_SERVER: version: v3.0.1
from_secret: KUBERNETES_SERVER volumes:
KUBERNETES_TOKEN: - name: docker-sock
from_secret: KUBERNETES_TOKEN path: /var/run/docker.sock
- image: registry.cn-qingdao.aliyuncs.com/wod/devops-docker-manifest:1.0
- name: docker-arm64 name: docker-arch
image: registry.cn-qingdao.aliyuncs.com/wod/devops-docker:1.0 settings:
volumes: password:
- name: docker-sock from_secret: REGISTRY_PASSWORD
path: /var/run/docker.sock platforms: linux/amd64,linux/arm64,linux/ppc64le,linux/mips64le
settings: target: hub.wodcloud.com/smart-operation/so-manage-ui:v3.0.1
base: registry.cn-qingdao.aliyuncs.com/wod/nginx:1.19.5-arm64 template: hub.wodcloud.com/smart-operation/so-manage-ui:v3.0.1-ARCH
dockerfile: .beagle/dockerfile username:
repo: smart-operation/so-manage-ui from_secret: REGISTRY_USER
version: "v3.0.1"
channel: arm64
args: "TARGETOS=linux,TARGETARCH=arm64"
registry: hub.wodcloud.com
registry_user:
from_secret: REGISTRY_USER
registry_password:
from_secret: REGISTRY_PASSWORD
- name: docker-ppc64le
image: registry.cn-qingdao.aliyuncs.com/wod/devops-docker:1.0
volumes:
- name: docker-sock
path: /var/run/docker.sock
settings:
base: registry.cn-qingdao.aliyuncs.com/wod/nginx:1.19.5-ppc64le
dockerfile: .beagle/dockerfile
repo: smart-operation/so-manage-ui
version: "v3.0.1"
channel: ppc64le
args: "TARGETOS=linux,TARGETARCH=ppc64le"
registry: hub.wodcloud.com
registry_user:
from_secret: REGISTRY_USER
registry_password:
from_secret: REGISTRY_PASSWORD
- name: docker-mips64le
image: registry.cn-qingdao.aliyuncs.com/wod/devops-docker:1.0
volumes:
- name: docker-sock
path: /var/run/docker.sock
settings:
base: registry.cn-qingdao.aliyuncs.com/wod/nginx:1.19.5-mips64le
dockerfile: .beagle/dockerfile
repo: smart-operation/so-manage-ui
version: "v3.0.1"
channel: mips64le
args: "TARGETOS=linux,TARGETARCH=mips64le"
registry: hub.wodcloud.com
registry_user:
from_secret: REGISTRY_USER
registry_password:
from_secret: REGISTRY_PASSWORD
- name: docker-arch
image: registry.cn-qingdao.aliyuncs.com/wod/devops-docker-manifest:1.0
settings:
platforms: linux/amd64,linux/arm64,linux/ppc64le,linux/mips64le
template: hub.wodcloud.com/smart-operation/so-manage-ui:v3.0.1-ARCH
target: hub.wodcloud.com/smart-operation/so-manage-ui:v3.0.1
username:
from_secret: REGISTRY_USER
password:
from_secret: REGISTRY_PASSWORD
--- ---
clone: clone:
disable: true disable: true
trigger:
branch:
- master
kind: pipeline kind: pipeline
name: master name: master
trigger:
branch:
- master
volumes:
- host:
path: /var/run/docker.sock
name: docker-sock
steps: steps:
- name: harbor-amd64 - environment:
image: registry.cn-qingdao.aliyuncs.com/wod/devops-docker-tag:1.0 REGISTRY_PASSWORD:
volumes: from_secret: REGISTRY_PASSWORD
- name: docker-sock REGISTRY_USER:
path: /var/run/docker.sock from_secret: REGISTRY_USER
pull: always image: registry.cn-qingdao.aliyuncs.com/wod/devops-docker-tag:1.0
environment: name: harbor-amd64
REGISTRY_USER: pull: always
from_secret: REGISTRY_USER settings:
REGISTRY_PASSWORD: registry: hub.wodcloud.com
from_secret: REGISTRY_PASSWORD source: hub.wodcloud.com/smart-operation/so-manage-ui:v3.0.1-amd64
settings: target: hub.wodcloud.com/smart-operation/so-manage-ui:v3.0-amd64
source: hub.wodcloud.com/smart-operation/so-manage-ui:v3.0.1-amd64 volumes:
target: hub.wodcloud.com/smart-operation/so-manage-ui:v3.0-amd64 - name: docker-sock
registry: hub.wodcloud.com path: /var/run/docker.sock
- environment:
- name: harbor-arm64 REGISTRY_PASSWORD:
image: registry.cn-qingdao.aliyuncs.com/wod/devops-docker-tag:1.0 from_secret: REGISTRY_PASSWORD
volumes: REGISTRY_USER:
- name: docker-sock from_secret: REGISTRY_USER
path: /var/run/docker.sock image: registry.cn-qingdao.aliyuncs.com/wod/devops-docker-tag:1.0
pull: always name: harbor-arm64
environment: pull: always
REGISTRY_USER: settings:
from_secret: REGISTRY_USER registry: hub.wodcloud.com
REGISTRY_PASSWORD: source: hub.wodcloud.com/smart-operation/so-manage-ui:v3.0.1-arm64
from_secret: REGISTRY_PASSWORD target: hub.wodcloud.com/smart-operation/so-manage-ui:v3.0-arm64
settings: volumes:
source: hub.wodcloud.com/smart-operation/so-manage-ui:v3.0.1-arm64 - name: docker-sock
target: hub.wodcloud.com/smart-operation/so-manage-ui:v3.0-arm64 path: /var/run/docker.sock
registry: hub.wodcloud.com - environment:
REGISTRY_PASSWORD:
- name: harbor-ppc64le from_secret: REGISTRY_PASSWORD
image: registry.cn-qingdao.aliyuncs.com/wod/devops-docker-tag:1.0 REGISTRY_USER:
volumes: from_secret: REGISTRY_USER
- name: docker-sock image: registry.cn-qingdao.aliyuncs.com/wod/devops-docker-tag:1.0
path: /var/run/docker.sock name: harbor-ppc64le
pull: always pull: always
environment: settings:
REGISTRY_USER: registry: hub.wodcloud.com
from_secret: REGISTRY_USER source: hub.wodcloud.com/smart-operation/so-manage-ui:v3.0.1-ppc64le
REGISTRY_PASSWORD: target: hub.wodcloud.com/smart-operation/so-manage-ui:v3.0-ppc64le
from_secret: REGISTRY_PASSWORD volumes:
settings: - name: docker-sock
source: hub.wodcloud.com/smart-operation/so-manage-ui:v3.0.1-ppc64le path: /var/run/docker.sock
target: hub.wodcloud.com/smart-operation/so-manage-ui:v3.0-ppc64le - environment:
registry: hub.wodcloud.com REGISTRY_PASSWORD:
from_secret: REGISTRY_PASSWORD
- name: harbor-mips64le REGISTRY_USER:
image: registry.cn-qingdao.aliyuncs.com/wod/devops-docker-tag:1.0 from_secret: REGISTRY_USER
volumes: image: registry.cn-qingdao.aliyuncs.com/wod/devops-docker-tag:1.0
- name: docker-sock name: harbor-mips64le
path: /var/run/docker.sock pull: always
pull: always settings:
environment: registry: hub.wodcloud.com
REGISTRY_USER: source: hub.wodcloud.com/smart-operation/so-manage-ui:v3.0.1-mips64le
from_secret: REGISTRY_USER target: hub.wodcloud.com/smart-operation/so-manage-ui:v3.0-mips64le
REGISTRY_PASSWORD: volumes:
from_secret: REGISTRY_PASSWORD - name: docker-sock
settings: path: /var/run/docker.sock
source: hub.wodcloud.com/smart-operation/so-manage-ui:v3.0.1-mips64le - image: registry.cn-qingdao.aliyuncs.com/wod/devops-docker-manifest:1.0
target: hub.wodcloud.com/smart-operation/so-manage-ui:v3.0-mips64le name: harbor-arch
registry: hub.wodcloud.com settings:
password:
- name: harbor-arch from_secret: REGISTRY_PASSWORD
image: registry.cn-qingdao.aliyuncs.com/wod/devops-docker-manifest:1.0 platforms: linux/amd64,linux/arm64,linux/ppc64le,linux/mips64le
settings: target: hub.wodcloud.com/smart-operation/so-manage-ui:v3.0
platforms: linux/amd64,linux/arm64,linux/ppc64le,linux/mips64le template: hub.wodcloud.com/smart-operation/so-manage-ui:v3.0-ARCH
template: hub.wodcloud.com/smart-operation/so-manage-ui:v3.0-ARCH username:
target: hub.wodcloud.com/smart-operation/so-manage-ui:v3.0 from_secret: REGISTRY_USER
username:
from_secret: REGISTRY_USER
password:
from_secret: REGISTRY_PASSWORD
##--------------对于需要保密的信息隐藏,减少账户信息的泄密⬇-----------------##
--- ---
kind: secret kind: secret
name: REGISTRY_USER name: REGISTRY_USER
get: get:
name: REGISTRY_USER name: REGISTRY_USER
path: devops-secrets path: devops-secrets
--- ---
kind: secret kind: secret
name: REGISTRY_PASSWORD name: REGISTRY_PASSWORD
get: get:
name: REGISTRY_PASSWORD name: REGISTRY_PASSWORD
path: devops-secrets path: devops-secrets
--- ---
kind: secret kind: secret
name: KUBERNETES_SERVER name: KUBERNETES_SERVER
get: get:
name: KUBERNETES_SERVER name: KUBERNETES_SERVER
path: devops-secrets path: devops-secrets
--- ---
kind: secret kind: secret
name: KUBERNETES_TOKEN name: KUBERNETES_TOKEN
get: get:
name: KUBERNETES_TOKEN name: KUBERNETES_TOKEN
path: devops-secrets path: devops-secrets
--- ---
kind: secret kind: secret
name: ACCESS_KEY_MINIO name: ACCESS_KEY_MINIO
...@@ -269,4 +273,4 @@ kind: secret ...@@ -269,4 +273,4 @@ kind: secret
name: SECRET_KEY_MINIO name: SECRET_KEY_MINIO
get: get:
name: SECRET_KEY_MINIO name: SECRET_KEY_MINIO
path: devops-secrets path: devops-secrets
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment