Commit 3a9467a
Changed files (1)
.github
workflows
.github/workflows/tangled-mirror.yaml
@@ -0,0 +1,40 @@
+name: Mirror Repo to Tangled.org
+on:
+ workflow_dispatch:
+ push:
+ branches: [master]
+concurrency:
+ group: tangled-mirror
+ cancel-in-progress: true
+jobs:
+ tangled-mirror:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v6
+ with:
+ fetch-depth: 0
+ persist-credentials: false
+ - name: Add Tangled Remote
+ env:
+ TANGLED_REPO_URL: git@tangled.org:karnwong.me/${{ github.event.repository.name }}
+ run: git remote add tangled $TANGLED_REPO_URL
+ - name: Decode SSH key
+ env:
+ TANGLED_SSH_KEY: ${{ secrets.TANGLED_SSH_KEY }}
+ run: |
+ echo $TANGLED_SSH_KEY | base64 --decode > "$RUNNER_TEMP/ssh.key"
+ chmod 600 "$RUNNER_TEMP/ssh.key"
+ - name: Setup SSH known_hosts
+ run: |
+ mkdir -p ~/.ssh
+ sudo ssh-keyscan -t rsa tangled.org >> ~/.ssh/known_hosts
+ sudo chmod 700 ~/.ssh
+ sudo chmod 644 ~/.ssh/known_hosts
+ sudo chown -R runner:runner ~/.ssh
+ - name: Push Repo to Mirror
+ run: |
+ eval `ssh-agent`
+ ssh-add "$RUNNER_TEMP/ssh.key"
+ git push --mirror --force tangled
+ - name: Cleanup
+ run: rm "$RUNNER_TEMP/ssh.key"