Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add tempest/tempestconf options #10

Merged
merged 2 commits into from
Nov 22, 2023

Conversation

lpiwowar
Copy link
Collaborator

@lpiwowar lpiwowar commented Oct 25, 2023

This patch introduces:

  • tempestconfRun section for the Tempest CR. This field allows a user to specify parameters with which discover-tempest-config should be executed inside the Tempest pod.

  • a set of parameters for the tempestRun section in the Tempest CR. These new parameters allow a user to specify aruments with which tempest command should be executed inside the Tempest pod.

The documentation is updated as well so that it demonstrates how the new fields should be utilized.

@lpiwowar
Copy link
Collaborator Author

Related patch for tcib: openstack-k8s-operators/tcib#95

Copy link
Collaborator

@arxcruz arxcruz left a comment

Choose a reason for hiding this comment

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

I am assuming we will change the container image to handle all these environments, or change the tempestconf (if it doesn't support these environments) otherwise, lgtm

@lpiwowar lpiwowar changed the title Add python-tempestconf options Add tempest/tempestconf options Oct 26, 2023
@lpiwowar lpiwowar force-pushed the lpiwowar/feature/python-tempestconf-params branch from 9af2a25 to 5cd8350 Compare October 26, 2023 14:49
@lpiwowar
Copy link
Collaborator Author

@arxcruz here is the related PR for tcib => openstack-k8s-operators/tcib#95

@lpiwowar lpiwowar force-pushed the lpiwowar/feature/python-tempestconf-params branch 8 times, most recently from 4d56182 to f6e4b44 Compare October 27, 2023 10:11
Copy link
Contributor

@afazekas afazekas left a comment

Choose a reason for hiding this comment

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

In case you are not using the generated entry point the change should remove it.

type: boolean
deployerInput:
default: ""
description: Path to deployer file
Copy link
Contributor

Choose a reason for hiding this comment

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

How you are going to map the deployer input into the container ?
Should we have predefined location and in case it present use it ?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

I think we've already discussed this. I'm adding it here for reference. The deployerInput is mapped into the tempest pod as a file using ConfigMap - here. The location of the file is set by the test-operator as well one line below.

// +kubebuilder:validation:Optional
// +kubebuilder:default:=false
// Serial run
Serial bool `json:"serial,omitempty"`
Copy link
Collaborator

Choose a reason for hiding this comment

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

aren't serial and Parallel mutually exclusive? Can it be that both will be set to "True" for example?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

It is a good point. I was thinking about the same. But I'm not sure how much should the test-operator contain the logic of using the parameters. For me it is fine that the pod fails when the user decides to use the parameters incorrectly. But I guess it is up for a discussion (@kopecmartin, @afazekas) (?)

Copy link
Collaborator

Choose a reason for hiding this comment

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

if a user passes both, --serial and --parallel, arguments, tempest will throw an error:
tempest run: error: argument --parallel: not allowed with argument --serial/-t

The way I see it, we don't need to check any argument compatibility on the operator/tempest image side - that's done by tempest itself. The operator together with the image definitions are responsible for getting the arguments from user to tempest - they are just a messenger.

Copy link
Collaborator

Choose a reason for hiding this comment

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

is there any specific reason we would want tempestconf configuration separated from tempest one? To me, it's one container thus it kind of makes sense it would be one config file. What happens when the operator will be able to run several containers (probably not at the same time) - tempest, tobiko, rally etc? We will end up with too many config files.

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Not really. To me, it seemed more readable this way but I can see your point. Do you want to update the doc so that we have a single config map?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

@kopecmartin the documentation is updated:)

@lpiwowar lpiwowar force-pushed the lpiwowar/feature/python-tempestconf-params branch from f6e4b44 to 91d0790 Compare November 10, 2023 10:45
This patch introduces tempestconfRun section for the Tempest CR.
This field allows a user to specify parameters with which
discover-tempest-config should be executed inside the Tempest pod.

The documentation is updated as well so that it demonstrates how the
new field should be utilized.
This patch introduces a set of parameters for the tempestRun section
in the Tempest CR. This field parameters allow a user to specify
parameters with which tempest command should be executed inside
the Tempest pod.

The documentation is updated as well so that it demonstrates how the
new field should be utilized.
@lpiwowar lpiwowar force-pushed the lpiwowar/feature/python-tempestconf-params branch from 91d0790 to abfc40c Compare November 10, 2023 10:50
@kopecmartin
Copy link
Collaborator

tcib PRs got merged, we can proceed with this one now

@kopecmartin
Copy link
Collaborator

/recheck

@kopecmartin
Copy link
Collaborator

/lgtm

@kopecmartin kopecmartin merged commit 4a224bc into main Nov 22, 2023
3 of 4 checks passed
@kopecmartin kopecmartin deleted the lpiwowar/feature/python-tempestconf-params branch December 20, 2023 19:57
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.

5 participants