Skip to content

Workflow file for this run

# .github/workflows/release.yaml
on:
release:
types: [created]
jobs:
release-linux-amd64:
name: release linux/amd64
runs-on: ubuntu-latest
outputs:
binary_name: ${{ steps.build.outputs.binary_name }}
steps:
- name: Checkout code
uses: actions/checkout@v2
- name: Set up Go
uses: actions/setup-go@v2
with:
go-version: '1.21'
- name: Build project
id: build
run: |
RELEASE_TAG_NAME=$(echo "${{ github.event.release.tag_name }}" | sed 's/^v//')
BINARY_NAME="terrabot-${RELEASE_TAG_NAME}-linux-amd64"
echo "BINARY_NAME=${BINARY_NAME}" >> $GITHUB_ENV
echo "BINARY_NAME=${BINARY_NAME}" >> $GITHUB_OUTPUT
go build -o ${BINARY_NAME} .
env:
GOOS: linux
GOARCH: amd64
- name: Upload release asset
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ github.event.release.upload_url }}
asset_path: ./${{ env.BINARY_NAME }}
asset_name: ${{ steps.build.outputs.binary_name }}
asset_content_type: application/octet-stream