Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Conversation

@douglasjacobsen
Copy link
Collaborator

This merge represents major new functionality. This adds support for modifiers to Ramble.

Modifiers are classes that are allowed to modify various aspects of ramble experiments. These can inject commands, change variable definitions, add figures of merit, and many other things.

Modifiers are implemented similar to application definitions. This merge adds support for modifier repositories, which can live next to application repositories, or in independent locations.

Modifier application is controlled through the ramble.yaml configuration file, and documentation describing this is added.

@douglasjacobsen douglasjacobsen added the enhancement New feature or request label May 24, 2023
@douglasjacobsen
Copy link
Collaborator Author

Once again, sorry for how big this PR is... it's hard to split this functionality up into smaller PRs, since it touches a lot of the code.

It should be noted that this PR will conflict with #131

@douglasjacobsen douglasjacobsen force-pushed the mod_language branch 11 times, most recently from fce2033 to 00d7bb1 Compare May 30, 2023 18:13
@dodecatheon
Copy link
Contributor

Once again, sorry for how big this PR is... it's hard to split this functionality up into smaller PRs, since it touches a lot of the code.

It should be noted that this PR will conflict with #131

#131 is ready for review and conflict-resolution.

@douglasjacobsen
Copy link
Collaborator Author

OK, Merge conflicts should have been dealt with, and this PR is now ready to review / merge.

dodecatheon
dodecatheon previously approved these changes Jun 1, 2023
Copy link
Contributor

@dodecatheon dodecatheon left a comment

Choose a reason for hiding this comment

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

LGTM

Copy link
Collaborator

@rfbgo rfbgo left a comment

Choose a reason for hiding this comment

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

I like the implementation and the feature will be super powerful!

Just wanted to release a few comments that caught my eye during the first scan through, before I sit down and play with it next week

Copy link
Collaborator

@rfbgo rfbgo left a comment

Choose a reason for hiding this comment

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

LGTM! Few questions about the design

rfbgo
rfbgo previously approved these changes Jun 8, 2023
@douglasjacobsen douglasjacobsen dismissed stale reviews from rfbgo and dodecatheon via 12d9006 June 8, 2023 17:43
@douglasjacobsen douglasjacobsen force-pushed the mod_language branch 2 times, most recently from 21eef66 to f6b41a8 Compare June 8, 2023 17:46
This commit updates the repository methods to include a modifier type in
addition to the default object and application types.

Additionally, it generalizes some of the type specific methods, updates
references, adds a schema for a modifier_repos file, and updates tests
to have modifier and application specific mock functionality.
This commit adds the schema definition for how modifiers are defined,
and adds the plumbing to propagate modifiers from their configs (in
workspace config or the config section) into the application instance.

Nothing happens with modifiers yet, aside from their definitions being
set correctly.
This commit adds the ability for modifiers to modify applications
This commit implements the modifier functionality. Now modifiers are
applied to application instances, and correctly modify the various
aspects of the instance.

Workspace concretization is updated to allow modifiers to be concretized
while experiments are concretized.
This commit adds a `ramble mods` command for interacting with modifiers.

Additionally, this unifies some of the shared backends for info and list
commands for applications and modifiers.
This commit adds tests for modifier functionality, the mods command, and adds tags
and descriptions to existing modifiers.
Copy link
Collaborator

@rfbgo rfbgo left a comment

Choose a reason for hiding this comment

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

Thanks for fixing the conflict :)

@rfbgo rfbgo merged commit 9678f56 into GoogleCloudPlatform:develop Jun 9, 2023
@douglasjacobsen douglasjacobsen deleted the mod_language branch June 9, 2023 16:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants