Skip to content

Conversation

@soltysh
Copy link

@soltysh soltysh commented Feb 22, 2023

This goes in pair with openshift/origin#27570

Write-up in openshift/enhancements#1291

@openshift-ci-robot openshift-ci-robot added the backports/unvalidated-commits Indicates that not all commits come to merged upstream PRs. label Feb 22, 2023
@openshift-ci-robot
Copy link

@soltysh: the contents of this pull request could not be automatically validated.

The following commits could not be validated and must be approved by a top-level approver:

Comment /validate-backports to re-evaluate validity of the upstream PRs, for example when they are merged upstream.

@openshift-ci openshift-ci bot added the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Feb 22, 2023
@soltysh
Copy link
Author

soltysh commented Feb 22, 2023

/hold

@soltysh soltysh closed this Feb 22, 2023
@soltysh soltysh reopened this Feb 22, 2023
@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 Feb 22, 2023
@openshift-ci openshift-ci bot requested review from deads2k and sttts February 22, 2023 17:46
@openshift-ci openshift-ci bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Feb 22, 2023
@openshift-ci-robot
Copy link

@soltysh: the contents of this pull request could not be automatically validated.

The following commits could not be validated and must be approved by a top-level approver:

Comment /validate-backports to re-evaluate validity of the upstream PRs, for example when they are merged upstream.

@openshift-ci-robot
Copy link

@soltysh: the contents of this pull request could not be automatically validated.

The following commits could not be validated and must be approved by a top-level approver:

Comment /validate-backports to re-evaluate validity of the upstream PRs, for example when they are merged upstream.

@openshift-ci-robot
Copy link

@soltysh: the contents of this pull request could not be automatically validated.

The following commits could not be validated and must be approved by a top-level approver:

Comment /validate-backports to re-evaluate validity of the upstream PRs, for example when they are merged upstream.

@openshift-ci-robot
Copy link

@soltysh: the contents of this pull request could not be automatically validated.

The following commits could not be validated and must be approved by a top-level approver:

Comment /validate-backports to re-evaluate validity of the upstream PRs, for example when they are merged upstream.

@openshift-ci-robot
Copy link

@soltysh: the contents of this pull request could not be automatically validated.

The following commits could not be validated and must be approved by a top-level approver:

Comment /validate-backports to re-evaluate validity of the upstream PRs, for example when they are merged upstream.

@soltysh soltysh changed the title [WIP] POC for running external tests Add wrapper which will allow running o/k tests as external binary in origin Mar 31, 2023
@soltysh
Copy link
Author

soltysh commented Mar 31, 2023

/hold cancel

@openshift-ci openshift-ci bot removed do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. labels Mar 31, 2023
@soltysh
Copy link
Author

soltysh commented Mar 31, 2023

/remove-label backports/unvalidated-commits
/label backports/validated-commits

@openshift-ci openshift-ci bot added backports/validated-commits Indicates that all commits come to merged upstream PRs. and removed backports/unvalidated-commits Indicates that not all commits come to merged upstream PRs. labels Mar 31, 2023
@openshift-ci-robot openshift-ci-robot added the backports/unvalidated-commits Indicates that not all commits come to merged upstream PRs. label Apr 3, 2023
@openshift-ci-robot
Copy link

@soltysh: the contents of this pull request could not be automatically validated.

The following commits could not be validated and must be approved by a top-level approver:

Comment /validate-backports to re-evaluate validity of the upstream PRs, for example when they are merged upstream.

@soltysh
Copy link
Author

soltysh commented Apr 5, 2023

/retest

Copy link
Member

Choose a reason for hiding this comment

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

Which functions/commit are you referring to?

