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

Update python version in snaps #9956

Draft
wants to merge 2 commits into
base: master
Choose a base branch
from
Draft

Update python version in snaps #9956

wants to merge 2 commits into from

Conversation

ohemorange
Copy link
Contributor

@ohemorange ohemorange commented Jun 21, 2024

Fixes #9872

  • new certbot snap builds and runs
  • new plugin snap builds and runs
  • does new certbot run with old plugin (this would be weird)
    • good news: doesn't immediately crash core certbot. expected news: also does not see new plugin.
  • does old certbot run with new plugin (this would be weird)
    • same news as above
  • launch remote tests for other archs
    • what's this about top-level and only one per
    • lollll we are simply not working. todo!
  • investigate existing third party snaps
    • There are 20 found by searching "certbot" on snapcraft.io, listed on pages two to three
    • check to see if all 20 literally use our scripts
  • contact and roll out updates for third party snaps

As it turns out, we've kind of already solved the problem! Yay!
The entire point of the post-refresh hook is so that if the plugin version number is greater than certbot's version number, it won't be installed. The first two I checked both already use this framework, so they just need to switch themselves to core24/python3.12, bump their version number (to 3.0 probably), and publish the snap. It will be out there and ready but not installed, until we publish the certbot 3.0 snap, at which point on the next refresh it will just update itself and Just Work.

In fact, if they are all straight up using our scripts to generate their snap and snap hook files, we can publish the updates (to master or a branch) to make it even less work for them. So 1) grab our new scripts 2) change version number 3) build and publish new snap and that's it.

In case we missed one, it might be worth figuring a way to detect that situation and notify. Like, can we check for a connected snap that doesn't show up in the plugins list?

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.

Update Python version in snaps before October
1 participant