add golangci-lint and clean up a bit #834
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: EC2 Instance Selector CI and Release | |
on: [push, pull_request, workflow_dispatch] | |
env: | |
DEFAULT_GO_VERSION: ^1.23 | |
GITHUB_USERNAME: ${{ secrets.EC2_BOT_GITHUB_USERNAME }} | |
GITHUB_TOKEN: ${{ secrets.EC2_BOT_GITHUB_TOKEN }} | |
DOCKERHUB_USERNAME: ${{ secrets.DOCKERHUB_USERNAME }} | |
DOCKERHUB_PASSWORD: ${{ secrets.DOCKERHUB_PASSWORD }} | |
DOCKERHUB_TOKEN: ${{ secrets.DOCKERHUB_TOKEN }} | |
jobs: | |
buildAndTest: | |
name: Build and Test | |
runs-on: ubuntu-20.04 | |
steps: | |
- name: Set up Go 1.x | |
uses: actions/setup-go@v2 | |
with: | |
go-version: ${{ env.DEFAULT_GO_VERSION }} | |
- name: Check out code into the Go module directory | |
uses: actions/checkout@v3 | |
- name: Unit Tests | |
run: make unit-test | |
- name: Lints | |
run: make spellcheck shellcheck | |
- name: Brew Sync Dry run | |
run: make homebrew-sync-dry-run | |
- name: License Test | |
run: make license-test | |
- name: Build Binaries | |
run: make build-binaries | |
- name: Build Docker Images | |
run: make build-docker-images | |
- name: Integration Tests | |
if: ${{ github.event_name == 'push' && !contains(github.ref, 'dependabot') }} | |
run: make integ-test | |
env: | |
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} | |
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} | |
AWS_SESSION_TOKEN: ${{ secrets.AWS_SESSION_TOKEN }} | |
AWS_REGION: ${{ secrets.AWS_REGION }} | |
release: | |
name: Release | |
runs-on: ubuntu-20.04 | |
needs: [buildAndTest] | |
if: github.event_name == 'push' && contains(github.ref, 'refs/tags/') | |
steps: | |
- name: Set up Go 1.x | |
uses: actions/setup-go@v2 | |
with: | |
go-version: ${{ env.DEFAULT_GO_VERSION }} | |
- name: Check out code into the Go module directory | |
uses: actions/checkout@v2 | |
- name: Release Assets | |
run: make release | |
- name: Sync to Homebrew | |
run: make homebrew-sync |