ci: check plugin order #2187
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: lint | |
on: | |
push: | |
branches: [ "main", "release/**" ] | |
pull_request: | |
branches: [ "main", "release/**" ] | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref == 'refs/heads/main' && github.run_number || github.ref }} | |
cancel-in-progress: true | |
jobs: | |
lint: | |
timeout-minutes: 10 | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up Go | |
uses: actions/setup-go@v5 | |
with: | |
go-version: '1.22' | |
cache-dependency-path: "**/*.sum" | |
- name: binary-cache | |
uses: actions/cache@v4 | |
with: | |
path: ./bin | |
key: ${{ runner.os }}-${{ hashFiles('./Makefile') }} | |
- name: format go | |
run: | | |
make fmt-go | |
if ! git diff --exit-code; then | |
echo "Files are not well formatted. Please run 'make fmt-go' and commit changes." | |
exit 1 | |
fi | |
- name: format proto | |
run: | | |
make fmt-proto | |
if ! git diff --exit-code; then | |
echo "Files are not well formatted. Please run 'make fmt-proto' and commit changes." | |
exit 1 | |
fi | |
- name: check generated files | |
run: | | |
make gen-proto | |
if ! git diff --exit-code; then | |
echo "Generated files are not up-to-date. Please run 'make gen-proto' and commit changes." | |
exit 1 | |
fi | |
make gen-crd-code | |
if ! git diff --exit-code; then | |
echo "Generated files are not up-to-date. Please run 'make gen-crd-code' and commit changes." | |
exit 1 | |
fi | |
make gen-manifests | |
if ! git diff --exit-code; then | |
echo "Generated files are not up-to-date. Please run 'make gen-manifests' and commit changes." | |
exit 1 | |
fi | |
make gen-helm | |
if ! git diff --exit-code; then | |
echo "Generated files are not up-to-date. Please run 'make gen-helm' and commit changes." | |
exit 1 | |
fi | |
- name: lint go | |
run: make lint-go | |
- name: lint proto | |
run: make lint-proto | |
- name: lint spell | |
run: | | |
if ! make lint-spell; then | |
echo "Typo detected. Please run 'make fix-spell', edit the detected files and commit changes." | |
exit 1 | |
fi | |
- name: lint license | |
run: | | |
if ! make lint-license; then | |
echo "Files without license detected. Please run 'make fix-license', edit the detected files and commit changes." | |
exit 1 | |
fi | |
- name: lint editorconfig | |
run: | | |
# See https://editorconfig.org/ to know how to support editorconfig in your editor | |
make lint-editorconfig | |
- name: lint shell | |
uses: reviewdog/action-shellcheck@v1 | |
with: | |
github_token: ${{ secrets.github_token }} | |
reporter: github-pr-review | |
path: "." | |
pattern: "*.sh" | |
fail_on_error: true | |
- name: lint dockerfile | |
uses: hadolint/[email protected] | |
with: | |
dockerfile: Dockerfile | |
recursive: true | |
- name: lint dev dockerfile | |
uses: hadolint/[email protected] | |
with: | |
dockerfile: ./tools/Dockerfile.dev | |
- name: lint remain | |
run: | | |
make lint-remain | |
- name: install markdownlint cli | |
run: npm install -g markdownlint-cli | |
- name: lint markdown | |
run: make lint-markdown | |
- name: lint yaml | |
run: make lint-yaml |