From 7a74ed48d3f0582569875cf78102ce80d40a2edd Mon Sep 17 00:00:00 2001 From: chahatsagarmain Date: Sun, 19 Jan 2025 23:20:29 +0530 Subject: [PATCH 1/4] workflow Signed-off-by: chahatsagarmain --- .github/workflows/check-generated-diff.yml | 56 ++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 .github/workflows/check-generated-diff.yml diff --git a/.github/workflows/check-generated-diff.yml b/.github/workflows/check-generated-diff.yml new file mode 100644 index 00000000000..e2221eabb04 --- /dev/null +++ b/.github/workflows/check-generated-diff.yml @@ -0,0 +1,56 @@ +name: Validate Generated Files +on: + pull_request: + paths: + - 'backend/api/**/*.proto' + - '.github/workflows/validate-proto-gen.yml' + +jobs: + validate-generated-files: + runs-on: ubuntu-latest + strategy: + matrix: + api_version: ['v1beta1', 'v2beta1'] + fail-fast: false + + container: + image: golang:1.21 + + steps: + - uses: actions/checkout@v4 + + - name: Install Dependencies + run: | + # Go dependencies + apt-get update && apt-get install -y protobuf-compiler jq default-jdk python3 python3-pip curl + go install github.com/grpc-ecosystem/grpc-gateway/protoc-gen-grpc-gateway@latest + go install github.com/grpc-ecosystem/grpc-gateway/protoc-gen-swagger@latest + go install github.com/golang/protobuf/protoc-gen-go@latest + go install github.com/go-swagger/go-swagger/cmd/swagger@latest + + # Python dependencies + python3 -m pip install setuptools wheel + + - name: Generate Proto Files + run: | + export API_VERSION=${{ matrix.api_version }} + export PROTOCCOMPILER=protoc + export TMP_OUTPUT=/tmp + ./backend/api/hack/generate_api.sh + + - name: Generate Python Package + run: | + export API_VERSION=${{ matrix.api_version }} + ./backend/api/build_kfp_server_api_python_package.sh + + - name: Check for Changes + run: | + if [[ -n "$(git status --porcelain)" ]]; then + echo "ERROR: Generated files are out of date for API version ${{ matrix.api_version }}." + echo "Please regenerate using both generate_api.sh and build_kfp_server_api_python_package.sh" + echo "Changes found in the following files:" + git status + echo "Diff of changes:" + git diff + exit 1 + fi From 8583534bb6ea7fa933328f912bb8b4eb0c16eade Mon Sep 17 00:00:00 2001 From: chahatsagarmain Date: Sun, 19 Jan 2025 23:26:49 +0530 Subject: [PATCH 2/4] add paths Signed-off-by: chahatsagarmain --- .github/workflows/check-generated-diff.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/workflows/check-generated-diff.yml b/.github/workflows/check-generated-diff.yml index e2221eabb04..71325872213 100644 --- a/.github/workflows/check-generated-diff.yml +++ b/.github/workflows/check-generated-diff.yml @@ -4,6 +4,10 @@ on: paths: - 'backend/api/**/*.proto' - '.github/workflows/validate-proto-gen.yml' + - 'backend/api/**/go_http_client/**' + - 'backend/api/**/go_client/**' + - 'backend/api/**/python_http_client/**' + - 'backend/api/**/swagger/**' jobs: validate-generated-files: From 9deb6975f19d62a6e065103ab4c07d0a174bd747 Mon Sep 17 00:00:00 2001 From: chahatsagarmain Date: Sun, 26 Jan 2025 19:31:47 +0530 Subject: [PATCH 3/4] changes Signed-off-by: chahatsagarmain --- .github/workflows/check-generated-diff.yml | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/.github/workflows/check-generated-diff.yml b/.github/workflows/check-generated-diff.yml index 71325872213..c6973128b0c 100644 --- a/.github/workflows/check-generated-diff.yml +++ b/.github/workflows/check-generated-diff.yml @@ -3,7 +3,7 @@ on: pull_request: paths: - 'backend/api/**/*.proto' - - '.github/workflows/validate-proto-gen.yml' + - '.github/workflows/check-generated-diff.yml' - 'backend/api/**/go_http_client/**' - 'backend/api/**/go_client/**' - 'backend/api/**/python_http_client/**' @@ -16,13 +16,15 @@ jobs: matrix: api_version: ['v1beta1', 'v2beta1'] fail-fast: false - - container: - image: golang:1.21 - + steps: - uses: actions/checkout@v4 + - name: Install Go + uses: actions/setup-go@v5 + with: + go-version-file: go.mod + - name: Install Dependencies run: | # Go dependencies From 1e27bf43081127238abe1f856086213cddeee9da Mon Sep 17 00:00:00 2001 From: chahatsagarmain Date: Sun, 26 Jan 2025 22:21:14 +0530 Subject: [PATCH 4/4] fix file name Signed-off-by: chahatsagarmain --- .github/workflows/check-generated-diff.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/check-generated-diff.yml b/.github/workflows/check-generated-diff.yml index c6973128b0c..85284524e7b 100644 --- a/.github/workflows/check-generated-diff.yml +++ b/.github/workflows/check-generated-diff.yml @@ -16,7 +16,7 @@ jobs: matrix: api_version: ['v1beta1', 'v2beta1'] fail-fast: false - + steps: - uses: actions/checkout@v4 @@ -42,7 +42,7 @@ jobs: export API_VERSION=${{ matrix.api_version }} export PROTOCCOMPILER=protoc export TMP_OUTPUT=/tmp - ./backend/api/hack/generate_api.sh + ./backend/api/hack/generator.sh - name: Generate Python Package run: |