Skip to content

Commit

Permalink
#224 Normalize to template
Browse files Browse the repository at this point in the history
  • Loading branch information
docktermj committed Aug 29, 2024
1 parent a825234 commit efadb02
Show file tree
Hide file tree
Showing 55 changed files with 925 additions and 489 deletions.
18 changes: 15 additions & 3 deletions .github/coverage/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,19 @@

## testcoverage.yaml

- [testcoverage.yaml]
- Used by `coverage:` in
- [go-test-darwin.yaml](../workflows/go-test-darwin.yaml)
- [go-test-linux.yaml](../workflows/go-test-linux.yaml)
- [go-test-windows.yaml](../workflows/go-test-windows.yaml)
- [go-test-darwin.yaml]
- [go-test-linux.yaml]
- [go-test-windows.yaml]
- [go-test-coverage]
- [go-test-coverage configuration]
- [go-test-coverage badge]

[go-test-darwin.yaml]: ../workflows/README.md#go-test-darwinyaml
[go-test-linux.yaml]: ../workflows/README.md#go-test-linuxyaml
[go-test-windows.yaml]: ../workflows/README.md#go-test-windowsyaml
[testcoverage.yaml]: testcoverage.yaml
[go-test-coverage]: https://github.com/vladopajic/go-test-coverage
[go-test-coverage configuration]: https://github.com/vladopajic/go-test-coverage?tab=readme-ov-file#config
[go-test-coverage badge]: https://github.com/vladopajic/go-test-coverage/blob/main/docs/badge.md
10 changes: 7 additions & 3 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,14 @@

version: 2
updates:
- package-ecosystem: "github-actions"
directory: "/"
- package-ecosystem: github-actions
directory: /
schedule:
interval: "daily"
interval: daily
- package-ecosystem: docker
directory: /
schedule:
interval: daily
- package-ecosystem: gomod
directory: /
schedule:
Expand Down
1 change: 0 additions & 1 deletion .github/linters/.checkov.yaml
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
quiet: true
skip-check:
- CKV_DOCKER_7

Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
run:
modules-download-mode: readonly
show-stats: true
timeout: 10m

output:
print-linter-name: false
show-stats: true
sort-results: true

linters:
Expand Down
7 changes: 1 addition & 6 deletions .github/linters/.jscpd.json
Original file line number Diff line number Diff line change
@@ -1,6 +1 @@
{
"ignore": [
"**/*.go,**/go-test*.yaml"
],
"threshold": 20
}
{}
58 changes: 43 additions & 15 deletions .github/linters/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,25 +2,53 @@

## .checkov.yaml

