diff --git a/.github/workflows/go-test.yaml b/.github/workflows/go-test.yaml index 7fe478c56..debaf93d5 100644 --- a/.github/workflows/go-test.yaml +++ b/.github/workflows/go-test.yaml @@ -9,6 +9,22 @@ permissions: contents: read jobs: + uncommitted-code-check: + name: uncommitted-code-check + runs-on: ubuntu-latest + steps: + - name: Checkout the repo + uses: actions/checkout@v4 + + - name: Check generated deploy code + run: make generate-deploy + + - name: Check for uncommitted changes + run: make check-all-committed + + - name: Show the uncommitted "git diff" + if: ${{ failure() }} + run: git diff ; false go-test: name: go-test runs-on: ubuntu-latest diff --git a/.mergify.yml b/.mergify.yml index 199d511c9..0d8c9d4d6 100644 --- a/.mergify.yml +++ b/.mergify.yml @@ -34,6 +34,7 @@ queue_rules: - "status-success=golangci-lint" - "status-success=mod-check" - "status-success=lint-extras" + - "status-success=uncommitted-code-check" - "status-success=ci/centos/k8s-e2e-external-storage/1.27" - "status-success=ci/centos/k8s-e2e-external-storage/1.28" - "status-success=ci/centos/k8s-e2e-external-storage/1.29" @@ -75,6 +76,7 @@ queue_rules: - "status-success=golangci-lint" - "status-success=mod-check" - "status-success=lint-extras" + - "status-success=uncommitted-code-check" - "status-success=ci/centos/k8s-e2e-external-storage/1.27" - "status-success=ci/centos/k8s-e2e-external-storage/1.28" - "status-success=ci/centos/k8s-e2e-external-storage/1.29" @@ -190,6 +192,7 @@ pull_request_rules: - "status-success=lint-extras" - "status-success=mod-check" - "status-success=multi-arch-build" + - "status-success=uncommitted-code-check" - "status-success=ci/centos/k8s-e2e-external-storage/1.27" - "status-success=ci/centos/k8s-e2e-external-storage/1.28" - "status-success=ci/centos/k8s-e2e-external-storage/1.29" @@ -280,6 +283,7 @@ pull_request_rules: - "status-success=mod-check" - "status-success=lint-extras" - "#changes-requested-reviews-by=0" + - "status-success=uncommitted-code-check" - "status-success=ci/centos/k8s-e2e-external-storage/1.27" - "status-success=ci/centos/k8s-e2e-external-storage/1.28" - "status-success=ci/centos/k8s-e2e-external-storage/1.29" diff --git a/Makefile b/Makefile index 57024dc20..e58443f4b 100644 --- a/Makefile +++ b/Makefile @@ -179,6 +179,10 @@ generate-deploy: go mod vendor $(MAKE) -C deploy +.PHONY: check-all-committed +check-all-committed: ## Fail in case there are uncommitted changes + test -z "$(shell git status --short)" || (echo "files were modified: " ; git status --short ; false) + # # e2e testing by compiling e2e.test in case it does not exist and running the # executable. The e2e.test executable is not checked as a dependency in the