For quicker updates and easier, more consistent maintenance.
SHA-based versions should always be used to be sure the code we pull in
can't be changed without us, for security reasons at least. Dependabot
now supports SHA-based versions for GHAs. This patch should facilitate
their continued use.
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
Use the yamlint make target provided by Shipyard instead of a third
party GitHub action for running the same tool.
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
This adds a feature, but nothing that seems relevant to us.
github.com/tim-actions/get-pr-commits/compare/v1.1.0...v1.2.0
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
Bumps the version of markdown-link-check from 3.8.7 to 3.9.3.
Changes base image from node:alpine to node:lts-alpine.
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
Remove tests for Kubernetes 1.20, as it is End of Life and Submariner
supports all versions upstream-Kubernetes supports and no EOL versions.
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
Update the versions of Kubernetes tested in the E2E CI. Add 1.23 as the
new default for most tests, remove 1.19 as it is now EOL.
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
Per GitHub's security guidelines, GHAs should be pinned using full
length commit SHAs instead of tags.
The SHAs are of the commits currently resolved by the versions.
Even "trusted" GHAs from GitHub developers are pinned because it's
possible their repo rights could be compromised and a malicious GHA
published. These core repos are not frequently substantially updated.
Submariner-internal GHAs are left pinned at devel because we want
automatic updates from Shipyard's shared tooling.
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
As we do with the Flake Finder and other periodic jobs, skip the checks
for PR dependencies on forks.
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
Add docs generated by helm-docs for each chart. The docs will be kept
up-to-date with CI and the contents of the docs can be improved in
future changes to inline commenting.
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
The maintainers table generated by helm-docs includes a raw URL in
Markdown, which fails markdownlint. I sent a PR upstream to fix the root
of the issue, but for now we have to disable this linter rule.
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
Somehow the GitHub Pages URL we use to publish and install the charts
works to install the charts in CI but also fails with a 404 in CI.
The URL is successfully used by Shipyard here:
https://github.com/submariner-io/shipyard/blob/
33dc2ffdadf6e520a2101368f7f7456c031bace0/scripts/shared/lib/
deploy_helm#L14
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
Following the pattern from other repos, split the E2E test job into a
default job that runs a single default-only test always on PRs and a
full job that runs the full matrix when the ready-to-test label is
added.
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
The colon in these field names isn't allowed by K8s, and fails ct
linting. Use the new names from submariner-operator, which have already
been renamed to fix this.
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
This field is required by standard chart schemas. It should be v2 for
Charts that support Helm v3, as we do.
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
Use copyright notice wording required by CNCF for the maintainers field
for both Chart.yaml files.
Also fix an indentation error in one Chart.yaml file.
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
Add a template for PRs with tips and pointers to docs.
This completes a recommendation of the CII Best Practices program:
> It is SUGGESTED that this policy on adding tests (see test_policy) be
documented in the instructions for change proposals.
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
Add Submariner's CII Best Practices badge to the README.
Add badges for workflows run against merged code.
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
Use the new ability of the shared E2E GHA to configure the Kubernetes
version. Add jobs that cover the latest available patch versions
(limited by kind images) from the three most recent minor versions.
Only run one E2E job with all-default configuration per K8s version, for
some coverage with minimal overhead.
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
Periodically run E2E tests against the merged (must have passed E2E
gating) code to detect breakages due to external changes or flaky
failures.
Also supports debugging Helm-related failures in other repositories, by
verifying (or not) what's passing here.
Use the same test matrix as the current E2E job.
Mirrors similar tests in other Submariner repositories.
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
Instead of an external GitHub action, use the same markdownlint make
target from Shipyard that we use in other repos.
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
Use new GHA for reporting issues when broken links are detected. This
logic was verified to work by the frequently-run flaky test finder.
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
All tests and release work has been transferred to run on GitHub
Actions, like the rest of Subariner's repos.
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
Use the official Helm chart releasing GitHub Action instead of our
custom bash.
Travis CI can be removed after this commit, as all tests will have
equivalents for GHAs.
Closes: #71
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
It seems most CNCF projects provide a CODE-OF-CONDUCT.md file at the
root of their repositories, even if they have their Code of Conduct on
their website. To better fit into the CNCF ecosystem and be a more
welcoming project, follow that pattern.
Relates-to: submariner-io/submariner#804
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
It seems most CNCF projects provide a CONTRIBUTING.md file at the root
of their repositories, even if they have their contributing docs on
their website. To better fit into the CNCF ecosystem and be a more
welcoming project, follow that pattern.
Relates-to: submariner-io/submariner#804
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
YAML linting currently runs on Travis. Convert to a GHA, to align with
other repos and prepare for future optimizations.
Only run against values.yaml and Chart.yaml files, as is currently the
case in the Travis-driven workflow.
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
Convert MD-lint Workflow into general periodic Workflow.
Minor tweaks from refactoring in other repos.
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
Combine linting GitHub Actions into a single Workflow.
Minor updates to reflect refactoring in other repos.
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
Adds support for check-modified-files-only config, which currently isn't
honored and throws a warning.
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
Add GitHub Action validating presence of signed-off-by line to accept
the Developer Certificate of Origin, as required for CNCF.
Relates-to: submariner-io/submariner#666
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>