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

feat(lxd): support launching minimal images on lxd_vm and container (SC-1750) #410

Merged
merged 1 commit into from
Sep 12, 2024

Conversation

blackboxsw
Copy link
Collaborator

@blackboxsw blackboxsw commented Sep 9, 2024

Add optional image_type param to LXD*.released_image and daily_image methods to provide daily and released Ubuntu minimal images.

To support this feature, lxd._images.find_last_fingerprint also accepts an image_type param to distinguish between ubuntu-minimal and generic ubuntu image remotes.

Support for jenkins integration test runners of Ubuntu daily minimal images. Component of improved integration test coverage for SC-1750.

test procedure

tox -e pytest
tox -e integration-tests -- tests/integration_tests/test_public_api.py::test_public_api[lxd_container]
.tox/.testenv/bin/python3 example/lxd.py

@blackboxsw blackboxsw changed the title feat(lxd): support launching minimal images on lxd_vm and container feat(lxd): support launching minimal images on lxd_vm and container (SC-1750) Sep 10, 2024
Copy link
Collaborator

@a-dubs a-dubs 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 this change chad! implementation looks solid but one question about the integration test addition inline.

"grep build_name /etc/cloud/build.info"
).stdout
)
instance.delete()
Copy link
Collaborator

Choose a reason for hiding this comment

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

should this test be added to an lxd integration test instead? given that this will only run on lxd and the public api is unaffected by this change?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Good suggestion, I pulled it into a separate test and also parametrized that test to cover GCE and Ec2 which also support ImageType.MINIMAL image_type overrides in released_image/daily_image

@blackboxsw blackboxsw force-pushed the lxd-minimal-images-sc-1750 branch 3 times, most recently from 9ed7091 to fb88f9d Compare September 12, 2024 03:08
Copy link
Collaborator

@a-dubs a-dubs left a comment

Choose a reason for hiding this comment

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

Changes look great! Thanks @blackboxsw. Left one inline question but it's minor so I'm not going to block on it.

tests/integration_tests/test_public_api.py Show resolved Hide resolved
Add optional image_type param to LXD*.released_image and daily_image
methods to provide daily and released Ubuntu minimal images.

To support this feature, lxd._images.find_last_fingerprint also accepts
an image_type param to distinguish between ubuntu-minimal and generic
ubuntu image remotes.

Support for jenkins integration test runners of Ubuntu daily minimal
images. Component of improved integration test coverage for SC-1750.
@a-dubs a-dubs merged commit 7224ec9 into canonical:main Sep 12, 2024
4 checks passed
a-dubs added a commit to a-dubs/pycloudlib that referenced this pull request Sep 13, 2024
PR canonical#410 introduced minimal images and added integration test coverage
for EC2 and GCE but the helper functions used to find images on those
clouds were not updated. This fixes this issue and should include all
the remaining functionality needed for minimal images to work on
those clouds.
a-dubs added a commit to a-dubs/pycloudlib that referenced this pull request Sep 13, 2024
PR canonical#410 introduced minimal images and added integration test coverage
for EC2 and GCE but the helper functions used to find images on those
clouds were not updated. This fixes this issue and should include all
the remaining functionality needed for minimal images to work on
those clouds.
a-dubs added a commit to a-dubs/pycloudlib that referenced this pull request Sep 13, 2024
PR canonical#410 introduced minimal images and added integration test coverage
for EC2 and GCE but the helper functions used to find images on those
clouds were not updated. This fixes this issue and should include all
the remaining functionality needed for minimal images to work on
those clouds.
blackboxsw pushed a commit that referenced this pull request Sep 13, 2024
PR #410 introduced minimal images and added integration test coverage
for EC2 and GCE but the helper functions used to find images on those
clouds were not updated. This fixes this issue and should include all
the remaining functionality needed for minimal images to work on
those clouds.
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