go-mod-outdated icon indicating copy to clipboard operation
go-mod-outdated copied to clipboard

Enhance workflow

Open crazy-max opened this issue 4 years ago • 0 comments

@psampaz First of all thank you for this great project! Really useful!

As a modest gift, here is a PR that offers some enhancements for the current workflow:

  • Use buildx bake and goreleaser
  • Create artifacts with artifact (current platform) or artifact-all target for cross-compilation:
    • darwin/amd64
    • darwin/arm64
    • linux/amd64
    • linux/arm/v6
    • linux/arm/v7
    • linux/arm64
    • windows/amd64
  • Sandboxed vendor and lint validation with bake targets
  • Fix go.sum
  • Mutualize tests and handle them through bake and GitHub Actions with coverage
  • Update codecov/codecov-action to v2
  • Support Docker multi-platform image
  • GitHub Actions
    • On git push tag event semver like v0.9.0:
      • Artifacts will be available in the pipeline through actions/upload-artifact
      • Will create the GitHub Release and push artifacts
      • Will create and push Docker tags psampaz/go-mod-outdated:0.9.0 / psampaz/go-mod-outdated:latest
    • On git push (master branch)
      • Artifacts will be available in the pipeline through actions/upload-artifact
      • Will push Docker tag psampaz/go-mod-outdated:edge
    • On git pull_request event

Everything is already in place and tested on https://github.com/crazy-max/go-mod-outdated as well as the GitHub Actions pipeline if you want to take a look.

image

https://github.com/crazy-max/go-mod-outdated/releases/tag/v0.9.0

image

https://hub.docker.com/r/crazymax/go-mod-outdated/tags?page=1&ordering=last_updated

crazy-max avatar Sep 04 '21 18:09 crazy-max