Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

69 dockter 1 #71

Merged
merged 5 commits into from
Aug 21, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 20 additions & 0 deletions .github/coverage/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# Coverage

## testcoverage.yaml

- [testcoverage.yaml]
- Used by `coverage:` in
- [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
File renamed without changes.
6 changes: 3 additions & 3 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,10 @@

version: 2
updates:
- package-ecosystem: "github-actions"
directory: "/"
- package-ecosystem: github-actions
directory: /
schedule:
interval: "daily"
interval: daily
- package-ecosystem: gomod
directory: /
schedule:
Expand Down
3 changes: 2 additions & 1 deletion .github/linters/.checkov.yaml
Original file line number Diff line number Diff line change
@@ -1,2 +1,3 @@
quiet: true
skip-check: CKV_DOCKER_7
skip-check:
- CKV_DOCKER_7
Original file line number Diff line number Diff line change
@@ -1,9 +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
6 changes: 1 addition & 5 deletions .github/linters/.jscpd.json
Original file line number Diff line number Diff line change
@@ -1,5 +1 @@
{
"ignore": [
"**/*.go,**/go-test*.yaml"
]
}
{}
54 changes: 54 additions & 0 deletions .github/linters/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
# Linters

## .checkov.yaml

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

## .golangci.yaml

- [.golangci.yaml]
- Used by [golangci-lint.yaml]
- [golangci-lint]
- [golangci-lint configuration]

## .jscpd.json

- [.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
6 changes: 3 additions & 3 deletions .github/workflows/go-proxy-pull.yaml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: go proxy pull
name: Go proxy pull

on:
push:
Expand All @@ -13,7 +13,7 @@ jobs:
runs-on: ubuntu-latest

steps:
- name: pull new module version
- name: Pull new module version
uses: andrewslotin/go-proxy-pull-action@v1.2.0
with:
import_path: github.com/senzing-garage/explain
import_path: github.com/${{ github.repository }}
Loading