44 lines
1.3 KiB
YAML
44 lines
1.3 KiB
YAML
name: Sync selected files to GitHub
|
|
|
|
on:
|
|
workflow_dispatch:
|
|
|
|
jobs:
|
|
sync:
|
|
runs-on: ubuntu-latest
|
|
container:
|
|
image: node:20-bullseye
|
|
options: >-
|
|
--dns 192.168.1.1
|
|
--add-host git.natxocc.com:host-gateway
|
|
--add-host gitea:host-gateway
|
|
|
|
steps:
|
|
- name: Clone source from Gitea
|
|
run: |
|
|
git clone https://git.natxocc.com/natxocc/sigpro.git source
|
|
cd source
|
|
git checkout main
|
|
|
|
- name: Clone destination from GitHub
|
|
run: |
|
|
git clone https://x-access-token:${{ secrets.GH_TOKEN }}@github.com/natxocc/sigpro.git dest
|
|
cd dest
|
|
git config user.name "Sync Bot"
|
|
git config user.email "bot@natxocc.com"
|
|
|
|
- name: Copy selected files
|
|
run: |
|
|
FILES="sigpro.js sigpro.d.ts vite/index.js dist/sigpro.esm.js dist/sigpro.esm.min.js dist/sigpro.js dist/sigpro.min.js"
|
|
for file in $FILES; do
|
|
if [ -f "source/$file" ]; then
|
|
mkdir -p "dest/$(dirname $file)"
|
|
cp "source/$file" "dest/$file"
|
|
fi
|
|
done
|
|
|
|
- name: Commit and push to GitHub
|
|
run: |
|
|
cd dest
|
|
git add .
|
|
git diff --staged --quiet || (git commit -m "Sync selected files from Gitea" && git push origin main) |