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

Enhance the "-o" option of "cci flow run" to accept "project__custom" attribute values #3492

Open
RupertBarrow opened this issue Jan 17, 2023 · 0 comments
Labels
enhancement Listed under "Changes" in the changelog

Comments

@RupertBarrow
Copy link

RupertBarrow commented Jan 17, 2023

Feature Type

I'm interested in functionality that solves a current problem or limitation in how CumulusCI works.

Does your feature request solve a current problem?

When running a flow from the CLI (eg cci flow run ci_feature) I can pass task options such as -o mytask__myattribute myvalue but I cannot pass project custom attributes which I want to overload, such as -o project__custom__mycustomattribute myothervalue

Describe the solution you'd like

I have an unlocked package which has 2 different installation or test procedures depending whether it is installed on our EU production org or our US production org.
I have defined a project__custom__destinationcustom attribute with values "EU" or "US".

When running cci flow run ci_feature, I would like to be able to add an option to run ci_feature for the EU or the US, i.e. :

  • cci flow run ci_feature -o project_custom_destination "US", or
  • cci flow run ci_feature -o project_custom_destination "EU"

Ultimately, I would like to run this in Github Actions and be able to run matrix tests for the EU and US destinations.

Describe alternatives you've considered

As my tests and installation procedures involve installing a dependent package which depends on the destination (EU or US), I tried to introduce a "when" clause in the project__dependencies, which is not possible either.

I then tried to pass environment variable values and read them in cumulusci.yml, without success.

I ended up creating custom flows just to run standard CumulusCI flows with a different destination (EU or US). This works, but it involves a lot of duplicating and overloading standard flows, which is much less readable, maintainable and extendable to a larger number of destinations.

Additional context

No response

@RupertBarrow RupertBarrow added the enhancement Listed under "Changes" in the changelog label Jan 17, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Listed under "Changes" in the changelog
Projects
None yet
Development

No branches or pull requests

1 participant