- Used by [???](https://)
- [.checkov.yaml]
- Used by [lint-workflows.yaml]
- [checkov]
- [checkov configuration]

## .golangci.yml
## .golangci.yaml

- Used by [golangci-lint.yaml](../workflows/golangci-lint.yaml)
- [.golangci.yaml]
- Used by [golangci-lint.yaml]
- [golangci-lint]
- [golangci-lint configuration]

## .jscpd.json

- Used by
- [Options](https://github.com/kucherenko/jscpd/tree/master/apps/jscpd#options)
- Example:

```json
{
"ignore": [
"**/*.go,**/go-test*.yaml"
],
"threshold": 10
}
```
- [.jscpd.json]
- Used by [lint-workflows.yaml]
- [jscpd]
- [jscpd configuration]
- Example:

```json
{
"ignore": [
"**/*.go,**/go-test*.yaml"
],
"threshold": 10
}
```

## .yaml-lint.yml

- [.yaml-lint.yml]
- Used by [lint-workflows.yaml]
- [yaml-lint]
- [yaml-lint configuration]

[.checkov.yaml]: .checkov.yaml
[.golangci.yaml]: .golangci.yaml
[.jscpd.json]: .jscpd.json
[.yaml-lint.yml]: .yaml-lint.yml
[checkov configuration]: https://www.checkov.io/2.Basics/CLI%20Command%20Reference.html
[checkov]: https://www.checkov.io/
[golangci-lint configuration]: https://golangci-lint.run/usage/configuration/
[golangci-lint.yaml]: ../workflows/README.md#golangci-lintyaml
[golangci-lint]: https://golangci-lint.run/
[jscpd configuration]: https://github.com/kucherenko/jscpd/tree/master/apps/jscpd#options
[jscpd]: https://github.com/kucherenko/jscpd
[lint-workflows.yaml]: ../workflows/README.md#lint-workflowsyaml
[yaml-lint configuration]: https://yamllint.readthedocs.io/en/stable/configuration.html
[yaml-lint]: https://github.com/adrienverge/yamllint
205 changes: 205 additions & 0 deletions .github/workflows/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,205 @@
# Workflows

## add-labels-standardized.yaml

When issues are opened,
this action adds appropriate labels to the issue.
(e.g. "triage", "customer-submission")

- [Add Labels Standardized GitHub Action]
- Uses: [senzing-factory/build-resources/.../add-labels-to-issue.yaml]

## add-to-project-garage-dependabot.yaml

When a Dependabot Pull Request (PR) is made against `main` branch,
this action adds the PR to the "Garage" project board as "In Progress".

- [Add to Project Garage Dependabot GitHub Action]
- Uses: [senzing-factory/build-resources/.../add-to-project-dependabot.yaml]

## add-to-project-garage.yaml

When an issue is created,
this action adds the issue to the "Garage" board as "Backlog".

- [Add to Project Garage GitHub Action]
- Uses: [senzing-factory/build-resources/.../add-to-project.yaml]

## dependabot-approve-and-merge.yaml

When a Dependabot Pull Request (PR) is made against the `main` branch,
this action determines if it should be automatically approved and merged into the `main` branch.
Once this action occurs [move-pr-to-done-dependabot.yaml] moves the PR on the "Garage" project board to "Done".

- [Dependabot Approve and Merge GitHub Action]
- Uses: [senzing-factory/build-resources/.../dependabot-approve-and-merge.yaml]

## docker-build-container.yaml

When a Pull Request is made against the `main` branch,
this action verifies that the `Dockerfile` can be successfully built.

_Note:_ The Docker image is **not** pushed to [DockerHub].

- [Docker Build Container GitHub Action]
- Uses: [senzing-factory/github-action-docker-buildx-build]

## docker-push-containers-to-dockerhub.yaml

After a [Semantic Version] release is created,
this action builds Docker images on multiple architectures and pushes the Docker images to [DockerHub].

- [Docker Push Containers to DockerHub GitHub Action]
- Uses: [senzing-factory/github-action-docker-buildx-build]

## golangci-lint.yaml

When a change is committed to GitHub or a Pull Request is made against the `main` branch,
this action runs [golangci-lint] to run multiple linters against the code.

- [Golangci Lint GitHub Action]
- Configuration:
- [.golangci.yaml]
- Uses:
- [actions/checkout]
- [senzing-factory/github-action-install-senzing-api]
- [actions/setup-go]
- [golangci/golangci-lint-action]

## go-proxy-pull.yaml

After a [Semantic Version] release is created,
this action expedites the Go publishing process.

- [Go Proxy Pull GitHub Action]
- Uses: [andrewslotin/go-proxy-pull-action]

## go-test-darwin.yaml

When a Pull Request is made against the `main` branch,
this action runs `go test` with coverage testing on macOS.

- [Go Test Darwin GitHub Action]
- Configuration: [testcoverage.yaml]
- Uses:
- [actions/checkout]
- [actions/setup-go]
- [gotesttools/gotestfmt-action]
- [senzing-factory/github-action-install-senzing-api]
- [actions/upload-artifact]
- [senzing-factory/build-resources/.../go-coverage.yaml]

## go-test-linux.yaml

When a change is committed to GitHub or a Pull Request is made against the `main` branch,
this action runs `go test` with coverage testing on Linux.

- [Go Test Linux GitHub Action]
- Configuration: [testcoverage.yaml]
- Uses:
- [actions/checkout]
- [actions/setup-go]
- [gotesttools/gotestfmt-action]
- [senzing-factory/github-action-install-senzing-api]
- [actions/upload-artifact]
- [senzing-factory/build-resources/.../go-coverage.yaml]

## go-test-windows.yaml

When a Pull Request is made against the `main` branch,
this action runs `go test` with coverage testing on Windows.

- [Go Test Windows GitHub Action]
- Configuration: [testcoverage.yaml]
- Uses:
- [actions/checkout]
- [actions/setup-go]
- [gotesttools/gotestfmt-action]
- [senzing-factory/github-action-install-senzing-api]
- [actions/upload-artifact]
- [senzing-factory/build-resources/.../go-coverage.yaml]

## lint-workflows.yaml

When a change is committed to GitHub or a Pull Request is made against the `main` branch,
this action runs [super-linter] to run multiple linters against the code.

- [Lint Workflows GitHub Action]
- Configuration:
- [.checkov.yaml]
- [.jscpd.json]
- [.yaml-lint.yml]
- Uses: [senzing-factory/build-resources/.../lint-workflows.yaml]

## make-go-github-file.yaml

After a [Semantic Version] release is created,
this action creates a Pull Request for an updated [github.go] file
for the **next** Semantic Version release by increasing the Semantic Version's Patch value.

- [Make Go GitHub File GitHub Action]
- Uses: [senzing-factory/build-resources/.../make-go-github-file.yaml]

## make-go-tag.yaml

After a [Semantic Version] release is created,
this action creates a tag in the form `vM.m.P` using the SHA of the `M.m.P` release.
The `v` prefix is standard usage in [Go].

- [Make Go Tag GitHub Action]
- Uses:
- [actions/checkout]
- [senzing-factory/github-action-make-go-tag]

## move-pr-to-done-dependabot.yaml

When a Pull Request is merged into the `main` branch,
this action moves the PR on the "Garage" project board to "Done".

- [Move PR to Done Dependabot GitHub Action]
- Uses: [senzing-factory/build-resources/.../move-pr-to-done-dependabot.yaml]

[.checkov.yaml]: ../linters/README.md#checkovyaml
[.golangci.yaml]: ../linters/README.md#golangciyaml
[.jscpd.json]: ../linters/README.md#jscpdjson
[.yaml-lint.yml]: ../linters/README.md#yaml-lintyml
[actions/checkout]: https://github.com/actions/checkout
[actions/setup-go]: https://github.com/actions/setup-go
[actions/upload-artifact]: https://github.com/actions/upload-artifact
[Add Labels Standardized GitHub Action]: add-labels-standardized.yaml
[Add to Project Garage Dependabot GitHub Action]: add-to-project-garage-dependabot.yaml
[Add to Project Garage GitHub Action]: add-to-project-garage.yaml
[andrewslotin/go-proxy-pull-action]: https://github.com/andrewslotin/go-proxy-pull-action
[Dependabot Approve and Merge GitHub Action]: dependabot-approve-and-merge.yaml
[Docker Build Container GitHub Action]: docker-build-container.yaml
[Docker Push Containers to DockerHub GitHub Action]: docker-push-containers-to-dockerhub.yaml
[DockerHub]: https://hub.docker.com/
[github.go]: ../../cmd/github.go
[Go Proxy Pull GitHub Action]: go-proxy-pull.yaml
[Go Test Darwin GitHub Action]: go-test-darwin.yaml
[Go Test Linux GitHub Action]: go-test-linux.yaml
[Go Test Windows GitHub Action]: go-test-windows.yaml
[Go]: https://go.dev/
[Golangci Lint GitHub Action]: golangci-lint.yaml
[golangci-lint]: https://github.com/golangci/golangci-lint
[golangci/golangci-lint-action]: https://github.com/golangci/golangci-lint-action
[gotesttools/gotestfmt-action]: https://github.com/gotesttools/gotestfmt-action
[Lint Workflows GitHub Action]: lint-workflows.yaml
[Make Go GitHub File GitHub Action]: make-go-github-file.yaml
[Make Go Tag GitHub Action]: make-go-tag.yaml
[Move PR to Done Dependabot GitHub Action]: move-pr-to-done-dependabot.yaml
[move-pr-to-done-dependabot.yaml]: move-pr-to-done-dependabotyaml
[Semantic Version]: https://semver.org/
[senzing-factory/build-resources/.../add-labels-to-issue.yaml]: https://github.com/senzing-factory/build-resources/blob/main/.github/workflows/add-labels-to-issue.yaml
[senzing-factory/build-resources/.../add-to-project-dependabot.yaml]: https://github.com/senzing-factory/build-resources/blob/main/.github/workflows/add-to-project-dependabot.yaml
[senzing-factory/build-resources/.../add-to-project.yaml]: https://github.com/senzing-factory/build-resources/blob/main/.github/workflows/add-to-project.yaml
[senzing-factory/build-resources/.../dependabot-approve-and-merge.yaml]: https://github.com/senzing-factory/build-resources/blob/main/.github/workflows/dependabot-approve-and-merge.yaml
[senzing-factory/build-resources/.../go-coverage.yaml]: https://github.com/senzing-factory/build-resources/blob/main/.github/workflows/go-coverage.yaml
[senzing-factory/build-resources/.../lint-workflows.yaml]: https://github.com/senzing-factory/build-resources/blob/main/.github/workflows/lint-workflows.yaml
[senzing-factory/build-resources/.../make-go-github-file.yaml]: https://github.com/senzing-factory/build-resources/blob/main/.github/workflows/make-go-github-file.yaml
[senzing-factory/build-resources/.../move-pr-to-done-dependabot.yaml]: https://github.com/senzing-factory/build-resources/blob/main/.github/workflows/move-pr-to-done-dependabot.yaml
[senzing-factory/github-action-docker-buildx-build]: https://github.com/senzing-factory/github-action-docker-buildx-build
[senzing-factory/github-action-install-senzing-api]: https://github.com/senzing-factory/github-action-install-senzing-api
[senzing-factory/github-action-make-go-tag]: https://github.com/senzing-factory/github-action-make-go-tag
[super-linter]: https://github.com/super-linter/super-linter
[testcoverage.yaml]: ../coverage/README.md#testcoverageyaml
2 changes: 1 addition & 1 deletion .github/workflows/add-labels-standardized.yaml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: add labels standardized
name: Add labels standardized

on:
issues:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/add-to-project-garage-dependabot.yaml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: add to project garage dependabot
name: Add to project garage dependabot

on:
pull_request:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/add-to-project-garage.yaml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: add to project garage
name: Add to project garage

on:
issues:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/dependabot-approve-and-merge.yaml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: dependabot approve and merge
name: Dependabot approve and merge

on:
pull_request:
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/docker-build-container.yaml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: docker build container
name: Docker build container

on:
pull_request:
Expand All @@ -10,7 +10,7 @@ permissions:
contents: read

jobs:
docker-build-container-amd:
docker-build-container:
runs-on: ubuntu-latest

steps:
Expand Down
Loading

0 comments on commit efadb02

Please sign in to comment.