Skip to content

Conversation

@lkingland
Copy link
Member

@lkingland lkingland commented Jul 15, 2025

Unifies E2E tests and workflows

/kind cleanup

Primary Changes:

  • Merges all E2E scenarios (test/*) into a single e2e/e2e_test.go which is executable locally during development.
  • Workflows mostly consolidated into test-and-publish.yaml.
  • make test-full target runs all tests (unit, integration, E2E).
  • Extracts logic from workflows into scripts or make targets
  • etc. etc. See the e2e/README.md

Notable Name Changes: the scripts in ./hack were renamed to be simple nouns:
hack/cluster.sh
hack/binaries.sh
hack/images.sh
hack/gitlab.sh

@knative-prow
Copy link

knative-prow bot commented Jul 15, 2025

Skipping CI for Draft Pull Request.
If you want CI signal for your change, please convert it to an actual PR.
You can still manually trigger a test run with /test all

@knative-prow knative-prow bot added do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. kind/cleanup Categorizes issue or PR as related to cleaning up code, process, or technical debt. labels Jul 15, 2025
@knative-prow knative-prow bot requested review from dsimansk and jrangelramos July 15, 2025 11:26
@knative-prow
Copy link

knative-prow bot commented Jul 15, 2025

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: lkingland

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

The pull request process is described here

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

@knative-prow knative-prow bot added approved Indicates a PR has been approved by an approver from all required OWNERS files. size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files. labels Jul 15, 2025
@lkingland lkingland force-pushed the push-tzvwvvkmvwtq branch from 94c8089 to 7512faf Compare July 15, 2025 11:30
@codecov
Copy link

codecov bot commented Jul 15, 2025

Codecov Report

❌ Patch coverage is 42.85714% with 4 lines in your changes missing coverage. Please review.
✅ Project coverage is 54.75%. Comparing base (0a86ac4) to head (c069c6f).

Files with missing lines Patch % Lines
pkg/pipelines/tekton/validate.go 33.33% 2 Missing ⚠️
cmd/completion_util.go 0.00% 1 Missing ⚠️
cmd/describe.go 50.00% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #2938      +/-   ##
==========================================
- Coverage   59.37%   54.75%   -4.63%     
==========================================
  Files         134      134              
  Lines       13500    13494       -6     
==========================================
- Hits         8016     7389     -627     
- Misses       4540     5198     +658     
+ Partials      944      907      -37     
Flag Coverage Δ
e2e-tests ?
integration 17.41% <0.00%> (?)
integration-tests ?
unit macos-latest 45.43% <42.85%> (?)
unit ubuntu-latest 46.45% <42.85%> (?)
unit windows-latest 45.45% <42.85%> (?)
unit-tests ?

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@lkingland lkingland force-pushed the push-tzvwvvkmvwtq branch 4 times, most recently from b68e41f to e398349 Compare July 15, 2025 11:47
@lkingland lkingland marked this pull request as ready for review July 22, 2025 02:14
@knative-prow knative-prow bot removed the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Jul 22, 2025
@knative-prow knative-prow bot requested a review from nainaz July 22, 2025 02:14
@lkingland lkingland force-pushed the push-tzvwvvkmvwtq branch 13 times, most recently from 5600e62 to e2184c3 Compare July 22, 2025 06:40
@knative-prow-robot knative-prow-robot removed the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Oct 21, 2025
@lkingland lkingland force-pushed the push-tzvwvvkmvwtq branch 6 times, most recently from 4ac8eab to c6b2ede Compare October 27, 2025 05:25
@knative-prow-robot knative-prow-robot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Oct 27, 2025
@knative-prow-robot knative-prow-robot removed the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Oct 27, 2025
@lkingland lkingland force-pushed the push-tzvwvvkmvwtq branch 2 times, most recently from 9ac60f0 to b48eef4 Compare October 29, 2025 08:39
@lkingland lkingland marked this pull request as ready for review October 29, 2025 09:03
@knative-prow knative-prow bot removed the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Oct 29, 2025
@lkingland
Copy link
Member Author

It ain't perfect, but I would prefer we merge this sooner rather than later as folks need this, and we can open new PRs for any niggling issues.


func (i info) XML(w io.Writer) error {
return xml.NewEncoder(w).Encode(i)
return errors.New("XML export not currently supported")
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

XML breakes trying to export anonymous structs. And XML is evil.

Comment on lines -12 to -13
* `FUNC_REPO_REF` affects which github repo will be used to fetch tekton tasks for on cluster build. Default: `knative/func`.
* `FUNC_REPO_BRANCH_REF` affects which github branch will be used to fetch tekton tasks for on cluster build. Default: `main`.
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Apparently these are completely unused.


.PHONY: update-runtime-python
update-runtime-python:
# Nothing to update for Python
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Explicitly stating why it's not here.


.PHONY: check
check: $(BIN_GOLANGCI_LINT) ## Check code quality (lint)
check: check-lint check-goimports check-misspell check-whitespace check-eof ## Check code quality (comprehensive)
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Adds checkers to be as close to those from knative automations such that running make check locally is a reasonable approximation.

STERN=$(find_executable "stern")
KN=$(find_executable "kn")
JQ=$(find_executable "jq")
KUBECTL=$(find_executable "kubectl" || true)
Copy link
Member Author

@lkingland lkingland Oct 29, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

not all scripts require all binaries, so this is opportunistic; allowing failure to happen at time of use if not found.

@lkingland lkingland force-pushed the push-tzvwvvkmvwtq branch 5 times, most recently from 05ad84d to 4cc4d72 Compare October 29, 2025 11:03
@lkingland lkingland force-pushed the push-tzvwvvkmvwtq branch 2 times, most recently from 4052fcd to 79ef180 Compare October 29, 2025 11:14
install git server in workflow

disable dapr service-to-service test

only run private repo test on Linux

test full script etc

test failure fixes

remote s2i builder test full stuffs

python functions

fixes

update func-python

e2e wait by duration

wait options with extended timeouts for java runtimes

import common in git-server.sh

disable make buffering

import common to dump-logs.sh

update dump-logs.sh to handle missing binaries

update common.sh to be resilient to missing binaries

fix: gitlab tests (retries and skip in CI)

full test target - script

reenable http default matrix template

support user vs system config in registry setup script

e2e_test.go increase default timeout

full test target

add CleanFS option

unified github workflow

renamed env var

standardized envs for int tests

dedicated Podman scripts

integration test name prefix

registry.sh skip docker restart

add missing io import to gitlab_int_test.go

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

Labels

approved Indicates a PR has been approved by an approver from all required OWNERS files. kind/cleanup Categorizes issue or PR as related to cleaning up code, process, or technical debt. size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants