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

fix: argo and step-function config param mapping #2105

Closed
wants to merge 28 commits into from

Conversation

saikonen
Copy link
Collaborator

small change to fix argo/step function handling of config parameters

@@ -476,6 +476,8 @@ def _process_parameters(self):
has_schedule = self._cron() is not None
seen = set()
for var, param in self.flow._get_parameters():
if param.IS_FLOW_PARAMETER:
Copy link
Collaborator

Choose a reason for hiding this comment

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

@saikonen can you add a comment here for why we continue? would be helpful later on

Previously, options like `branch` and `name` (injected by the project
decorator for example) could be set using `METAFLOW_BRANCH`. They now
need to be set using `METAFLOW_FLOW_BRANCH`.

This change is made to prevent clashes between regular metaflow
configuration settings and decorator level options.

No other changes are made so `METAFLOW_RUN_MAX_WORKERS` still works
as expected and `METAFLOW_PYLINT` as well.
Several fixes:
  - fixed an issue with default values
  - better handling of parameter defaults as configs
  - handle config defaults as functions
  - ConfigValue is more "dict"-like
  - made <myflow>.configs and <myflow>.steps work properly
  - renamed resolve_configs to init
Specifically:
  - moved things out of the INFO file
  - added to_dict
  - renamed user_configs to config_parameters
Specifically:
  - made config values immutable
  - cleaned up state stored in FlowSpec
  - added a test exercising configs in various places
 - Separate out value and file (so default and default_value and --config and --config-value)
 - Provide classes for step and flow config decorators with proxy objects
 - Split things into several files (it was getting too long)
 - Addressed all bugs discussed
romain-intel and others added 5 commits October 23, 2024 00:52
Fixed some typos and updated test to reflect latest code.

Fixed a few other issues:
  - fixed an issue where a config was used in different decorators
    causing it to produce an incorrect access string
  - made the decorators work with or without arguments
Will only print stuff when there is an error and will print it in a non-interleaved manner.
@saikonen saikonen force-pushed the fix/argo-config-param-mapping branch from fef6ec1 to dfe05dc Compare October 23, 2024 11:42
@saikonen saikonen changed the title fix: argo config param mapping fix: argo and step-function config param mapping Oct 23, 2024
@saikonen saikonen requested a review from romain-intel October 23, 2024 23:27
@romain-intel romain-intel force-pushed the feat/configs branch 2 times, most recently from 2bf8847 to 21f0c3a Compare November 20, 2024 03:09
@romain-intel
Copy link
Contributor

Included in #1962

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.

3 participants