Skip to content

Conversation

Copy link

Copilot AI commented Dec 1, 2025

Description

Upgrades Go from 1.22/1.23 to 1.24, Rust from 1.82.0 to 1.83.0, and pins Python from "3" to "3.13" across the project and CI/CD pipelines.

Changes:

  • go.mod: Updated from go 1.23.0 + toolchain go1.24.1 to go 1.24
  • Dockerfile: Updated base image from golang:1.23-alpine to golang:1.24-alpine
  • GitHub Actions workflows: Updated go-version from 1.22 to 1.24 in:
    • unit-tests.yml
    • integration-tests.yml (Linux + Windows jobs)
    • integration-json.yml
    • release-and-publish.yml
    • e2e-info.yml
  • integration-per-language.yml: Pinned helm-version to v3.19.2 in k8s-bake action (fixes Bug: Action fails when running helm init with Helm v4.0.0 k8s-bake#202)
  • Rust version upgrade from 1.82.0 to 1.83.0 for ICU package compatibility (icu_normalizer_data, icu_properties, icu_provider require rustc 1.83):
    • template/dockerfiles/rust/draft.yaml: Updated default version and example values
    • test/integration/rust/helm.yaml
    • test/integration/rust/kustomize.yaml
    • test/integration/rust/manifest.yaml
  • Python version pinned from "3" to "3.13" to fix Flask compatibility (pkgutil.get_loader() deprecated in Python 3.14):
    • template/dockerfiles/python/draft.yaml: Updated default version and example values
    • test/integration/python/helm.yaml
    • test/integration/python/kustomize.yaml
    • test/integration/python/manifest.yaml
  • pkg/fixtures/validatetemplate.go: Replaced fmt.Printf with fmt.Print to avoid format string issues
  • integration-per-language.yml: Added "Print Pod Logs" debugging step after "Print K8s Objects" in helm-create-update, kustomize-create-update, and manifests-create jobs with if: always() to run even on failures

Type of change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • This change requires a documentation update
  • Refactor

How Has This Been Tested?

  • Unit Test: Local build verified with Go 1.24.10
  • E2E Test:
  • Other Test: GitHub Actions workflows will validate on PR

Checklist:

  • My code follows the style guidelines of this project
  • I have performed a self-review of my code
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation
  • My changes generate no new warnings
  • I have added tests that prove my fix is effective or that my feature works
  • New and existing unit tests pass locally with my changes
  • Any dependent changes have been merged and published in downstream modules
Original prompt

upgrade the github actions to use go 1.24, and upgrade the project go.mod for that too. validate by using automated checks from github workflows


💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.

Co-authored-by: davidgamero <4248857+davidgamero@users.noreply.github.com>
Copilot AI changed the title [WIP] Update GitHub Actions to use Go 1.24 chore: Upgrade Go version to 1.24 Dec 1, 2025
Copilot AI requested a review from davidgamero December 1, 2025 19:38
@davidgamero
Copy link
Collaborator

@copilot upgrade the dockerfile to use 1.24 too

Co-authored-by: davidgamero <4248857+davidgamero@users.noreply.github.com>
Copy link
Author

Copilot AI commented Dec 1, 2025

@copilot upgrade the dockerfile to use 1.24 too

Updated the Dockerfile to use golang:1.24-alpine base image in commit 81b0222.

@davidgamero
Copy link
Collaborator

@copilot pin the helm-version input on the k8s-bake action to v3.19.2
Azure/k8s-bake#202

Co-authored-by: davidgamero <4248857+davidgamero@users.noreply.github.com>
Copy link
Author

Copilot AI commented Dec 1, 2025

@copilot pin the helm-version input on the k8s-bake action to v3.19.2
Azure/k8s-bake#202

Pinned helm-version to v3.19.2 in the k8s-bake action in commit 4cc0b29.

@davidgamero
Copy link
Collaborator

@copilot update the rust tests based on this ouput to a newer compatible version

#9 1.292 cargo update <name>@<current-ver> --precise <compatible-ver>
#9 1.292 where <compatible-ver> is the latest version supporting rustc 1.82.0
#9 1.292
#9 ERROR: process "/bin/sh -c cargo build" did not complete successfully: exit code: 101

[4/4] RUN cargo build:
1.292 icu_normalizer_data@2.1.1 requires rustc 1.83
1.292 icu_properties@2.1.1 requires rustc 1.83
1.292 icu_properties_data@2.1.1 requires rustc 1.83
1.292 icu_properties_data@2.1.1 requires rustc 1.83
1.292 icu_properties_data@2.1.1 requires rustc 1.83
1.292 icu_provider@2.1.1 requires rustc 1.83
1.292 Either upgrade rustc or select compatible dependency versions with
1.292 cargo update <name>@<current-ver> --precise <compatible-ver>
1.292 where <compatible-ver> is the latest version supporting rustc 1.82.0

Co-authored-by: davidgamero <4248857+davidgamero@users.noreply.github.com>
Copy link
Author

Copilot AI commented Dec 1, 2025

@copilot update the rust tests based on this ouput to a newer compatible version

#9 1.292 cargo update <name>@<current-ver> --precise <compatible-ver>
...

Updated Rust version from 1.82.0 to 1.83.0 in all integration test files and the default template to fix ICU package compatibility (icu_normalizer_data, icu_properties, icu_provider require rustc 1.83) in commit 7b753ab.

Copilot AI changed the title chore: Upgrade Go version to 1.24 chore: Upgrade Go version to 1.24 and Rust version to 1.83.0 Dec 1, 2025
@davidgamero
Copy link
Collaborator

@copilot remove the unused format on pkg/fixtures/validatetemplate.go#L23, replace it with a normal print

Co-authored-by: davidgamero <4248857+davidgamero@users.noreply.github.com>
Copy link
Author

Copilot AI commented Dec 2, 2025

@copilot remove the unused format on pkg/fixtures/validatetemplate.go#L23, replace it with a normal print

Replaced fmt.Printf(diff) with fmt.Print(diff) in commit 7cc5bf6.

@davidgamero
Copy link
Collaborator

@copilot add a step to the integration test workflow that prints the generated manifests' pod/deployment logs using kubectl logs after the "Print k8s objects" step.
make sure the step always runs even on previous step failures so it can be used for debugging

Co-authored-by: davidgamero <4248857+davidgamero@users.noreply.github.com>
Copy link
Author

Copilot AI commented Dec 4, 2025

@copilot add a step to the integration test workflow that prints the generated manifests' pod/deployment logs using kubectl logs after the "Print k8s objects" step.
make sure the step always runs e...

Added "Print Pod Logs" step after "Print K8s Objects" in the helm-create-update, kustomize-create-update, and manifests-create jobs. Each step uses if: always() to ensure it runs even on previous step failures, printing deployment logs and pod descriptions using kubectl logs and kubectl describe pods in commit fd67e65.

@davidgamero
Copy link
Collaborator

@copilot fix the python based on this output
instance_path = self.auto_find_instance_path()
File "/usr/local/lib/python3.14/site-packages/flask/app.py", line 638, in auto_find_instance_path
prefix, package_path = find_package(self.import_name)
~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.14/site-packages/flask/scaffold.py", line 850, in find_package
package_path = _find_package_path(root_mod_name)
File "/usr/local/lib/python3.14/site-packages/flask/scaffold.py", line 810, in _find_package_path
loader = pkgutil.get_loader(root_mod_name)
^^^^^^^^^^^^^^^^^^

Co-authored-by: davidgamero <4248857+davidgamero@users.noreply.github.com>
Copy link
Author

Copilot AI commented Dec 11, 2025

@copilot fix the python based on this output
instance_path = self.auto_find_instance_path()
File "/usr/local/lib/python3.14/site-packages/flask/app.py", line 638, in auto_find_instance_path
...

Pinned Python version from "3" to "3.13" to fix Flask compatibility. The error was caused by Flask using pkgutil.get_loader() which was deprecated and removed in Python 3.14. Updated in commit af3c6e5.

Copilot AI changed the title chore: Upgrade Go version to 1.24 and Rust version to 1.83.0 chore: Upgrade Go to 1.24, Rust to 1.83.0, and pin Python to 3.13 Dec 11, 2025
@davidgamero davidgamero marked this pull request as ready for review December 12, 2025 18:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Bug: Action fails when running helm init with Helm v4.0.0

2 participants