$ grep -rn "initializeTestFramework"
cmd/openshift-tests/e2e.go:529:	return initializeTestFramework(exutil.TestContext, opt.config, opt.DryRun)
cmd/openshift-tests/upgrade.go:85:		if err := initializeTestFramework(exutil.TestContext, config, testOpt.DryRun); err != nil {
cmd/openshift-tests/openshift-tests.go:487:			if err := initializeTestFramework(exutil.TestContext, config, testOpt.DryRun); err != nil {
cmd/openshift-tests/provider.go:36:func initializeTestFramework(context *e2e.TestContextType, config *exutilcluster.ClusterConfiguration, dryRun bool) error {
$ git log -1
commit bfcc30fde82a91fab1c881a836e4ad8e63c72fb5 (HEAD -> master, origin/release-4.15, origin/release-4.14, origin/master, origin/HEAD)
Merge: e63252bcd5 69f130654a
Author: OpenShift Merge Robot <[email protected]>
Date:   Thu Apr 6 03:59:44 2023 -0400

    Merge pull request #27842 from ardaguclu/oc-debug-pod-name-generation
    
    not rely on deterministic pod names in oc debug tests

Copy link
Author

@soltysh soltysh Apr 6, 2023

Choose a reason for hiding this comment

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

Copy link
Member

Choose a reason for hiding this comment

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

What's the purpose of unmarshaling into &providerInfo? I.e. reference to providerInfo instead of just providerInfo?

Copy link
Author

Choose a reason for hiding this comment

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

providerInfo in origin is populated here: https://github.com/openshift/origin/blob/bfcc30fde82a91fab1c881a836e4ad8e63c72fb5/cmd/openshift-tests/provider.go#L78, so it's done on every test invocation.

tl;dr

When you invoke openshift-tests run openshift/conformance/parallel it creates a list of tests and runs one by one invoking openshift-tests run-test. The above decodeProvider is responsible to read what the cluster looks like during that run-test invocation. Since we don't want to rely on that mechanism in here, we need to inject that value through env variable, and then decode it and use it.

Copy link
Author

Choose a reason for hiding this comment

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

I'm updating openshift/enhancements#1291 I'll add more details how this works there.

Copy link
Member

Choose a reason for hiding this comment

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

What if initializeTestFramework gets invoked multiple times?. Invoking testfiles.AddFileSource does not implement any test for duplicates.

Copy link
Author

Choose a reason for hiding this comment

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

k8s-tests run-test is invoked once per tests, see my explanation above, k8s-tests run-test is identical to openshift-tests run-test it only run one test only.

Copy link
Member

Choose a reason for hiding this comment

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

I was thinking of a case when in the future initializeTestFramework gets accidentally invoked twice.

Copy link
Member

Choose a reason for hiding this comment

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

What if there are multiple reports with report.NumAttempts > 0?

Copy link
Author

Choose a reason for hiding this comment

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

That's a copy of the mechanism as was in origin, but that's a good question, I'll make sure to look more into it and fix it.

Copy link
Member

Choose a reason for hiding this comment

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

Worth defining a function that will construct a name from the test name and the labels. In case the same naming constructions is (or will be) used some place else.

Copy link
Author

Choose a reason for hiding this comment

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

Probably, but origin will directly use the annotation mechanism, without modifying it.

Copy link
Member

Choose a reason for hiding this comment

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

The same here. Worth introducing a named function which will combine the test name and the labels into a string.

Copy link
Author

Choose a reason for hiding this comment

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

Same as above.

Copy link
Member

Choose a reason for hiding this comment

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

These are new tests? Or, the tests are expected to be prefixed with [sig-...] from now on to be disabled? Or, these will appear after the 1.27 rebase lands?

Copy link
Author

Choose a reason for hiding this comment

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

Those tests and rules are copied from origin, see Move k8s-specific rules to our fork commit in origin PR, previously we had a mix of rules in here and in origin. This PR splits the rules so they live where the test is.

@ingvagabund
Copy link
Member

/lgtm
The PR introduces a new command which is better to test up-front rather than provide fully reviewed code. Some of the code is copy-pasted from origin. Changes under openshift-hack/e2e/annotate looks ok.
/hold
Feel free to unhold. I dropped few comments. Mostly for me to better understand the flow.

@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 Apr 6, 2023
@openshift-ci openshift-ci bot added the lgtm Indicates that a PR is ready to be merged. label Apr 6, 2023
@openshift-ci
Copy link

openshift-ci bot commented Apr 6, 2023

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: ingvagabund, soltysh

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

The pull request process is described 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

@openshift-ci openshift-ci bot removed the lgtm Indicates that a PR is ready to be merged. label Apr 6, 2023
@openshift-ci
Copy link

openshift-ci bot commented Apr 6, 2023

New changes are detected. LGTM label has been removed.

@openshift-ci-robot
Copy link

@soltysh: the contents of this pull request could not be automatically validated.

The following commits could not be validated and must be approved by a top-level approver:

Comment /validate-backports to re-evaluate validity of the upstream PRs, for example when they are merged upstream.

@soltysh
Copy link
Author

soltysh commented Apr 6, 2023

/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 Apr 6, 2023
@soltysh soltysh added lgtm Indicates that a PR is ready to be merged. backports/validated-commits Indicates that all commits come to merged upstream PRs. and removed backports/unvalidated-commits Indicates that not all commits come to merged upstream PRs. labels Apr 6, 2023
@openshift-ci-robot
Copy link

/retest-required

Remaining retests: 0 against base HEAD ff8ecbc and 2 for PR HEAD f7b7abc in total

@soltysh
Copy link
Author

soltysh commented Apr 6, 2023

/test e2e-aws-ovn-crun

@soltysh
Copy link
Author

soltysh commented Apr 7, 2023

/test e2e-aws-ovn-serial

@soltysh
Copy link
Author

soltysh commented Apr 8, 2023

/test e2e-azure-ovn-upgrade

1 similar comment
@soltysh
Copy link
Author

soltysh commented Apr 10, 2023

/test e2e-azure-ovn-upgrade

@openshift-ci
Copy link

openshift-ci bot commented Apr 10, 2023

@soltysh: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name Commit Details Required Rerun command
ci/prow/e2e-agnostic-ovn-cmd f7b7abc link false /test e2e-agnostic-ovn-cmd
ci/prow/4.11-upgrade-from-stable-4.10-e2e-aws-ovn-upgrade f7b7abc link false /test 4.11-upgrade-from-stable-4.10-e2e-aws-ovn-upgrade

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/test-infra repository. I understand the commands that are listed here.

@soltysh
Copy link
Author

soltysh commented Apr 10, 2023

/test e2e-azure-ovn-upgrade

@openshift-merge-robot openshift-merge-robot merged commit bda0cb5 into openshift:master Apr 10, 2023
@soltysh soltysh deleted the test_poc branch April 11, 2023 08:18
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. backports/validated-commits Indicates that all commits come to merged upstream PRs. lgtm Indicates that a PR is ready to be merged.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants