Skip to content

SRVOCF-1079: Fix Go and Python function build failures in CI - #179

Open
pmeida wants to merge 1 commit into
openshift:masterfrom
pmeida:SRVOCF-1079-update-func-go-python-push
Open

SRVOCF-1079: Fix Go and Python function build failures in CI#179
pmeida wants to merge 1 commit into
openshift:masterfrom
pmeida:SRVOCF-1079-update-func-go-python-push

Conversation

@pmeida

@pmeida pmeida commented Sep 2, 2026

Copy link
Copy Markdown

Summary

Go and Python function builds were failing in CI because the generated workflow installed func CLI knative-v1.22.0 - upstream had the default outdated. That version treats an HTTP 500 from the OCP internal registry as fatal during func push, whereas knative-v1.23.0 contains the upstream fix (knative/func#3885).

Manual tests were run across all runtimes (Go, Python, Node, Quarkus) to confirm the fix. In the future, e2e tests using act in the fake GitHub server will exercise function creation end-to-end across all runtimes, catching this class
of issue automatically even when it originates upstream.

Checklist

  • Updated docs/ARCHITECTURE.md (if there are relevant changes to our layered architecture)

Fixes SRVOCF-1079

@openshift-merge-bot

Copy link
Copy Markdown

Pipeline controller notification
This repo is configured to use the pipeline controller. Second-stage tests will be triggered either automatically or after lgtm label is added, depending on the repository configuration. The pipeline controller will automatically detect which contexts are required and will utilize /test Prow commands to trigger the second stage.

For optional jobs, comment /test ? to see a list of all defined jobs. To trigger manually all jobs from second stage use /pipeline required command.

This repository is configured in: LGTM mode

@openshift-ci-robot openshift-ci-robot added the jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. label Sep 2, 2026
@openshift-ci-robot

openshift-ci-robot commented Sep 2, 2026

Copy link
Copy Markdown

@pmeida: This pull request references SRVOCF-1079 which is a valid jira issue.

Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the bug to target the "5.1.0" version, but no target version was set.

Details

In response to this:

Summary

Go and Python function builds were failing in CI because the generated workflow
installed func CLI knative-v1.22.0. That version treats an HTTP 500 from the
OCP internal registry as fatal during func push, whereas knative-v1.23.0
contains the upstream fix (knative/func#3885).

  • Update knative.dev/func module to 0.50.1-0.20260901181239-83fe1108e6a9
    and bump k8s.io/{api,apimachinery,client-go} from 0.35.7 to 0.35.8,
    along with the broader knative ecosystem indirect deps
  • Pin FuncCliVersion: knative-v1.23.0 in the generated GitHub Actions workflow
    so it installs the fixed CLI version
  • Extract the pinned version to config.FuncCLIVersion to make future updates
    explicit and discoverable; add an assertion in the scaffold test to catch
    version mismatches on future module bumps

Manual tests were run across all runtimes (Go, Python, Node, Quarkus) to confirm
the fix. In the future, e2e tests using act in the fake GitHub server will
exercise function creation end-to-end across all runtimes, catching this class
of issue automatically even when it originates upstream.

Checklist

  • Updated docs/ARCHITECTURE.md (if there are relevant changes to our layered architecture)
  • Updated docs/TESTING.md (if there are relevant changes to our testing framework or setup)

Fixes SRVOCF-1079

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository.

@openshift-ci

openshift-ci Bot commented Sep 2, 2026

Copy link
Copy Markdown

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:
Once this PR has been reviewed and has the lgtm label, please assign therealjon for approval. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found here.

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@pmeida

pmeida commented Sep 2, 2026

Copy link
Copy Markdown
Author

/test e2e-aws

@pmeida

pmeida commented Sep 2, 2026

Copy link
Copy Markdown
Author

Sometimes, python deploys still fail at the pod level. We're digging into it to check if it is worth waiting for a fix.

UPDATE:
waiting for fix knative/func#4037

@pmeida

pmeida commented Sep 3, 2026

Copy link
Copy Markdown
Author

/hold

if the PR for switching the builder to s2i is merged first then we dont need to wait anymore

@openshift-ci openshift-ci Bot added the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Sep 3, 2026
@pmeida
pmeida force-pushed the SRVOCF-1079-update-func-go-python-push branch from db39605 to 5252da4 Compare September 3, 2026 08:45
Update knative/func to 0.50.1-0.20260901181239-83fe1108e6a9 and
bump k8s.io/* from 0.35.7 to 0.35.8. Also updates the broader
knative ecosystem (eventing, serving, networking, pkg, client)
and misc indirect deps (cert-manager, otel, gateway-api, grpc).

Pin FuncCliVersion in the CI workflow generator to match the
updated knative/func module version, giving us explicit control
over the func CLI version installed in generated CI pipelines.

Signed-off-by: Pedro Almeida <pealmeid@redhat.com>
@pmeida
pmeida force-pushed the SRVOCF-1079-update-func-go-python-push branch from 5252da4 to bf597f0 Compare September 3, 2026 15:52
@pmeida

pmeida commented Sep 3, 2026

Copy link
Copy Markdown
Author

if the PR for switching the builder to s2i is merged first then we dont need to wait anymore

updated FuncCLIVersion to knative-v1.23.3 which includes the fix: knative/func#4040

I also updated the module version. Curious fact that you dont necessarily need to update the module version to get new features, since the deploy functionality is controlled by what is installed in the workflow, controled via our introduced variable FuncCLIVersion. The module version rather only controls the use of the library in our backend which is at this moment func list and func ci.

@pmeida

pmeida commented Sep 3, 2026

Copy link
Copy Markdown
Author

/hold cancel

@openshift-ci openshift-ci Bot removed the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Sep 3, 2026
@openshift-ci

openshift-ci Bot commented Sep 3, 2026

Copy link
Copy Markdown

@pmeida: all tests passed!

Full PR test history. Your PR dashboard.

Details

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

jira/valid-reference Indicates that this PR references a valid Jira ticket of any type.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants