[SRU] ubuntu-advantage-tools (29.4 -> 30) Xenial, Bionic, Focal, Jammy, Lunar, Mantic
Affects | Status | Importance | Assigned to | Milestone | ||
---|---|---|---|---|---|---|
ubuntu-advantage-tools (Ubuntu) | Status tracked in Noble | |||||
Xenial |
Fix Released
|
Undecided
|
Unassigned | |||
Bionic |
Fix Released
|
Undecided
|
Unassigned | |||
Focal |
Fix Released
|
Undecided
|
Unassigned | |||
Jammy |
Fix Released
|
Undecided
|
Unassigned | |||
Lunar |
Fix Released
|
Undecided
|
Unassigned | |||
Mantic |
Fix Released
|
Undecided
|
Unassigned | |||
Noble |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
[Impact]
This is for the release of the latest upstream version of the Ubuntu Pro Client, which contain new features that are desirable on all releases. 30 has several notable features:
- Add internationaliz
+ now our CLI interaction can be translated, and the first pt_BR translations are started
+ We have a new binary shipped from the u-a-t source, to bring the translation files (ubuntu-
- Added two new api endpoints:
+ u.pro.security.
+ u.pro.security.
- Improve the client performance by implementing apt operations with apt_pkg
- Improve performance when enabling services by only updating the service's respective apt list
- pin the esm package repositories to a higher version than the archive, so the packages would be preferred
- add --purge option to the disable operation, so users can remove packages related to services when disabling those
- add the fips-preview entitlement
- remove an implicit dependency on python3-systemd by changing the type of our systemd service
See the changelog entry below for a full list of changes and bugs.
[Test Case]
The following development and SRU process was followed:
https:/
The ubuntu-
[Regression Potential]
We are reintroducing the ESM pins, so the regression potential listed in https:/
We are adding translation support for this package in a separate recommended package, and not using the language packs. If we make a mistake when implementing that feature, people may get no translations. This would not be a regression, given that translations don't really exist now, and we now have internationaliz
The pt_BR translations were done by developers in our team, and may be wrong or incoherent. We did a throughout review on the sentences we translated, and can always improve it in next releases. The translation is partial, so there is intent to fill the remaining sentences in the future.
Changes like the apt_pkg one or the purge flag may be technically more delicate, but the integration test suite is covering the behavior to mitigate possible problems that would arise with implementation.
We are changing our ubuntu-
[Changelog]
ubuntu-
* d/control:
- add python3-apt as a build dependency
- add the new ubuntu-
- recommend installing ubuntu-
* d/po/*:
- Makefile to build localization files to debian/
- update POTFILES.in to cover all translatable messages
- remove old unused pot file
- add new complete pot file for "ubuntu-pro" domain
- add first Brazilian Portuguese translations
* d/rules:
- add step to build the translations
* d/tests/control:
- mark autopkgtests as superficial (GH: #2609)
* d/ubuntu-
- remove /etc/ubuntu-
* d/ubuntu-
- add install file for the new binary package
* New upstream release 30 (LP: #2038461)
- api:
+ add new backwards compatible plan steps to the v1 fix plan endpoints
+ improve information returned from the fix plan endpoints
+ new endpoint: u.pro.security.
+ new endpoint: u.pro.security.
- apt: improve performance and consistency by refactoring the code to use
the apt_pkg module
- auto-attach: add newline to the MOTD message to separate it from other
MOTD messages
- contract: send information about variants to the contracts server
- enable: update only service specific apt sources when enabling a service
(GH: #1311) (GH: #1482)
- esm: create static files to pin packages from esm-infra and esm-apps with
higher priority (GH: #2580)
- disable:
+ (experimental) add the --purge flag to the disable command, so users
can remove all service related packages when disabling a service
+ show extra warnings when kernels are involved in the purge operation
- files: Reduce race window when creating new files (LP: #2024204)
- fips: add support to Jammy to prepare for when it is available
- fips-preview:
+ add fips-preview as a new entitlement
- github: add issue templates (GH: #2646)
- internationaliz
+ add general internationaliz
+ add initial sentence set for Brazilian Portuguese
- logging:
+ add journald logging for the daemon and systemd timer
+ remove daemon and timer log files
+ standardize the logging calls through the codebase (GH: #2632)
- systemd: change ubuntu-
dropping the dependency on python3-systemd (LP: #2038417) (GH: #2692)
- tests:
+ add scenarios where cloud-init is present but disabled (LP: #1938208)
+ change 'permission' to 'priority' when checking apt priority in tests
(GH: #2719)
Related branches
- Bryce Harrington (community): Approve
- Andreas Hasenack: Approve
- Canonical Server Reporter: Pending requested
-
Diff: 36851 lines (+18318/-4441)220 files modified.github/ISSUE_TEMPLATE/bug_report.md (+35/-0)
.github/ISSUE_TEMPLATE/feature_request.md (+23/-0)
.github/ISSUE_TEMPLATE/question.md (+18/-0)
.github/workflows/ci-base.yaml (+6/-2)
apport/source_ubuntu-advantage-tools.py (+1/-4)
apt-hook/json-hook-main.cc (+4/-0)
apt-hook/json-hook.cc (+285/-77)
apt-hook/json-hook.hh (+3/-3)
debian/changelog (+72/-0)
debian/control (+9/-0)
debian/po/Makefile (+10/-0)
debian/po/POTFILES.in (+2/-0)
debian/po/pt_BR.po (+3428/-0)
debian/po/ubuntu-pro.pot (+3056/-0)
debian/rules (+1/-0)
debian/tests/control (+1/-1)
debian/ubuntu-advantage-tools.maintscript (+1/-0)
debian/ubuntu-pro-client-l10n.install (+1/-0)
dev/null (+0/-10)
features/airgapped.feature (+3/-3)
features/anbox.feature (+8/-10)
features/api.feature (+20/-18)
features/api_fix_execute.feature (+273/-0)
features/api_fix_plan.feature (+42/-26)
features/api_magic_attach.feature (+1/-1)
features/api_packages.feature (+1/-1)
features/api_unattended_upgrades.feature (+6/-0)
features/apt_messages.feature (+25/-25)
features/attach_invalidtoken.feature (+3/-3)
features/attach_validtoken.feature (+10/-7)
features/attached_commands.feature (+435/-103)
features/attached_enable.feature (+78/-65)
features/attached_status.feature (+18/-12)
features/cloud.py (+11/-2)
features/cloud_pro_clone.feature (+1/-0)
features/collect_logs.feature (+4/-12)
features/daemon.feature (+37/-36)
features/docker.feature (+6/-6)
features/enable_fips_cloud.feature (+55/-4)
features/enable_fips_container.feature (+4/-3)
features/enable_fips_pro.feature (+9/-9)
features/enable_fips_vm.feature (+70/-13)
features/environment.py (+7/-0)
features/fix.feature (+15/-9)
features/i18n.feature (+84/-4)
features/landscape.feature (+5/-11)
features/livepatch.feature (+61/-0)
features/motd_messages.feature (+12/-17)
features/proxy_config.feature (+1/-1)
features/realtime_kernel.feature (+13/-10)
features/retry_auto_attach.feature (+2/-2)
features/schemas/cve_fix_execute.json (+73/-0)
features/schemas/cve_fix_plan.json (+12/-0)
features/schemas/ua_status.json (+0/-6)
features/schemas/usn_fix_execute.json (+89/-0)
features/schemas/usn_fix_plan.json (+28/-2)
features/steps/machines.py (+11/-0)
features/steps/packages.py (+19/-4)
features/steps/ubuntu_advantage_tools.py (+11/-4)
features/ubuntu_pro.feature (+72/-63)
features/ubuntu_pro_fips.feature (+59/-55)
features/ubuntu_upgrade.feature (+3/-3)
features/ubuntu_upgrade_unattached.feature (+2/-2)
features/unattached_commands.feature (+20/-21)
features/unattached_status.feature (+69/-43)
features/util.py (+77/-5)
integration-requirements.txt (+1/-1)
lib/daemon.py (+10/-39)
lib/migrate_user_config.py (+0/-2)
lib/patch_status_json.py (+4/-6)
lib/reboot_cmds.py (+5/-11)
lib/timer.py (+17/-28)
lib/upgrade_lts_contract.py (+1/-1)
preferences.d/ubuntu-pro-esm-apps (+11/-0)
preferences.d/ubuntu-pro-esm-infra (+10/-0)
setup.py (+2/-1)
sru/release-30/test-status-output-when-translated.sh (+94/-0)
systemd/ubuntu-advantage.service (+0/-2)
test-requirements.txt (+5/-0)
tools/README.md (+0/-1)
tools/create-lp-release-branches.sh (+1/-1)
tools/test-in-lxd.sh (+6/-3)
tools/test-in-multipass.sh (+10/-5)
tools/update-pos.sh (+9/-0)
tox.ini (+4/-35)
uaclient-devel.conf (+0/-2)
uaclient/actions.py (+10/-45)
uaclient/api/api.py (+18/-47)
uaclient/api/errors.py (+27/-15)
uaclient/api/exceptions.py (+5/-9)
uaclient/api/tests/test_api.py (+44/-46)
uaclient/api/tests/test_api_u_pro_attach_auto_full_auto_attach_v1.py (+24/-14)
uaclient/api/tests/test_api_u_pro_attach_auto_should_auto_attach.py (+4/-4)
uaclient/api/tests/test_api_u_pro_packages_updates.py (+1/-1)
uaclient/api/tests/test_api_u_pro_security_fix_execute.py (+345/-0)
uaclient/api/tests/test_api_u_pro_version.py (+5/-5)
uaclient/api/tests/test_api_u_unattended_upgrades_status_v1.py (+28/-0)
uaclient/api/tests/test_fix.py (+356/-277)
uaclient/api/u/pro/attach/auto/full_auto_attach/v1.py (+4/-3)
uaclient/api/u/pro/packages/updates/v1.py (+2/-2)
uaclient/api/u/pro/security/fix/__init__.py (+302/-94)
uaclient/api/u/pro/security/fix/_common/__init__.py (+47/-0)
uaclient/api/u/pro/security/fix/_common/execute/__init__.py (+0/-0)
uaclient/api/u/pro/security/fix/_common/execute/v1.py (+273/-0)
uaclient/api/u/pro/security/fix/cve/execute/__init__.py (+0/-0)
uaclient/api/u/pro/security/fix/cve/execute/v1.py (+77/-0)
uaclient/api/u/pro/security/fix/cve/plan/v1.py (+2/-23)
uaclient/api/u/pro/security/fix/usn/execute/__init__.py (+0/-0)
uaclient/api/u/pro/security/fix/usn/execute/v1.py (+108/-0)
uaclient/api/u/pro/security/fix/usn/plan/v1.py (+2/-23)
uaclient/api/u/pro/version/v1.py (+3/-2)
uaclient/api/u/unattended_upgrades/status/v1.py (+22/-3)
uaclient/apt.py (+292/-111)
uaclient/apt_news.py (+8/-5)
uaclient/cli/__init__.py (+202/-473)
uaclient/cli/constants.py (+8/-0)
uaclient/cli/fix.py (+921/-0)
uaclient/cli/tests/test_cli.py (+88/-92)
uaclient/cli/tests/test_cli_api.py (+4/-3)
uaclient/cli/tests/test_cli_attach.py (+41/-33)
uaclient/cli/tests/test_cli_auto_attach.py (+9/-8)
uaclient/cli/tests/test_cli_collect_logs.py (+16/-9)
uaclient/cli/tests/test_cli_config.py (+4/-3)
uaclient/cli/tests/test_cli_config_set.py (+6/-4)
uaclient/cli/tests/test_cli_config_unset.py (+1/-0)
uaclient/cli/tests/test_cli_detach.py (+9/-4)
uaclient/cli/tests/test_cli_disable.py (+72/-17)
uaclient/cli/tests/test_cli_enable.py (+77/-29)
uaclient/cli/tests/test_cli_fix.py (+10/-13)
uaclient/cli/tests/test_cli_refresh.py (+6/-6)
uaclient/cli/tests/test_cli_security_status.py (+2/-1)
uaclient/cli/tests/test_cli_status.py (+53/-42)
uaclient/clouds/aws.py (+12/-11)
uaclient/clouds/azure.py (+1/-1)
uaclient/clouds/gcp.py (+6/-9)
uaclient/clouds/identity.py (+10/-6)
uaclient/clouds/tests/test_aws.py (+7/-7)
uaclient/clouds/tests/test_azure.py (+3/-3)
uaclient/clouds/tests/test_gcp.py (+5/-9)
uaclient/clouds/tests/test_identity.py (+1/-1)
uaclient/config.py (+25/-36)
uaclient/conftest.py (+14/-14)
uaclient/contract.py (+67/-70)
uaclient/daemon/__init__.py (+2/-2)
uaclient/daemon/poll_for_pro_license.py (+2/-3)
uaclient/daemon/retry_auto_attach.py (+10/-6)
uaclient/daemon/tests/test_daemon.py (+2/-2)
uaclient/daemon/tests/test_poll_for_pro_license.py (+7/-6)
uaclient/daemon/tests/test_retry_auto_attach.py (+13/-7)
uaclient/data_types.py (+45/-41)
uaclient/defaults.py (+3/-15)
uaclient/entitlements/__init__.py (+7/-6)
uaclient/entitlements/anbox.py (+6/-4)
uaclient/entitlements/base.py (+96/-45)
uaclient/entitlements/cc.py (+8/-12)
uaclient/entitlements/cis.py (+12/-22)
uaclient/entitlements/entitlement_status.py (+2/-0)
uaclient/entitlements/esm.py (+8/-6)
uaclient/entitlements/fips.py (+99/-29)
uaclient/entitlements/landscape.py (+20/-18)
uaclient/entitlements/livepatch.py (+47/-17)
uaclient/entitlements/realtime.py (+21/-15)
uaclient/entitlements/repo.py (+215/-44)
uaclient/entitlements/ros.py (+10/-5)
uaclient/entitlements/tests/conftest.py (+1/-0)
uaclient/entitlements/tests/test_base.py (+45/-12)
uaclient/entitlements/tests/test_cc.py (+7/-9)
uaclient/entitlements/tests/test_cis.py (+10/-10)
uaclient/entitlements/tests/test_entitlements.py (+3/-1)
uaclient/entitlements/tests/test_fips.py (+58/-30)
uaclient/entitlements/tests/test_livepatch.py (+113/-13)
uaclient/entitlements/tests/test_repo.py (+311/-20)
uaclient/exceptions.py (+383/-374)
uaclient/files/data_types.py (+2/-2)
uaclient/files/files.py (+18/-28)
uaclient/files/notices.py (+15/-13)
uaclient/files/tests/test_notices.py (+4/-2)
uaclient/gpg.py (+2/-4)
uaclient/http/__init__.py (+20/-23)
uaclient/http/tests/test_http.py (+7/-11)
uaclient/livepatch.py (+18/-30)
uaclient/lock.py (+2/-4)
uaclient/log.py (+9/-0)
uaclient/messages/__init__.py (+2524/-0)
uaclient/messages/urls.py (+48/-0)
uaclient/security.py (+128/-119)
uaclient/security_status.py (+98/-106)
uaclient/snap.py (+26/-16)
uaclient/status.py (+102/-60)
uaclient/system.py (+57/-27)
uaclient/testing/fakes.py (+5/-1)
uaclient/tests/test_actions.py (+10/-75)
uaclient/tests/test_apt.py (+343/-67)
uaclient/tests/test_apt_news.py (+4/-4)
uaclient/tests/test_config.py (+11/-58)
uaclient/tests/test_contract.py (+68/-49)
uaclient/tests/test_data_types.py (+112/-51)
uaclient/tests/test_esm_cache.py (+6/-6)
uaclient/tests/test_gpg.py (+2/-2)
uaclient/tests/test_lib_auto_attach.py (+1/-1)
uaclient/tests/test_lock.py (+14/-6)
uaclient/tests/test_reboot_cmds.py (+10/-4)
uaclient/tests/test_security.py (+40/-44)
uaclient/tests/test_security_status.py (+48/-77)
uaclient/tests/test_snap.py (+44/-1)
uaclient/tests/test_status.py (+3/-3)
uaclient/tests/test_system.py (+106/-8)
uaclient/tests/test_ua_timer.py (+3/-1)
uaclient/tests/test_upgrade_lts_contract.py (+13/-19)
uaclient/tests/test_util.py (+4/-92)
uaclient/tests/test_version.py (+16/-22)
uaclient/timer/__init__.py (+2/-2)
uaclient/timer/tests/test_update_messaging.py (+18/-14)
uaclient/timer/update_contract_info.py (+6/-6)
uaclient/timer/update_messaging.py (+12/-7)
uaclient/upgrade_lts_contract.py (+21/-15)
uaclient/util.py (+31/-70)
uaclient/version.py (+8/-12)
uaclient/yaml.py (+9/-6)
ubuntu-advantage.1 (+2/-10)
description: | updated |
description: | updated |
description: | updated |
description: | updated |
Changed in ubuntu-advantage-tools (Ubuntu Noble): | |
status: | New → In Progress |
Changed in ubuntu-advantage-tools (Ubuntu Mantic): | |
status: | New → In Progress |
Changed in ubuntu-advantage-tools (Ubuntu Lunar): | |
status: | New → In Progress |
Changed in ubuntu-advantage-tools (Ubuntu Jammy): | |
status: | New → In Progress |
Changed in ubuntu-advantage-tools (Ubuntu Focal): | |
status: | New → In Progress |
Changed in ubuntu-advantage-tools (Ubuntu Bionic): | |
status: | New → In Progress |
Changed in ubuntu-advantage-tools (Ubuntu Xenial): | |
status: | New → Fix Committed |
status: | Fix Committed → In Progress |
Hello Renan, or anyone else affected,
Accepted ubuntu- advantage- tools into mantic-proposed. The package will build now and be available at https:/ /launchpad. net/ubuntu/ +source/ ubuntu- advantage- tools/30~ 23.10 in a few hours, and then in the -proposed repository.
Please help us by testing this new package. See https:/ /wiki.ubuntu. com/Testing/ EnableProposed for documentation on how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.
If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, what testing has been performed on the package and change the tag from verification- needed- mantic to verification- done-mantic. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification- failed- mantic. In either case, without details of your testing we will not be able to proceed.
Further information regarding the verification process can be found at https:/ /wiki.ubuntu. com/QATeam/ PerformingSRUVe rification . Thank you in advance for helping!
N.B. The updated package will be released to -updates after the bug(s) fixed by this package have been verified and the package has been in -proposed for a minimum of 7 days.