name: "Deploy to nki-personal" on: push: branches: - master pull_request: branches: - master types: - opened - synchronize - reopened - labeled jobs: test: runs-on: ubuntu-latest name: Formatting Check steps: - uses: actions/checkout@v2.3.4 - uses: cachix/install-nix-action@v20 with: extra_nix_config: | # Enable flakes experimental-features = nix-command flakes - name: Run format check run: | nix fmt if [ -z "$(git status --untracked-files=no --porcelain)" ]; then echo "Formatted, clean" else echo "The following files are unformatted:" git status false fi deploy: if: "github.event_name == 'push' || contains(github.event.pull_request.labels.*.name, 'Deploy')" runs-on: ubuntu-latest name: Deploy steps: - uses: actions/checkout@v2.3.4 - name: Add SSH key env: SSH_AUTH_SOCK: /tmp/ssh_agent.sock run: | mkdir -p /home/runner/.ssh echo "${{ secrets.SSH_KEY }}" > /home/runner/.ssh/github_actions echo "${{ secrets.NIX_DEPLOY_SSH_KEY }}" > /home/runner/.ssh/nix_deploy_key chmod 600 /home/runner/.ssh/* ssh-agent -a $SSH_AUTH_SOCK > /dev/null ssh-add /home/runner/.ssh/* ssh-keyscan ${{ secrets.INSTANCE_IP }} >> /home/runner/.ssh/known_hosts - uses: cachix/install-nix-action@v20 with: extra_nix_config: | # Enable flakes experimental-features = nix-command flakes # Deploy tokens access-tokens = github.com=${{ secrets.GITHUB_TOKEN }} - name: Deploy with deploy-rs env: SSH_AUTH_SOCK: /tmp/ssh_agent.sock run: | nix run -L github:Serokell/deploy-rs . -- --hostname ${{ secrets.INSTANCE_IP }} -- -L