This commit is contained in:
xiongxiao
2026-01-12 15:19:18 +08:00
parent cdda001d48
commit 72a81e4923
2 changed files with 49 additions and 58 deletions

104
.cnb.yml
View File

@@ -1,4 +1,19 @@
# .cnb.yml
include:
- https://cnb.cool/kevisual/cnb/-/blob/main/.cnb/template.yml
.common_env: &common_env
env:
TO_REPO: kevisual/cnb
TO_URL: git.xiongxiao.me
KUBECONFIG_CONTEXT: dev-cluster
KUBECONFIG_DEPLOYMENT: blog
KUBECONFIG_NAMESPACE: default
imports:
- https://cnb.cool/kevisual/env/-/blob/main/.env.development
services:
- docker
$:
vscode:
- docker:
@@ -6,74 +21,47 @@ $:
services:
- vscode
- docker
imports: https://cnb.cool/kevisual/env/-/blob/main/.env.development
imports: !reference [.common_env, imports]
# 开发环境启动后会执行的任务
# stages:
# - name: pnpm install
# script: pnpm install
.common_sync_to_gitea: &common_sync_to_gitea
services:
- docker
imports:
- https://cnb.cool/kevisual/env/-/blob/main/.env.development
env:
TO_REPO: kevisual/cnb
TO_URL: git.xiongxiao.me
stages:
- name: '显示 git remote'
script: git remote -v
- name: sync to gitea
image: tencentcom/git-sync
settings:
target_url: https://${TO_URL}/${TO_REPO}.git
auth_type: https
username: "oauth2"
password: ${GITEA_TOKEN}
git_user: "abearxiong"
git_email: "xiongxiao@xiongxiao.me"
sync_mode: rebase
branch: main
- <<: *common_env
stages: !reference [.common_sync_to_gitea_template, stages]
.common_sync_from_gitea: &common_sync_from_gitea
services:
- docker
imports:
- https://cnb.cool/kevisual/env/-/blob/main/.env.development
env:
TO_REPO: kevisual/cnb
TO_URL: git.xiongxiao.me
stages:
- name: '添加 gitea的origin'
script: |
git remote remove gitea 2>/dev/null || true
git remote add gitea https://oauth2:${GITEA_TOKEN}@${TO_URL}/${TO_REPO}.git
- name: '同步gitea代码到当前仓库'
script: git pull gitea main
- name: '提交到原本的origin'
script: git push origin main
- <<: *common_env
stages: !reference [.common_sync_from_gitea_template, stages]
.common_deploy_kubectl: &common_deploy_kubectl
- <<: *common_env
services: !reference [.kubectl_deploy_template, services]
stages: !reference [.kubectl_deploy_template, stages]
.common_build: &common_build
- <<: *common_env
services: !reference [.build_images_template, services]
stages: !reference [.build_images_template, stages]
main:
web_trigger_sync_to_gitea:
- <<: *common_sync_to_gitea
web_trigger_sync_to_gitea:
- <<: *common_sync_to_gitea
web_trigger_sync_from_gitea:
- <<: *common_sync_from_gitea
- <<: *common_sync_from_gitea
api_trigger_sync_to_gitea:
- <<: *common_sync_to_gitea
- <<: *common_sync_to_gitea
api_trigger_sync_from_gitea:
- <<: *common_sync_from_gitea
- <<: *common_sync_from_gitea
# other
web_trigger_deploy_kubectl:
- <<: *common_deploy_kubectl
api_trigger_deploy_kubectl:
- <<: *common_deploy_kubectl
web_trigger_build:
- <<: *common_build
api_trigger_build:
- <<: *common_build
deploy:
push:
- docker:
image: docker.cnb.cool/kevisual/dev-env:latest
services:
- vscode
- docker
stages:
- name: 打包应用
script: pnpm build
# 同名镜像构建&推送
- name: Docker build
script: docker build -t ${CNB_DOCKER_REGISTRY}/${CNB_REPO_SLUG_LOWERCASE}:latest .
- name: Docker push
script: docker push ${CNB_DOCKER_REGISTRY}/${CNB_REPO_SLUG_LOWERCASE}:latest

3
.vscode/settings.json vendored Normal file
View File

@@ -0,0 +1,3 @@
{
"yaml.customTags": ["!reference sequence"]
}