diff --git a/.github/workflows/mirror-to-knot.yml b/.github/workflows/mirror-to-knot.yml deleted file mode 100644 --- a/.github/workflows/mirror-to-knot.yml +++ /dev/null @@ -1,48 +0,0 @@ -name: Mirror main to knot (Tangled) - -# Keeps knot.aesthetic.computer:aesthetic.computer/core in sync with GitHub's main. -# Fires on every push to main (including PR merges and bot commits). knot is the -# production source for lith; keeping it mirrored means lith doesn't miss -# anything landed via GitHub. -# -# Opposite direction (knot → GitHub) can't be automated the same way (knot is -# a managed Tangled instance, no hooks). Relies on the user pushing locally -# via the dual-pushurl remote to cover direct-knot cases. - -on: - push: - branches: [main] - workflow_dispatch: - -concurrency: - group: mirror-to-knot - cancel-in-progress: false - -jobs: - mirror: - runs-on: ubuntu-latest - steps: - - name: Checkout main (full history, no LFS) - uses: actions/checkout@v4 - with: - fetch-depth: 0 - persist-credentials: false - - - name: Configure SSH for knot - env: - KNOT_KEY: ${{ secrets.TANGLED_KNOT_SSH_KEY }} - run: | - install -d -m 700 ~/.ssh - printf '%s\n' "$KNOT_KEY" > ~/.ssh/knot - chmod 600 ~/.ssh/knot - # Pin knot's host keys (from ssh-keyscan on knot.aesthetic.computer). - cat >> ~/.ssh/known_hosts <<'EOF' - knot.aesthetic.computer ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIM37FhiGAdqdW6e3YA05JDFpgmu0xRDGUo5CUYJPn6CO - EOF - chmod 600 ~/.ssh/known_hosts - - - name: Push to knot - run: | - git remote add knot git@knot.aesthetic.computer:aesthetic.computer/core - GIT_SSH_COMMAND='ssh -i ~/.ssh/knot -o IdentitiesOnly=yes' \ - git push knot HEAD:refs/heads/main