Skip to content
This repository has been archived by the owner on Aug 18, 2023. It is now read-only.

Use Docker-based GitHub Actions Workflows #86

Closed
atc0005 opened this issue Aug 4, 2020 · 0 comments · Fixed by #88
Closed

Use Docker-based GitHub Actions Workflows #86

atc0005 opened this issue Aug 4, 2020 · 0 comments · Fixed by #88
Assignees
Milestone

Comments

@atc0005
Copy link
Owner

atc0005 commented Aug 4, 2020

Swap out the GitHub Actions used for CI work with custom Docker containers from the atc0005/go-ci project.

refs:

@atc0005 atc0005 added this to the Next Release milestone Aug 4, 2020
@atc0005 atc0005 self-assigned this Aug 4, 2020
atc0005 added a commit that referenced this issue Aug 4, 2020
Replace native GitHub Actions with containers created
and managed through the `atc0005/go-ci` project.

This results in three workflows:

- New, primary workflow
  - with parallel linting, testing and building tasks
  - with three Go environments
    - "old stable" - currently `Go 1.13.14`
    - "stable" - currently `Go 1.14.6`
    - "unstable" - currently `Go 1.15rc1`
  - Makefile is *not* used in this workflow
  - staticcheck linting using latest stable version
    provided by the `atc0005/go-ci` containers

- Separate Makefile-based linting and building workflow
  - intended to help ensure that local Makefile-based
    builds that are referenced in project README files
    continue to work as advertised until a better local
    tool can be discovered/explored further
  - use `golang:latest` container to allow for Makefile-based
    linting tooling installation testing since the
    `atc0005/go-ci` project provides containers with those
    tools already pre-installed
    - linting tasks use container-provided `golangci-lint` config file
    *except* for the Makefile-driven linting task which continues to use
    the repo-provided copy of the `golangci-lint` configuration file

- Add Quick Validation workflow
  - run on every push, everything else on pull request updates
  - linting via `golangci-lint` only
  - testing
  - no builds

Other changes:

- Makefile `lintinstall` recipe installs the very latest
  stable version of the `golangci-lint` binary instead
  of locking a specific version
  - this should reduce dependency "gardening"

refs GH-86
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant