加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
sync.yml 7.99 KB
一键复制 编辑 原始数据 按行查看 历史
徐晓伟 提交于 2024-07-01 22:38 . :construction_worker:使用国内镜像,升级镜像
#
# 同步代码
#
sync-gitee:
stage: sync
variables:
GIT_DEPTH: 0 # 取消浅层克隆
image: registry.cn-qingdao.aliyuncs.com/xuxiaoweicomcn/bitnami-git:2.45.2
script:
- git config --global user.email $GITLAB_USER_EMAIL
- git config --global user.name $GITLAB_USER_NAME
- git config --global user.email
- git config --global user.name
- GITEE_REPOSITORY=$(echo $CI_PROJECT_PATH | sed 's/xuxiaowei-jihu\///')
- git remote add gitee https://xuxiaowei-com-cn:$GITEE_PRIVATE_TOKEN@gitee.com/$GITEE_REPOSITORY.git
- echo 当前分支:$CI_COMMIT_BRANCH
- echo 当前标签:$CI_COMMIT_TAG
- if [ "$CI_COMMIT_BRANCH" ]; then
git checkout -b $CI_COMMIT_BRANCH;
git pull --progress -v --no-rebase gitee $CI_COMMIT_BRANCH || echo 远端不存在$CI_COMMIT_BRANCH分支;
git push -u gitee $CI_COMMIT_BRANCH;
fi
- if [ "$CI_COMMIT_TAG" ]; then
git push -u gitee $CI_COMMIT_TAG;
fi
rules:
# 匹配以 dependabot 开头的分支
- if: $CI_COMMIT_BRANCH =~ /^dependabot*/
# 不执行
when: never
# 非 PR 时触发
- if: $CI_MERGE_REQUEST_TARGET_BRANCH_NAME == null && $ENABLE_SYNC == "true"
retry: 2
# 允许失败
allow_failure: true
sync-gitcode:
stage: sync
variables:
GIT_DEPTH: 0 # 取消浅层克隆
image: registry.cn-qingdao.aliyuncs.com/xuxiaoweicomcn/bitnami-git:2.45.2
script:
- git config --global user.email $GITLAB_USER_EMAIL
- git config --global user.name $GITLAB_USER_NAME
- git config --global user.email
- git config --global user.name
- GITCODE_REPOSITORY=$(echo $CI_PROJECT_PATH | sed 's/xuxiaowei-jihu\///')
- git remote add gitcode https://qq_32596527:$GITCODE_PRIVATE_TOKEN@gitcode.net/$GITCODE_REPOSITORY.git
- echo 当前分支:$CI_COMMIT_BRANCH
- echo 当前标签:$CI_COMMIT_TAG
- if [ "$CI_COMMIT_BRANCH" ]; then
git checkout -b $CI_COMMIT_BRANCH;
git pull --progress -v --no-rebase gitcode $CI_COMMIT_BRANCH || echo 远端不存在$CI_COMMIT_BRANCH分支;
git push -u gitcode $CI_COMMIT_BRANCH;
fi
- if [ "$CI_COMMIT_TAG" ]; then
git push -u gitcode $CI_COMMIT_TAG;
fi
rules:
# 匹配以 dependabot 开头的分支
- if: $CI_COMMIT_BRANCH =~ /^dependabot*/
# 不执行
when: never
# 非 PR 时触发
- if: $CI_MERGE_REQUEST_TARGET_BRANCH_NAME == null && $ENABLE_SYNC == "true"
retry: 2
# 允许失败
allow_failure: true
sync-gitlink:
stage: sync
variables:
GIT_DEPTH: 0 # 取消浅层克隆
image: registry.cn-qingdao.aliyuncs.com/xuxiaoweicomcn/bitnami-git:2.45.2
script:
- mkdir -p ~/.ssh
# 为了让GitLab隐藏变量 GITLINK_ID_RSA,所以添加 GITLINK_ID_RSA 时,去掉了开头、结尾与换行
# 在此处添加开头与结尾(ssh 添加时必须包含)
- echo "-----BEGIN OPENSSH PRIVATE KEY-----" >> ~/.ssh/gitlink_id_rsa
- echo "$GITLINK_ID_RSA" >> ~/.ssh/gitlink_id_rsa
- echo "-----END OPENSSH PRIVATE KEY-----" >> ~/.ssh/gitlink_id_rsa
- chmod 600 ~/.ssh/gitlink_id_rsa
- eval $(ssh-agent -s)
- ssh-add ~/.ssh/gitlink_id_rsa
- git config --global user.email $GITLAB_USER_EMAIL
- git config --global user.name $GITLAB_USER_NAME
- git config --global user.email
- git config --global user.name
- GITLINK_REPOSITORY=$(echo $CI_PROJECT_PATH | sed 's/xuxiaowei-jihu\///')
- git remote add gitlink git@code.gitlink.org.cn:$GITLINK_REPOSITORY.git
- echo 当前分支:$CI_COMMIT_BRANCH
- echo 当前标签:$CI_COMMIT_TAG
- ssh-keyscan -H code.gitlink.org.cn >> ~/.ssh/known_hosts
- if [ "$CI_COMMIT_BRANCH" ]; then
git checkout -b $CI_COMMIT_BRANCH;
git pull --progress -v --no-rebase gitlink $CI_COMMIT_BRANCH || echo 远端不存在$CI_COMMIT_BRANCH分支;
git push -u gitlink $CI_COMMIT_BRANCH;
fi
- if [ "$CI_COMMIT_TAG" ]; then
git push -u gitlink $CI_COMMIT_TAG;
fi
rules:
# 匹配以 dependabot 开头的分支
- if: $CI_COMMIT_BRANCH =~ /^dependabot*/
# 不执行
when: never
# 非 PR 时触发
- if: $CI_MERGE_REQUEST_TARGET_BRANCH_NAME == null && $ENABLE_SYNC == "true"
retry: 2
# 允许失败
allow_failure: true
sync-gitlab:
stage: sync
variables:
GIT_DEPTH: 0 # 取消浅层克隆
image: registry.cn-qingdao.aliyuncs.com/xuxiaoweicomcn/bitnami-git:2.45.2
script:
- git config --global user.email $GITLAB_USER_EMAIL
- git config --global user.name $GITLAB_USER_NAME
- git config --global user.email
- git config --global user.name
- GITLAB_REPOSITORY=$(echo $CI_PROJECT_PATH | sed 's/xuxiaowei-jihu\///')
- git remote add gitlab https://xuxiaowei-com-cn:$GITLAB_PRIVATE_TOKEN@gitlab.com/$GITLAB_REPOSITORY.git
- echo 当前分支:$CI_COMMIT_BRANCH
- echo 当前标签:$CI_COMMIT_TAG
- if [ "$CI_COMMIT_BRANCH" ]; then
git checkout -b $CI_COMMIT_BRANCH;
git pull --progress -v --no-rebase gitlab $CI_COMMIT_BRANCH || echo 远端不存在$CI_COMMIT_BRANCH分支;
git push -u gitlab $CI_COMMIT_BRANCH;
fi
- if [ "$CI_COMMIT_TAG" ]; then
git push -u gitlab $CI_COMMIT_TAG;
fi
rules:
# 匹配以 dependabot 开头的分支
- if: $CI_COMMIT_BRANCH =~ /^dependabot*/
# 不执行
when: never
# 非 PR 时触发
- if: $CI_MERGE_REQUEST_TARGET_BRANCH_NAME == null && $ENABLE_SYNC == "true"
retry: 2
# 允许失败
allow_failure: true
sync-github:
stage: sync
variables:
GIT_DEPTH: 0 # 取消浅层克隆
image: registry.cn-qingdao.aliyuncs.com/xuxiaoweicomcn/bitnami-git:2.45.2
script:
- git config --global user.email $GITLAB_USER_EMAIL
- git config --global user.name $GITLAB_USER_NAME
- git config --global user.email
- git config --global user.name
- GITHUB_REPOSITORY=$(echo $CI_PROJECT_PATH | sed 's/xuxiaowei-jihu\///')
- git remote add github https://xuxiaowei-com-cn:$GITHUB_PRIVATE_TOKEN@github.com/$GITHUB_REPOSITORY.git
- echo 当前分支:$CI_COMMIT_BRANCH
- echo 当前标签:$CI_COMMIT_TAG
- if [ "$CI_COMMIT_BRANCH" ]; then
git checkout -b $CI_COMMIT_BRANCH;
git pull --progress -v --no-rebase github $CI_COMMIT_BRANCH || echo 远端不存在$CI_COMMIT_BRANCH分支;
git push -u github $CI_COMMIT_BRANCH;
fi
- if [ "$CI_COMMIT_TAG" ]; then
git push -u github $CI_COMMIT_TAG;
fi
rules:
# 匹配以 dependabot 开头的分支
- if: $CI_COMMIT_BRANCH =~ /^dependabot*/
# 不执行
when: never
# 非 PR 时触发
- if: $CI_MERGE_REQUEST_TARGET_BRANCH_NAME == null && $ENABLE_SYNC == "true"
retry: 2
# 允许失败
allow_failure: true
sync-framagit:
stage: sync
variables:
GIT_DEPTH: 0 # 取消浅层克隆
image: registry.cn-qingdao.aliyuncs.com/xuxiaoweicomcn/bitnami-git:2.45.2
script:
- git config --global user.email $GITLAB_USER_EMAIL
- git config --global user.name $GITLAB_USER_NAME
- git config --global user.email
- git config --global user.name
- FRAMAGIT_REPOSITORY=$(echo $CI_PROJECT_PATH | sed 's/xuxiaowei-jihu\///')
- git remote add framagit https://xuxiaowei:$FRAMAGIT_PRIVATE_TOKEN@framagit.org/$FRAMAGIT_REPOSITORY.git
- echo 当前分支:$CI_COMMIT_BRANCH
- echo 当前标签:$CI_COMMIT_TAG
- if [ "$CI_COMMIT_BRANCH" ]; then
git checkout -b $CI_COMMIT_BRANCH;
git pull --progress -v --no-rebase framagit $CI_COMMIT_BRANCH || echo 远端不存在$CI_COMMIT_BRANCH分支;
git push -u framagit $CI_COMMIT_BRANCH;
fi
- if [ "$CI_COMMIT_TAG" ]; then
git push -u framagit $CI_COMMIT_TAG;
fi
rules:
# framagit.org 不同步到自己
- if: $CI_SERVER_HOST == 'framagit.org'
# 不执行
when: never
# 匹配以 dependabot 开头的分支
- if: $CI_SERVER_HOST == 'gitlab.helm.xuxiaowei.cn' && $CI_COMMIT_BRANCH =~ /^dependabot*/
# 不执行
when: never
# 非 PR 时触发
- if: $CI_MERGE_REQUEST_TARGET_BRANCH_NAME == null && $ENABLE_SYNC == "true"
retry: 2
# 允许失败
allow_failure: true
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化