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

Pro release v32 #3052

Closed
wants to merge 240 commits into from
Closed

Pro release v32 #3052

wants to merge 240 commits into from

Conversation

lucasmoura
Copy link
Contributor

Why is this needed?

Pro release version v32

orndorffgrant and others added 30 commits March 13, 2024 12:53
Remove the new ubuntu-pro-client package on the docker build recipe.
Signed-off-by: Renan Rodrigo <renanrodrigo@canonical.com>
Signed-off-by: Renan Rodrigo <renanrodrigo@canonical.com>
cloud-init may take a little while to run, and we take this little time
before writing the 'mode' to journald

Signed-off-by: Renan Rodrigo <renanrodrigo@canonical.com>
When creating the fix plan through the API, we will now
update the ESM cache if that is needed to correctly verify
if the fixed packages are available. We have also created a new
warning for the case where we fail to update the ESM cache.
If we detect on the plan API output that the ESM cache
could not be updated, we will now warn the user about this
situation.

Fixes: #2841
Message for Unexpected errors is now a formatted string that takes
in an error message so that the original error message is no longer
hidden from the end user.

Fixes: #2600
added util function to get proper log path based on if currently root or not
Removes trailing and connection slashes from paths, and everything reads
more pythonic

Fixes: #2799

Signed-off-by: Renan Rodrigo <renanrodrigo@canonical.com>
This change adds a new message prompting the user to confirm if enabling
fips downgrades the kernel.
We are now adding the necessary infrastructure to run
some of our integration tests on WSL.
Add wsl as a machine_type for some of our integration tests
Due to the WSL infrastructure, we are now directly
importing some paramiko logic. Because of that, we need
its types for mypy analysis
On the base entitlement, we were incorrectly checking the return
of can_disable. We are now updating the code to properly check that
while also fixing related logs
Update base entitlement tests by using the already
defined entitlement_factory fixture

Fixes: #2857
We are testing functionality from the Base entitlement class
on other entitlements test modules. We are now moving all tests related
to the Base entitlement class into the test_base file
When checking to see if we have disabled an incompatible service,
we check if the return of the disable method is False. However,
that method now returns a tuple instead. We are fixing this issue
on the handle_incompatible_services code
Move RepoEntitlement related tests to the test_repo file,
to guarantee that we are only testing service specific logic
on each service test file
When enabling a repo service, we check to see if it apt url is present
at the output of apt-cache policy. We are updating this check to also
check if any suite of the service also appear together with the apt url.
We need this for some setups where the service share the same apt url.

LP: #2031192
Since airgapped users will configure their contract server
response, they might that make a mistake of configuring some
entitlements to have the same directives. If that happens,
we will alert the user during the attach operation
This way we don't need explicit steps to update the apt data, making
the apt update calls in behave tests happen only when really testing
something.

Also fixes a bug where we can't install packages if we forget to update.

Fixes: #2859

Signed-off-by: Renan Rodrigo <renanrodrigo@canonical.com>
In #cloud-config user-data, cloud-init will be deprecating the
ubuntu_advantage key in favor of ubuntu_pro to align with the
current product naming and branding.

To avoid tightly coupling ubuntu-pro-client with cloud-init
releases, add support for the new 'ubuntu_pro' config key and
retain support for the deprecated keys:
 - ubuntu-advantage
 - ubuntu_advantage

Since cloud-init doesn't target Ubuntu Xenial for stable release
updates (SRUs), the ubuntu-advantage/ubuntu_advantage keys must be
supported by cloud-init and ubuntu-pro-client in Xenial unless a
backport of latest cloud-init cc_ubuntu_advantage.py module is
published to Xenial.
Added behave and unit tests

Fixes: #2898
orndorffgrant and others added 28 commits May 27, 2024 09:51
On some behave tests, we check that the esm version of a package is
installed, whether because we explicitly ask for it, or we expect it to
happen automatically.

However, the esm version may not be the latest one, and our regex was
expecting that.

Relaxing the regex opens for the case where the version on latest is not
the latest, still assuring it is the installed one.

Signed-off-by: Renan Rodrigo <renanrodrigo@canonical.com>
xenial and bionic have no support and we still use ubuntu_advantage
there

focal and jammy should accept both keys so we keep the advantage one to
ensure retrocompatibility is working

Signed-off-by: Renan Rodrigo <renanrodrigo@canonical.com>
remove the --devel-release as noble is now released

Signed-off-by: Renan Rodrigo <renanrodrigo@canonical.com>
Now Noble is released, and there release upgrader path there is from
Mantic.
LTS upgrades will be working when 24.04.1 is there.

Signed-off-by: Renan Rodrigo <renanrodrigo@canonical.com>
because why not

Signed-off-by: Renan Rodrigo <renanrodrigo@canonical.com>
A couple tests were failing because they depended on the cache and it
was not fully updated yet.

Signed-off-by: Renan Rodrigo <renanrodrigo@canonical.com>
By default, the ubuntu-pro-client package is installed in Noble.
Therefore, our dpkg command should target it instead
On Noble, cloud-init expects the ubuntu_pro directive instead
of ubuntu_advantage
To isolate the warning we want to check, we need to guarantee
that the esm cache is already created before we run the
pro security-status command
This test rely on old logic for the ubuntu-advantage-tools postinst
package, which doesn't affect Noble. We are removing Noble support
for that specific test
Example:
In bionic, we have /bin/uname. In fresh focal, we have /usr/bin/uname.
In focal upgraded from bionic, we will have /bin/uname.

This affected uname, ps, and systemctl.

LP: #2067319
Anything bin related: -> /{,usr/}bin
Anything lib related: -> /{,usr/}lib
Signed-off-by: Renan Rodrigo <renanrodrigo@canonical.com>
@renanrodrigo
Copy link
Member

R E L E A S E D

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.

None yet

9 participants