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:
- name: docker-sock - host:
host:
path: /var/run/docker.sock path: /var/run/docker.sock
name: docker-sock
##-------------------------------流水线⬇-------------------------------## steps:
steps: # 定义流水线执行步骤,这些步骤将顺序执行 - image: registry.cn-qingdao.aliyuncs.com/wod/devops-git:1.0
- name: fetch name: fetch
image: registry.cn-qingdao.aliyuncs.com/wod/devops-git:1.0
network_mode: host network_mode: host
pull: false
- name: s3-cache - image: registry.cn-qingdao.aliyuncs.com/wod/devops-s3-cache:1.0
image: registry.cn-qingdao.aliyuncs.com/wod/devops-s3-cache:1.0 name: s3-cache
network_mode: host network_mode: host
pull: false
settings: settings:
endpoint: http://cache.wodcloud.com
access_key: access_key:
from_secret: ACCESS_KEY_MINIO from_secret: ACCESS_KEY_MINIO
endpoint: http://cache.wodcloud.com
mount:
- ./vendor
secret_key: secret_key:
from_secret: SECRET_KEY_MINIO from_secret: SECRET_KEY_MINIO
- commands:
- name: build # 项目打包
image: registry.cn-qingdao.aliyuncs.com/wod/devops-node:16.16.0-slim
# 将宿主机中文件夹挂载到容器中,宿主机文件夹中的文件会被容器访问并修改,起到使用缓存的作用,避免每次运行都要重现下载依赖,提高运行速度
commands:
- yarn - yarn
- export NODE_ENV=production - export NODE_ENV=production
- yarn build - yarn build
image: registry.cn-qingdao.aliyuncs.com/wod/devops-node:16.16.0-slim
- name: s3-cache-build name: build
image: registry.cn-qingdao.aliyuncs.com/wod/devops-s3-cache:1.0 network_mode: ""
pull: null
- image: registry.cn-qingdao.aliyuncs.com/wod/devops-s3-cache:1.0
name: s3-cache-build
network_mode: host network_mode: host
pull: false
settings: settings:
rebuild: true access_key:
from_secret: ACCESS_KEY_MINIO
endpoint: http://cache.wodcloud.com
hash: package.json hash: package.json
mount: mount:
- node_modules - node_modules
endpoint: http://cache.wodcloud.com rebuild: true
access_key:
from_secret: ACCESS_KEY_MINIO
secret_key: secret_key:
from_secret: SECRET_KEY_MINIO from_secret: SECRET_KEY_MINIO
- image: registry.cn-qingdao.aliyuncs.com/wod/devops-docker:1.0
- name: docker-amd64 name: docker-amd64
image: registry.cn-qingdao.aliyuncs.com/wod/devops-docker:1.0 network_mode: ""
# 将宿主机的 docker和配置挂载到运行的 docker 容器中,那么在容器中运行 docker 命令时,等同于在宿主机中运行该docker命令 pull: false
volumes: settings:
- name: docker-sock args: TARGETOS=linux,TARGETARCH=amd64
path: /var/run/docker.sock # 将下载依赖的目录挂载出来,防止重复下载 base: registry.cn-qingdao.aliyuncs.com/wod/nginx:1.19.5-amd64
settings: # 当前设置 channel: amd64
base: registry.cn-qingdao.aliyuncs.com/wod/nginx:1.19.5-amd64 # 基础镜像
dockerfile: .beagle/dockerfile dockerfile: .beagle/dockerfile
repo: smart-operation/so-manage-ui # 生成镜像的 分组/名称 registry: hub.wodcloud.com
version: "v3.0.1" # 版本号 registry_password:
channel: amd64 # 后缀
args: "TARGETOS=linux,TARGETARCH=amd64" # 不同架构的构建参数
registry: hub.wodcloud.com # 私有仓库地址
registry_user: # 用户
from_secret: REGISTRY_USER
registry_password: # 密码
from_secret: REGISTRY_PASSWORD from_secret: REGISTRY_PASSWORD
registry_user:
- name: deploy-amd64 from_secret: REGISTRY_USER
image: registry.cn-qingdao.aliyuncs.com/wod/devops-kubernetes:1.0 repo: smart-operation/so-manage-ui
settings: version: v3.0.1
namespace: smart-manage volumes:
deployment: so-manage-ui - name: docker-sock
container: so-manage-ui path: /var/run/docker.sock
image: hub.wodcloud.com/smart-operation/so-manage-ui:v3.0.1-amd64 - environment:
environment:
KUBERNETES_SERVER: KUBERNETES_SERVER:
from_secret: KUBERNETES_SERVER from_secret: KUBERNETES_SERVER
KUBERNETES_TOKEN: KUBERNETES_TOKEN:
from_secret: KUBERNETES_TOKEN from_secret: KUBERNETES_TOKEN
image: registry.cn-qingdao.aliyuncs.com/wod/devops-kubernetes:1.0
- name: docker-arm64 name: deploy-amd64
image: registry.cn-qingdao.aliyuncs.com/wod/devops-docker:1.0 network_mode: ""
volumes: pull: false
- name: docker-sock settings:
path: /var/run/docker.sock container: so-manage-ui
deployment: so-manage-ui
image: hub.wodcloud.com/smart-operation/so-manage-ui:v3.0.1-amd64
namespace: smart-manage
- image: registry.cn-qingdao.aliyuncs.com/wod/devops-docker:1.0
name: docker-arm64
network_mode: ""
pull: false
settings: settings:
args: TARGETOS=linux,TARGETARCH=arm64
base: registry.cn-qingdao.aliyuncs.com/wod/nginx:1.19.5-arm64 base: registry.cn-qingdao.aliyuncs.com/wod/nginx:1.19.5-arm64
dockerfile: .beagle/dockerfile
repo: smart-operation/so-manage-ui
version: "v3.0.1"
channel: arm64 channel: arm64
args: "TARGETOS=linux,TARGETARCH=arm64" dockerfile: .beagle/dockerfile
registry: hub.wodcloud.com registry: hub.wodcloud.com
registry_user:
from_secret: REGISTRY_USER
registry_password: registry_password:
from_secret: REGISTRY_PASSWORD from_secret: REGISTRY_PASSWORD
registry_user:
- name: docker-ppc64le from_secret: REGISTRY_USER
image: registry.cn-qingdao.aliyuncs.com/wod/devops-docker:1.0 repo: smart-operation/so-manage-ui
version: v3.0.1
volumes: volumes:
- name: docker-sock - name: docker-sock
path: /var/run/docker.sock path: /var/run/docker.sock
- image: registry.cn-qingdao.aliyuncs.com/wod/devops-docker:1.0
name: docker-ppc64le
network_mode: ""
pull: false
settings: settings:
args: TARGETOS=linux,TARGETARCH=ppc64le
base: registry.cn-qingdao.aliyuncs.com/wod/nginx:1.19.5-ppc64le 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 channel: ppc64le
args: "TARGETOS=linux,TARGETARCH=ppc64le" dockerfile: .beagle/dockerfile
registry: hub.wodcloud.com registry: hub.wodcloud.com
registry_user:
from_secret: REGISTRY_USER
registry_password: registry_password:
from_secret: REGISTRY_PASSWORD from_secret: REGISTRY_PASSWORD
registry_user:
- name: docker-mips64le from_secret: REGISTRY_USER
image: registry.cn-qingdao.aliyuncs.com/wod/devops-docker:1.0 repo: smart-operation/so-manage-ui
version: v3.0.1
volumes: volumes:
- name: docker-sock - name: docker-sock
path: /var/run/docker.sock path: /var/run/docker.sock
- image: registry.cn-qingdao.aliyuncs.com/wod/devops-docker:1.0
name: docker-mips64le
network_mode: ""
pull: false
settings: settings:
args: TARGETOS=linux,TARGETARCH=mips64le
base: registry.cn-qingdao.aliyuncs.com/wod/nginx:1.19.5-mips64le 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 channel: mips64le
args: "TARGETOS=linux,TARGETARCH=mips64le" dockerfile: .beagle/dockerfile
registry: hub.wodcloud.com registry: hub.wodcloud.com
registry_user:
from_secret: REGISTRY_USER
registry_password: registry_password:
from_secret: REGISTRY_PASSWORD from_secret: REGISTRY_PASSWORD
registry_user:
- name: docker-arch from_secret: REGISTRY_USER
image: registry.cn-qingdao.aliyuncs.com/wod/devops-docker-manifest:1.0 repo: smart-operation/so-manage-ui
version: v3.0.1
volumes:
- name: docker-sock
path: /var/run/docker.sock
- image: registry.cn-qingdao.aliyuncs.com/wod/devops-docker-manifest:1.0
name: docker-arch
settings: settings:
password:
from_secret: REGISTRY_PASSWORD
platforms: linux/amd64,linux/arm64,linux/ppc64le,linux/mips64le 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 target: hub.wodcloud.com/smart-operation/so-manage-ui:v3.0.1
template: hub.wodcloud.com/smart-operation/so-manage-ui:v3.0.1-ARCH
username: username:
from_secret: REGISTRY_USER from_secret: REGISTRY_USER
password:
from_secret: REGISTRY_PASSWORD
--- ---
clone: clone:
disable: true disable: true
kind: pipeline
name: master
trigger: trigger:
branch: branch:
- master - master
volumes:
- host:
kind: pipeline
name: master
steps:
- name: harbor-amd64
image: registry.cn-qingdao.aliyuncs.com/wod/devops-docker-tag:1.0
volumes:
- name: docker-sock
path: /var/run/docker.sock path: /var/run/docker.sock
pull: always name: docker-sock
environment: steps:
REGISTRY_USER: - environment:
from_secret: REGISTRY_USER
REGISTRY_PASSWORD: REGISTRY_PASSWORD:
from_secret: REGISTRY_PASSWORD from_secret: REGISTRY_PASSWORD
REGISTRY_USER:
from_secret: REGISTRY_USER
image: registry.cn-qingdao.aliyuncs.com/wod/devops-docker-tag:1.0
name: harbor-amd64
pull: always
settings: settings:
registry: hub.wodcloud.com
source: hub.wodcloud.com/smart-operation/so-manage-ui:v3.0.1-amd64 source: hub.wodcloud.com/smart-operation/so-manage-ui:v3.0.1-amd64
target: hub.wodcloud.com/smart-operation/so-manage-ui:v3.0-amd64 target: hub.wodcloud.com/smart-operation/so-manage-ui:v3.0-amd64
registry: hub.wodcloud.com
- name: harbor-arm64
image: registry.cn-qingdao.aliyuncs.com/wod/devops-docker-tag:1.0
volumes: volumes:
- name: docker-sock - name: docker-sock
path: /var/run/docker.sock path: /var/run/docker.sock
pull: always - environment:
environment:
REGISTRY_USER:
from_secret: REGISTRY_USER
REGISTRY_PASSWORD: REGISTRY_PASSWORD:
from_secret: REGISTRY_PASSWORD from_secret: REGISTRY_PASSWORD
REGISTRY_USER:
from_secret: REGISTRY_USER
image: registry.cn-qingdao.aliyuncs.com/wod/devops-docker-tag:1.0
name: harbor-arm64
pull: always
settings: settings:
registry: hub.wodcloud.com
source: hub.wodcloud.com/smart-operation/so-manage-ui:v3.0.1-arm64 source: hub.wodcloud.com/smart-operation/so-manage-ui:v3.0.1-arm64
target: hub.wodcloud.com/smart-operation/so-manage-ui:v3.0-arm64 target: hub.wodcloud.com/smart-operation/so-manage-ui:v3.0-arm64
registry: hub.wodcloud.com
- name: harbor-ppc64le
image: registry.cn-qingdao.aliyuncs.com/wod/devops-docker-tag:1.0
volumes: volumes:
- name: docker-sock - name: docker-sock
path: /var/run/docker.sock path: /var/run/docker.sock
pull: always - environment:
environment:
REGISTRY_USER:
from_secret: REGISTRY_USER
REGISTRY_PASSWORD: REGISTRY_PASSWORD:
from_secret: REGISTRY_PASSWORD from_secret: REGISTRY_PASSWORD
REGISTRY_USER:
from_secret: REGISTRY_USER
image: registry.cn-qingdao.aliyuncs.com/wod/devops-docker-tag:1.0
name: harbor-ppc64le
pull: always
settings: settings:
registry: hub.wodcloud.com
source: hub.wodcloud.com/smart-operation/so-manage-ui:v3.0.1-ppc64le source: hub.wodcloud.com/smart-operation/so-manage-ui:v3.0.1-ppc64le
target: hub.wodcloud.com/smart-operation/so-manage-ui:v3.0-ppc64le target: hub.wodcloud.com/smart-operation/so-manage-ui:v3.0-ppc64le
registry: hub.wodcloud.com
- name: harbor-mips64le
image: registry.cn-qingdao.aliyuncs.com/wod/devops-docker-tag:1.0
volumes: volumes:
- name: docker-sock - name: docker-sock
path: /var/run/docker.sock path: /var/run/docker.sock
pull: always - environment:
environment:
REGISTRY_USER:
from_secret: REGISTRY_USER
REGISTRY_PASSWORD: REGISTRY_PASSWORD:
from_secret: REGISTRY_PASSWORD from_secret: REGISTRY_PASSWORD
REGISTRY_USER:
from_secret: REGISTRY_USER
image: registry.cn-qingdao.aliyuncs.com/wod/devops-docker-tag:1.0
name: harbor-mips64le
pull: always
settings: settings:
registry: hub.wodcloud.com
source: hub.wodcloud.com/smart-operation/so-manage-ui:v3.0.1-mips64le source: hub.wodcloud.com/smart-operation/so-manage-ui:v3.0.1-mips64le
target: hub.wodcloud.com/smart-operation/so-manage-ui:v3.0-mips64le target: hub.wodcloud.com/smart-operation/so-manage-ui:v3.0-mips64le
registry: hub.wodcloud.com volumes:
- name: docker-sock
- name: harbor-arch path: /var/run/docker.sock
image: registry.cn-qingdao.aliyuncs.com/wod/devops-docker-manifest:1.0 - image: registry.cn-qingdao.aliyuncs.com/wod/devops-docker-manifest:1.0
name: harbor-arch
settings: settings:
password:
from_secret: REGISTRY_PASSWORD
platforms: linux/amd64,linux/arm64,linux/ppc64le,linux/mips64le platforms: linux/amd64,linux/arm64,linux/ppc64le,linux/mips64le
template: hub.wodcloud.com/smart-operation/so-manage-ui:v3.0-ARCH
target: hub.wodcloud.com/smart-operation/so-manage-ui:v3.0 target: hub.wodcloud.com/smart-operation/so-manage-ui:v3.0
template: hub.wodcloud.com/smart-operation/so-manage-ui:v3.0-ARCH
username: username:
from_secret: REGISTRY_USER 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
......
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