diff --git a/.gitea/workflows/ci.yaml b/.gitea/workflows/ci.yaml index ec55a9f..30f6e90 100755 --- a/.gitea/workflows/ci.yaml +++ b/.gitea/workflows/ci.yaml @@ -55,12 +55,13 @@ jobs: run: | echo "Preparing the sacred keys and crypto-litany for SSH communion..." mkdir -p ~/.ssh/ + chmod 700 ~/.ssh/ + echo "${{ secrets.ROOF_UNIT_SSH_KEY }}" > ~/.ssh/id_rsa chmod 600 ~/.ssh/id_rsa - ssh-keyscan -H "${{ secrets.ROOF_UNIT_HOSTNAME }}" >> ~/.ssh/known_hosts - - # This block now correctly writes all options to ~/.ssh/config + # This block must be written BEFORE ssh-keyscan is called. + echo "Writing the scripture of connection (~/.ssh/config)..." echo "Host roof-unit" > ~/.ssh/config echo " HostName ${{ secrets.ROOF_UNIT_HOSTNAME }}" >> ~/.ssh/config echo " User ${{ secrets.ROOF_UNIT_USER }}" >> ~/.ssh/config @@ -69,6 +70,9 @@ jobs: echo " HostKeyAlgorithms +ssh-rsa" >> ~/.ssh/config echo " MACs +hmac-sha1" >> ~/.ssh/config echo " PubkeyAcceptedAlgorithms +ssh-rsa" >> ~/.ssh/config + + echo "Performing the Rite of Keyscan..." + ssh-keyscan -t rsa -H "${{ secrets.ROOF_UNIT_HOSTNAME }}" >> ~/.ssh/known_hosts - name: 3. Execute Deployment Ritual run: |