btpanel/.cnb.yml
2025-01-09 15:23:08 +08:00

157 lines
4.5 KiB
YAML

$:
vscode:
- services:
- docker
docker:
build:
dockerfile: .ide/Dockerfile
push:
- runner:
tags: cnb:arch:amd64
services:
- docker
imports: https://cnb.cool/btpanel/secret/-/blob/main/docker.yml
env:
IMAGE_TAG: btpanel/baota:lamp-linux-amd64
stages:
- name: docker login
script: docker login -u "$DOCKER_USERNAME" -p "$DOCKER_PASSWD"
- name: docker build
script: docker build -t ${IMAGE_TAG} .
- name: docker push
script: docker push ${IMAGE_TAG}
- name: resolve
type: cnb:resolve
options:
key: build-amd64
- runner:
tags: cnb:arch:arm64:v8
cpus: 16
services:
- docker
imports: https://cnb.cool/btpanel/secret/-/blob/main/docker.yml
env:
IMAGE_TAG: btpanel/baota:lamp-linux-arm64
stages:
- name: docker login
script: docker login -u "$DOCKER_USERNAME" -p "$DOCKER_PASSWD"
- name: docker build
timeout: 3600s
script: docker build -t ${IMAGE_TAG} .
- name: docker push
script: docker push ${IMAGE_TAG}
- name: resolve
type: cnb:resolve
options:
key: build-arm64
- runner:
tags: cnb:arch:amd64
cpus: 2
services:
- docker
imports: https://cnb.cool/btpanel/secret/-/blob/main/docker.yml
env:
IMAGE_TAG: btpanel/baota:lamp
stages:
- name: await the amd64
type: cnb:await
options:
key: build-amd64
- name: await the arm64
type: cnb:await
options:
key: build-arm64
- name: manifest
image: cnbcool/manifest
settings:
username: $DOCKER_USERNAME
password: $DOCKER_PASSWD
target: ${IMAGE_TAG}
template: ${IMAGE_TAG}-OS-ARCH
platforms:
- linux/amd64
- linux/arm64
- name: clear
image: lumir/remove-dockerhub-tag
args:
- --user
- $DOCKER_USERNAME
- --password
- $DOCKER_PASSWD
- ${IMAGE_TAG}-linux-amd64
- ${IMAGE_TAG}-linux-arm64
- runner:
tags: cnb:arch:amd64
services:
- docker
env:
IMAGE_TAG: ${CNB_DOCKER_REGISTRY}/${CNB_REPO_SLUG_LOWERCASE}:lamp-linux-amd64
stages:
- name: docker login
script: docker login -u ${CNB_TOKEN_USER_NAME} -p "${CNB_TOKEN}" ${CNB_DOCKER_REGISTRY}
- name: docker build
script: docker build -t ${IMAGE_TAG} .
- name: docker push
script: docker push ${IMAGE_TAG}
- name: resolve
type: cnb:resolve
options:
key: cnb-build-amd64
- runner:
tags: cnb:arch:arm64:v8
cpus: 16
services:
- docker
env:
IMAGE_TAG: ${CNB_DOCKER_REGISTRY}/${CNB_REPO_SLUG_LOWERCASE}:lamp-linux-arm64
stages:
- name: docker login
script: docker login -u ${CNB_TOKEN_USER_NAME} -p "${CNB_TOKEN}" ${CNB_DOCKER_REGISTRY}
- name: docker build
timeout: 3600s
script: docker build -t ${IMAGE_TAG} .
- name: docker push
script: docker push ${IMAGE_TAG}
- name: resolve
type: cnb:resolve
options:
key: cnb-build-arm64
- runner:
tags: cnb:arch:amd64
cpus: 2
services:
- docker
env:
IMAGE_TAG: ${CNB_DOCKER_REGISTRY}/${CNB_REPO_SLUG_LOWERCASE}:lamp
stages:
- name: await the amd64
type: cnb:await
options:
key: cnb-build-amd64
- name: await the arm64
type: cnb:await
options:
key: cnb-build-arm64
- name: manifest
image: cnbcool/manifest
settings:
username: $CNB_TOKEN_USER_NAME
password: $CNB_TOKEN
target: ${IMAGE_TAG}
template: ${IMAGE_TAG}-OS-ARCH
platforms:
- linux/amd64
- linux/arm64
- name: remove tag
type: artifact:remove-tag
options:
name: ${CNB_REPO_NAME}
tags:
- lamp-linux-amd64
- lamp-linux-arm64
type: docker