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

Feature Request: Make the workflow files more compact #15004

Open
EshaanAgg opened this issue Jan 20, 2024 · 2 comments
Open

Feature Request: Make the workflow files more compact #15004

EshaanAgg opened this issue Jan 20, 2024 · 2 comments

Comments

@EshaanAgg
Copy link
Contributor

EshaanAgg commented Jan 20, 2024

Feature Description

Currently, nearly 100 workflow files are present in the repository as of now, some of which are almost similar except for a couple of parameters. Some examples of the same include:
image
image
image

We can make use of the matrix feature provided by GitHub workflows just to set the parameters of a job, and then use them. This would allow us to run multiple jobs but have a common definition for them.

Use Case(s)

IMO, this approach is more maintainable and easier to debug, as now, if we find a bug or update any workflow, we need not copy the same to all the similar ones. Also, it makes it easier to add and remove versions on which we want to run the workflows. Selective adoption of this approach can help to reduce the duplication in the codebase.

@EshaanAgg EshaanAgg added Needs Triage This issue needs to be correctly labelled and triaged Type: Feature labels Jan 20, 2024
@EshaanAgg
Copy link
Contributor Author

I would like to create a proof of concept for the cluster_end_to_end_XX workflows if the maintainers find the same to be relevant!

@frouioui frouioui added Component: Build/CI and removed Needs Triage This issue needs to be correctly labelled and triaged labels Jan 23, 2024
@frouioui
Copy link
Member

frouioui commented Jan 23, 2024

I think it could be relevant to combine certain workflow files into one. However, the matrix needs to be configured in a way that the whole workflow does not fail if a given job fails. Moreover, most of the workflow files are auto-generated with the make generate_ci_workflows command, we would need to modify ./test/ci_workflow_gen.go in a way that it is still easy for us to configure what workflows we want to run.

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

No branches or pull requests

2 participants