Open atc0005 opened 1 year ago
Looking over the current setup the easiest path forward is to mark the job as optional just like the Makefile / Build codebase using Makefile all recipe
has been marked. That job is then explicitly enabled for the monthly scheduled workflow.
- Consider removing CI Makefile-initiated linting tasks
I'm thinking that by keeping this limited to a monthly schedule it remains useful as a proof against Makefiles "degrading" and no longer properly running the linting tasks.
- might be worth dropping project-specific linting configuration?
This is worth considering. Since we're using the go-ci project images which bundle a standardized golangci-lint config file we don't necessarily need project-specific config files unless those config files apply stricter linting standards than the standardized linter config.
Said another way, if we remove the linter config file from each project we should probably also remove the Makefile-initiated linting tasks from CI (currently a monthly schedule).
For now, it's probably worth leaving everything as it is until I think on this further.
So to recap, next steps would include (if at all):
.golangci.yml
file from all projects using this repo.markdownlint.yml
file within each projectlint_code_with_makefile
job from .github/workflows/lint-and-build-using-make.yml
.github/workflows/lint-and-build-using-make.yml
.github/workflows/build-using-make.yml
.github/workflows/makefile-tasks.yml
Overview
The recent bug with the v2.17.0 release of the gosec linter (bundled with golangci-lint v1.54.2) triggered false-positive linting failures across several projects using the workflows from this repo.
The go-ci based containers were updated to rollback golangci-lint to v1.54.1 which resolved the container based linting false-positives.
The linting jobs using project Makefiles however continue to fail. This is because of two reasons:
I originally intended for the Makefiles to serve two purposes:
I still use project Makefiles to generate assets (mostly using containers now), but no longer use Makefiles for local linting tasks.
As noted in the GH issue title, it's probably worth first dropping the Makefile linting checks as regular CI jobs. To begin with I'd add them to the monthly scheduled tasks, but might end up dropping them entirely, leaving them in the Makefile but generally disused.
TODO
Lint codebase using Makefile
job by defaultLint codebase using Makefile
job as monthly taskProjects to update
Drop branch protection rule requirement for the
Makefile / Lint codebase using Makefile
status check: