Skip to content

solve for lower golang versions #127

solve for lower golang versions

solve for lower golang versions #127

Workflow file for this run

name: Go
on:
push:
branches: [ master, v3 ]
# Sequence of patterns matched against refs/tags
tags:
- 'v*' # Push events to matching v*, i.e. v1.0, v20.15.10
pull_request:
branches: [ master, v3 ]
# types: [assigned, opened, synchronize, reopened]
#on: [push, pull_request]
jobs:
test:
strategy:
matrix:
go-version: [ 1.11.x, 1.17.x, 1.20.x ]
#os: [ubuntu-latest, macos-latest, windows-latest]
os: [ ubuntu-latest ]
fail-fast: false
runs-on: ${{ matrix.os }}
steps:
- name: Install Go
uses: actions/setup-go@v2
with:
go-version: ${{ matrix.go-version }}
- name: Checkout code
uses: actions/checkout@v2
- uses: actions/cache@v2
with:
path: ~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
restore-keys: |
${{ runner.os }}-go-
- name: Test
run: go test ./... -v -race
coverage:
#needs: test
env:
COVERALLS_TOKEN: ${{ secrets.COVERALLS_REPO_TOKEN }}
runs-on: ubuntu-latest
steps:
- name: Install Go
uses: actions/setup-go@v2
with:
go-version: 1.20.x
- name: Checkout code
uses: actions/checkout@v2
#with:
# path: ./src/github.com/${{ github.repository }}
- uses: actions/cache@v2
with:
path: ~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
restore-keys: |
${{ runner.os }}-go-
- name: Test & Coverage
run: go test -v -coverprofile=profile.cov ./...
- name: Send coverage
uses: shogo82148/actions-goveralls@v1
with:
path-to-profile: profile.cov
parallel: true
# - name: Coveralls Parallel
# uses: coverallsapp/github-action@master
# with:
# # github-token: ${{ secrets.COVERALLS_REPO_TOKEN }}
# github-token: ${{ secrets.GITHUB_TOKEN }}
# path-to-lcov: profile.cov
# parallel:
# true
# build:
# #env:
# # GOPATH: ${{ github.workspace }}
# # GO111MODULE: off
# runs-on: ubuntu-latest
# steps:
# - name: Install Go
# uses: actions/setup-go@v2
# with:
# go-version: 1.14.x
# - name: Checkout code
# uses: actions/checkout@v2
# #with:
# # path: ./src/github.com/${{ github.repository }}
# - uses: actions/cache@v2
# with:
# path: ~/go/pkg/mod
# key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
# restore-keys: |
# ${{ runner.os }}-go-
# - name: Build
# run: |
# for dir in cmdr std; do
# for GOOS in windows linux darwin; do
# for GOARCH in amd64; do
# suf=; if [[ $GOOS == "windows" ]]; then suf=".exe"; fi
# go build -v -o bin/tcp-tool-$dir-$GOOS-$GOARCH$suf ./examples/$dir
# gzip bin/tcp-tool-$dir-$GOOS-$GOARCH$suf
# done
# done
# done
# - name: upload artifacts
# uses: actions/upload-artifact@master
# if: startsWith(github.ref, 'refs/tags/v')
# with:
# name: binaries
# path: bin/
#
# - name: Upload binaries to release
# uses: svenstaro/upload-release-action@v2
# if: startsWith(github.ref, 'refs/tags/v')
# with:
# repo_token: ${{ secrets.GITHUB_TOKEN }}
# file: bin/*
# tag: ${{ github.ref }}
# overwrite: true
# file_glob: true
# #body:
## - name: Create Release
## id: create_release
## uses: actions/create-release@v1
## env:
## GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
## with:
## tag_name: ${{ github.ref }}
## release_name: Release ${{ github.ref }}
## draft: false
## prerelease: false
## - name: Upload Release Asset
## id: upload-release-asset
## uses: actions/upload-release-asset@v1
## env:
## GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
## with:
## upload_url: ${{ steps.create_release.outputs.upload_url }} # This pulls from the CREATE RELEASE step above, referencing it's ID to get its outputs object, which include a `upload_url`. See this blog post for more info: https://jasonet.co/posts/new-features-of-github-actions/#passing-data-to-future-steps
## asset_path: bin/*
## asset_name: my-artifact.zip
## asset_content_type: application/zip
# notifies coveralls that all test jobs are finished
finish-cov:
name: Finish Coverage
needs: coverage
runs-on: ubuntu-latest
steps:
- uses: shogo82148/actions-goveralls@v1
with:
parallel-finished: true
# - name: Coveralls Finished
# uses: coverallsapp/github-action@master
# with:
# # github-token: ${{ secrets.COVERALLS_REPO_TOKEN }}
# github-token: ${{ secrets.GITHUB_TOKEN }}
# parallel-finished: true
do-release:
runs-on: ubuntu-latest
needs: coverage
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Release
uses: softprops/action-gh-release@v1
if: startsWith(github.ref, 'refs/tags/')