Skip to content

patch: Add deprecation notice for balenalib base images#465

Merged
flowzone-app[bot] merged 1 commit intomasterfrom
vipulgupta2048/deprecate-balenalib
May 14, 2025
Merged

patch: Add deprecation notice for balenalib base images#465
flowzone-app[bot] merged 1 commit intomasterfrom
vipulgupta2048/deprecate-balenalib

Conversation

@vipulgupta2048
Copy link
Copy Markdown
Contributor

Part of the base images deprecation project, we are adding a notice to balenalib base images to output a message with the deprecation message which would link to the blog post.

Signed-off-by: Vipul Gupta (@vipulgupta2048) vipulgupta2048@gmail.com

@vipulgupta2048 vipulgupta2048 requested a review from klutchell May 5, 2025 14:35
@flowzone-app flowzone-app bot enabled auto-merge May 5, 2025 14:37
@vipulgupta2048 vipulgupta2048 marked this pull request as draft May 5, 2025 16:54
auto-merge was automatically disabled May 5, 2025 16:54

Pull request was converted to draft

@@ -1 +1 @@
RUN [ ! -d /.balena/messages ] && mkdir -p /.balena/messages; echo $'Here are a few details about this Docker image (For more information please visit https://www.balena.io/docs/reference/base-images/base-images/): \nArchitecture: {{arch.sw.name}} \nOS: {{sw.os.name}} \nVariant: {{sw.stack-variant.name}} \nDefault variable(s): UDEV=off \nExtra features: \n- Easy way to install packages with `install_packages <package-name>` command \n- Keep the container idling with `balena-idle` command \n- Show base image details with `balena-info` command' > /.balena/messages/image-info
RUN [ ! -d /.balena/messages ] && mkdir -p /.balena/messages; echo $'This base image is deprecated and will no longer receive updates. Please see our blog post (https://blog.balena.io/deprecate-balenalib-images/) for migration guidance and suggested alternatives. Here are a few details about this Docker image (For more information please visit https://www.balena.io/docs/reference/base-images/base-images/): \nArchitecture: {{arch.sw.name}} \nOS: {{sw.os.name}} \nVariant: {{sw.stack-variant.name}} \nDefault variable(s): UDEV=off \nExtra features: \n- Easy way to install packages with `install_packages <package-name>` command \n- Keep the container idling with `balena-idle` command \n- Show base image details with `balena-info` command' > /.balena/messages/image-info
Copy link
Copy Markdown
Contributor

@klutchell klutchell May 5, 2025

Choose a reason for hiding this comment

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

I was thinking about this since we last spoke, and I wonder if a fixed URL is a bad idea on the unlikely event it ever changes (these images are static obviously).

Maybe we should just point to "our blog" and "our docs" just to be future-proof and avoid tying ourselves to a URL forever?

WDYT @shaunmulligan

Copy link
Copy Markdown
Contributor Author

@vipulgupta2048 vipulgupta2048 May 6, 2025

Choose a reason for hiding this comment

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

In terms of specific resources, the blog would be the most persistent, highly available entity we have.
If the URL changes, then it can be remapped using our CF redirect worker
I am assuming as long as balena is alive, there will be a blog albeit sometimes the URL structure might change with changing blog frameworks.

Open to discussions. GitHub gist type options could be considered.

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

yeah, I think it should be okay, but @vipulgupta2048 I guess the larger question is, how do we remind our future selves that this specific URL needs to be remapped or kept alive in the likely event that we change things in the future. It's definitely easy to know that a URL can be remapped, but how do we remember to do it :P

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Few options.

Detection: Docs would mention the blog post, and the link checker keeps a check on the availability of the URL.

Reminder: Can add that context into https://github.com/balena-io/environment-production/blob/master/cloudflare/kv/redirects.yml as a comment

These actions still miss the context or the importance of the URL being preserved. We need a flare to be sent up if the URL goes down?

Faster detection: Track the URL using nodeping on our status dashboard as we do for other URLs, if it goes down team gets notified.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Detection: Docs would mention the blog post, and the link checker keeps a check on the availability of the URL.

Reminder: Can add that context into https://github.com/balena-io/environment-production/blob/master/cloudflare/kv/redirects.yml as a comment

IMO this is enough

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

You won't be able to run checks on that PR (Flowzone not enabled for forks) so I can cherry-pick that change for you.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

@klutchell please do

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

I'm going to try to expedite write access to those repos for the greater team. Will keep you posted.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Thanks, we can get this PR merged then? @klutchell

Copy link
Copy Markdown
Contributor

@klutchell klutchell May 12, 2025

Choose a reason for hiding this comment

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

@vipulgupta2048 I would prefer to merge this once the blog post is live.

Once the contacts are updated, there will be new base images published on June 1st whether we are ready or not.

We can disable the schedule, but it won't stop someone from manually running a base images build to unblock someone in support. I would prefer we update contracts when the link is live (it's still draft isn't it?)

Comment thread contracts/sw.os+arch.sw/alpine+i386/image-info.tpl Outdated
@vipulgupta2048 vipulgupta2048 force-pushed the vipulgupta2048/deprecate-balenalib branch from 0674823 to 9c5f067 Compare May 8, 2025 10:03
Signed-off-by: Vipul Gupta (@vipulgupta2048) <vipulgupta2048@gmail.com>
@vipulgupta2048 vipulgupta2048 force-pushed the vipulgupta2048/deprecate-balenalib branch from 9c5f067 to 46ba3d7 Compare May 8, 2025 10:03
@vipulgupta2048 vipulgupta2048 marked this pull request as ready for review May 8, 2025 19:51
@vipulgupta2048 vipulgupta2048 requested a review from klutchell May 12, 2025 17:14
@klutchell
Copy link
Copy Markdown
Contributor

/rebase

@git-basejump git-basejump bot force-pushed the vipulgupta2048/deprecate-balenalib branch from 46ba3d7 to 8d980c8 Compare May 14, 2025 14:45
@flowzone-app flowzone-app bot merged commit d52551f into master May 14, 2025
52 checks passed
@flowzone-app flowzone-app bot deleted the vipulgupta2048/deprecate-balenalib branch May 14, 2025 14:47
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.

3 participants