fix: CI/CD 改用 git clone 直接拉取代码,避免 rsync 同步失败
This commit is contained in:
@@ -8,21 +8,23 @@ jobs:
|
|||||||
deploy:
|
deploy:
|
||||||
runs-on: aliyun
|
runs-on: aliyun
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Deploy
|
||||||
uses: "http://8.161.227.145:3000/huanghaosheng/checkout@releases/v4"
|
|
||||||
with:
|
|
||||||
ref: ${{ github.ref }}
|
|
||||||
|
|
||||||
- name: Install Docker CLI
|
|
||||||
run: apk add --no-cache docker-cli docker-cli-compose rsync
|
|
||||||
|
|
||||||
- name: Sync to deploy directory
|
|
||||||
run: |
|
run: |
|
||||||
|
if [ -d /root/camtalk/.git ]; then
|
||||||
|
cd /root/camtalk
|
||||||
|
git fetch origin ${GITHUB_REF_NAME} --depth=1
|
||||||
|
git reset --hard origin/${GITHUB_REF_NAME}
|
||||||
|
else
|
||||||
|
git clone --depth=1 --branch ${GITHUB_REF_NAME} \
|
||||||
|
http://8.161.227.145:3000/XEngineers/CamTalk.git /tmp/camtalk-deploy
|
||||||
mkdir -p /root/camtalk
|
mkdir -p /root/camtalk
|
||||||
rsync -a --delete --exclude='.env' --exclude='pgdata' --exclude='redisdata' ./ /root/camtalk/
|
rsync -a --delete \
|
||||||
|
--exclude='.env' \
|
||||||
- name: Build and Deploy
|
--exclude='pgdata' \
|
||||||
run: |
|
--exclude='redisdata' \
|
||||||
|
/tmp/camtalk-deploy/ /root/camtalk/
|
||||||
|
rm -rf /tmp/camtalk-deploy
|
||||||
|
fi
|
||||||
chmod +x /root/camtalk/deploy.sh
|
chmod +x /root/camtalk/deploy.sh
|
||||||
/root/camtalk/deploy.sh build
|
/root/camtalk/deploy.sh build
|
||||||
/root/camtalk/deploy.sh restart
|
/root/camtalk/deploy.sh restart
|
||||||
|
|||||||
Reference in New Issue
Block a user