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(versioning/debian): Debian codenames support #14881

Merged
merged 28 commits into from
May 18, 2022

Conversation

Gabriel-Ladzaretti
Copy link
Collaborator

@Gabriel-Ladzaretti Gabriel-Ladzaretti commented Mar 31, 2022

Changes

Added dedicated versioning for Debian by extending dockerVersioningApi.
Supports debian codenames.

IMO it shouldn't be. I know I commented that we should cover Debian release names, but it should be a separate PR. There is some added complexity with Debian and it's naming of stable, oldstable, oldoldstable, etc.

#14601 (comment)

Context

Documentation (please check one with an [x])

  • I have updated the documentation, or
  • Documentation update is required

How I've tested my work (please tick one)

I have verified these changes via:

  • Code inspection only, or
  • Unit tests added
  • No unit tests but ran on a real repository, or
  • Both unit tests + Ran on a real repository

@Gabriel-Ladzaretti
Copy link
Collaborator Author

Gabriel-Ladzaretti commented Mar 31, 2022

Example run on real repo.
work in progress as its suggests upgrading to a testing release.

@JamieMagee @viceice
Would getting and extracting Index of releases from https://www.debian.org/releases/ could be a valid solution for getting the oldstable etc. info ?

@Gabriel-Ladzaretti Gabriel-Ladzaretti requested review from viceice and removed request for viceice March 31, 2022 13:57
@Gabriel-Ladzaretti Gabriel-Ladzaretti marked this pull request as draft March 31, 2022 13:59
@Gabriel-Ladzaretti Gabriel-Ladzaretti force-pushed the debian-codenames-support branch 2 times, most recently from d811e97 to 04a5478 Compare March 31, 2022 21:39
@rarkins
Copy link
Collaborator

rarkins commented Apr 2, 2022

I think the main thing we need to know is "what is the stable release of Debian"? To us both testing and unstable are considered unstable. Ideally there was a better way of getting that info.

Does Debian have a "schedule" anywhere where they document intent to promote a certain version to stable in the future? E.g. like node.js does

Copy link
Member

@viceice viceice left a comment

Choose a reason for hiding this comment

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

also please Split the Ubuntu refactoring from this new feature to a separate PR.

@JamieMagee
Copy link
Contributor

There's not a clean API or schedule of sorts. The reference for most of this info is going to be these pages:

They give future EOL dates to the month.

@Gabriel-Ladzaretti I think the wiki might be a slightly better option? But not by much. Equally, they change every 2 years 🤷

The special cases we need to handle are:

  • stable -> bullseye
  • oldstable -> buster
  • oldoldstable -> stretch
  • testing -> bookworm
  • unstable -> sid

@JamieMagee
Copy link
Contributor

Actually, with a bit more digging, this is the source for debian-info-data and ubuntu-info-data:

@Gabriel-Ladzaretti
Copy link
Collaborator Author

Gabriel-Ladzaretti commented Apr 5, 2022

@JamieMagee @viceice @rarkins
Example renovate pull request.
not quite sure if we should offer upgrades to rolling updates i.e. stable etc...

@HonkingGoose
Copy link
Collaborator

Blocked by #14880

I see this is listed in your top post, is still still blocking us?

@HonkingGoose HonkingGoose added the status:blocked Issue is blocked by another issue or external requirement label Apr 6, 2022
data/debian-distro-info.json Outdated Show resolved Hide resolved
docs/usage/docker.md Outdated Show resolved Hide resolved
docs/usage/docker.md Outdated Show resolved Hide resolved
@Gabriel-Ladzaretti
Copy link
Collaborator Author

Blocked by #14880

I see this is listed in your top post, is still still blocking us?

Not the cleanest way of doing things, but i was working on both PR simultaneously as the refactor came out to be because of this one. so i am cherry picking changes back and forth.
so this actually contains the refactor.
but then again it is most probably better to first merge and close the refactor pr.

@JamieMagee
Copy link
Contributor

not quite sure if we should offer upgrades to rolling updates i.e. stable etc...

You mean like oldoldstable to stable? I think it makes sense. oldoldstable is still rolling. As long as we're not moving users from a named release (bullseye) to a rolling release (stable).

JamieMagee
JamieMagee previously approved these changes Apr 7, 2022
Copy link
Member

@viceice viceice left a comment

Choose a reason for hiding this comment

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

Please extract the refactorings from this PR, so we can merge those first.

@viceice viceice marked this pull request as draft April 8, 2022 06:04
…-Ladzaretti/renovate into debian-codenames-support

� Conflicts:
�	lib/modules/versioning/ubuntu/index.ts
lib/modules/versioning/debian/index.spec.ts Show resolved Hide resolved
lib/modules/versioning/debian/index.ts Show resolved Hide resolved
lib/modules/versioning/distro.ts Outdated Show resolved Hide resolved
- moved all time/date handling into distro.ts

- date freeze for ubuntu/debian/distro unit tests
@Gabriel-Ladzaretti Gabriel-Ladzaretti marked this pull request as draft April 22, 2022 21:35
@Gabriel-Ladzaretti Gabriel-Ladzaretti added the status:blocked Issue is blocked by another issue or external requirement label Apr 22, 2022
@Gabriel-Ladzaretti
Copy link
Collaborator Author

@Gabriel-Ladzaretti Gabriel-Ladzaretti removed the status:blocked Issue is blocked by another issue or external requirement label May 11, 2022
# Conflicts:
#	lib/modules/versioning/distro.ts
#	lib/modules/versioning/ubuntu/index.ts
@Gabriel-Ladzaretti Gabriel-Ladzaretti marked this pull request as ready for review May 12, 2022 14:01
package.json Outdated Show resolved Hide resolved
lib/modules/versioning/debian/index.spec.ts Outdated Show resolved Hide resolved
lib/modules/versioning/debian/index.spec.ts Outdated Show resolved Hide resolved
lib/modules/versioning/debian/index.ts Outdated Show resolved Hide resolved
@viceice viceice enabled auto-merge (squash) May 18, 2022 15:21
@viceice viceice merged commit c17a274 into renovatebot:main May 18, 2022
@renovate-release
Copy link
Collaborator

🎉 This PR is included in version 32.63.0 🎉

The release is available on:

Your semantic-release bot 📦🚀

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Jun 18, 2022
@Gabriel-Ladzaretti Gabriel-Ladzaretti deleted the debian-codenames-support branch June 26, 2022 07:31
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Support Debian codenames
6 participants