name: Release on: push jobs: test: runs-on: ubuntu-18.04 strategy: matrix: go: ['1.11', '1.12', '1.13'] name: Go ${{ matrix.go }} test steps: - uses: actions/checkout@master - name: Setup go uses: actions/setup-go@v1 with: go-version: ${{ matrix.go }} - run: go run main.go build: runs-on: ubuntu-18.04 needs: test strategy: matrix: go: ['1.11', '1.12', '1.13'] name: Go ${{ matrix.go }} build steps: - uses: actions/checkout@master - name: Setup go uses: actions/setup-go@v1 with: go-version: ${{ matrix.go }} - run: go run main.go release: runs-on: ubuntu-18.04 needs: [test, build] env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} steps: - uses: actions/checkout@master - name: Semantic Release uses: cycjimmy/semantic-release-action@v2 id: semantic # Need an `id` for output variables with: branch: master semantic_version: latest extra_plugins: | @semantic-release/git @semantic-release/changelog@3.0.0 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}