Skip to content

Conversation

@clay-lake
Copy link

Note: Currently in draft!

clay-lake and others added 14 commits August 27, 2025 10:38
* feat: add pro argument to lifecycle commands

* feat: added testing to pro argument

* feat: add ProServices class

* refactor: migrated to pro python api

* refactor(application.py): migrated validation instructions to run function

* refactor: pro services validation

* feat: testing support for pro service in existing tests

* feat: parameterized testing of Peo services validation

* refactor: fixed spelling

* refactor: fixed pyright issues, needs future rework

* refactor: address tox lint issues

* refactor: applied suggestions from PR

* fix(craft_application/commands/lifecycle.py): add argparse permanently as it is needed for SUPPRESS option

* fix(craft_application/util/pro_services.py): incorrect service name in build_service_scope

* feat: added exception for unsupported pro services

* fix(craft_application/commands/lifecycle.py): missing lines in pro help msg

* feat: add "fips" as --pro argument value

* feat: only check pro status on host in managed mode

* refactor(craft_application/application.py): update comments

* fix: linting issues found in canonical#438

* refactor: switch to pytest.raises + nullcontext instead of try/except

* feat: added validation to managed mode

* refactor: fixes for linting problems

* feat: ignore validation outside of lifecycle commands

* refactor: export ProServices, and ValidatorOptions in __init__.py

* refactor: noted ubuntu requirement in --pro arg help string

* refactor: applied black reformat
* feat: remove version pin from craft-providers for dev

* feat: add setup pro services

* feat: remove exess logging in paused block

* fix: pass pro services instance in run_managed

* test: force pro client install

* test: remove pro validation

* test: disable auto-enable services

* test: attach pro subscription

* feat: craft_application enables pro services

* fix: ignore temporary lint warning

* fix: temporarily supressing ruff warnings until pro features are merged into main

* feat: pass use_host_sources to lifecycle service

* fix(craft_application/application.py): incorrectly checking absence of pro argument
- added caching for --pro argument value on lifecycle command
- added early abort for commands reentering instances with varying --pro argument
- refactor Ubuntu Pro configuration for LXD instance
- fixed Ubuntu Pro services validation for standard builds on pro hosts
- added Exception resolutions aware of managed state
return arg_value
return self.services.get("config").get(item)

def _run_inner(self) -> int:
Copy link
Collaborator

Choose a reason for hiding this comment

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

This function has a big ol' merge issue we'll need to look at :-)

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.

2 participants