name: Deploy

on:
  # push:
  #   branches: [ "master" ]
  release:
    types: [ published ]

jobs:
  deploy:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v3
    - run: apt-get update && apt-get -y install ansible

    - name: Set up Go
      uses: actions/setup-go@v3
      with:
        go-version: 1.21.3

    - name: Install
      run: go install -ldflags "-s -w" go.sour.is/paste/cmd/paste/v2@master

    - run: mv $(go env GOPATH)/bin/paste sour.is-paste

    - name: Compress
      uses: https://git.sour.is/actions/ghaction-upx@v2.4.0
      with:
        version: latest
        files: |
            ./sour.is-paste
        args: -fq

    - name: Deploy
      uses: https://git.sour.is/actions/action-ansible-playbook@v2
      with:
        playbook: ${{ gitea.workspace }}/.ansible/playbook.yml
        key: ${{secrets.deploy_ssh}}
        options: |
          --inventory .ansible/inventory
          --become
          --become-method sudo
          --user deploy

    - run: echo "🍏 This job's status is ${{ job.status }}."
