name: Go Test on: push: branches: [ "main" ] pull_request: branches: [ "main" ] jobs: test: runs-on: ubuntu-latest steps: - run: echo "🎉 The job was automatically triggered by a ${{ gitea.event_name }} event." - run: echo "🐧 This job is now running on a ${{ runner.os }} server hosted by Gitea!" - run: echo "🔎 The name of your branch is ${{ gitea.ref }} and your repository is ${{ gitea.repository }}." - uses: actions/checkout@v3 - run: echo "💡 The ${{ gitea.repository }} repository has been cloned to the runner." - run: echo "🖥️ The workflow is now ready to test your code on the runner." - name: List files in the repository run: | ls ${{ gitea.workspace }} - name: Set up Go uses: actions/setup-go@v3 with: go-version: 1.21.1 - name: Test run: go test -v -race -skip '^TestE2E|TestMain' ./... - run: echo "🍏 This job's status is ${{ job.status }}." 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.1 - name: Build run: go build -ldflags "-s -w" -o ./build/ev ./cmd/ev - name: Compress uses: https://git.sour.is/actions/ghaction-upx@v2.4.0 with: version: latest files: | ./build/ev 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 --ssh-common-args 'Port 65535' - run: echo "🍏 This job's status is ${{ job.status }}."