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

Release v2.20.0 #1960

Closed
36 of 38 tasks
prestist opened this issue Oct 21, 2024 · 3 comments
Closed
36 of 38 tasks

Release v2.20.0 #1960

prestist opened this issue Oct 21, 2024 · 3 comments
Assignees
Labels
jira for syncing to jira kind/release Release checklist

Comments

@prestist
Copy link
Collaborator

prestist commented Oct 21, 2024

Release checklist:

Tagging:

  • Write release notes in docs/release-notes.md. Get them reviewed and merged
    • If the release signing key has changed because a new Fedora release has gone stable, note the change as done here.
    • If doing a branched release, also include a PR to merge the docs/release-notes.md changes into main
  • Ensure your local copy is up to date with the upstream main branch ([email protected]:coreos/ignition.git)
  • Ensure your working directory is clean (git clean -fdx)
  • Ensure you can sign commits and any yubikeys/smartcards are plugged in
  • Run ./tag_release.sh <vX.Y.z> <git commit hash>
  • Push that tag to GitHub

Fedora packaging:

  • Update the spec file in Fedora:
    • Bump the Version
    • Switch the Release back to 1%{?dist}
    • Remove any patches obsoleted by the new release
    • Run go-mods-to-bundled-provides.py | sort while inside of the ignition directory you ran ./tag_release from & copy output into spec file in # Main package provides section
    • Update changelog
  • Run spectool -g -S ignition.spec
  • Run kinit [email protected]
  • Run fedpkg new-sources $(spectool -S ignition.spec | sed 's:.*/::')
  • PR the changes in Fedora
  • Once the PR merges to rawhide, merge rawhide into the other relevant branches (e.g. f40) then push those, for example:
    git checkout rawhide
    git pull --ff-only
    git checkout f40
    git merge --ff-only rawhide
    git push origin f40
  • On each of those branches run fedpkg build including rawhide.
  • Once the builds have finished, submit them to bodhi, filling in:
    • ignition for Packages
    • Selecting the build(s) that just completed, except for the rawhide one (which gets submitted automatically)
    • Writing brief release notes like "New upstream release; see release notes at link to docs/release-notes.md on GH tag"
    • Leave Update name blank
    • Type, Severity and Suggestion can be left as unspecified unless it is a security release. In that case select security with the appropriate severity.
    • Stable karma and Unstable karma can be set to 2 and -1, respectively.
  • Submit a fast-track for FCOS testing-devel
  • Submit a fast-track for FCOS next-devel if it is open

GitHub release:

  • Wait until the Bodhi update shows "Signed ✔️" in the Metadata box.
  • Verify that the signing script can fetch the release binaries by running ./signing-ticket.sh test <x.y.z-r> <output-dir>, where r is the Release of the Fedora package without the dist tag (probably 1)
  • Run ./signing-ticket.sh ticket <x.y.z-r> and paste the output into a releng ticket.
  • Wait for the ticket to be closed
  • Download the artifacts and signatures
  • Verify the signatures
  • Find the new tag in the GitHub tag list and click the triple dots menu, and create a draft release for it.
  • Copy and paste the release notes from docs/release-notes.md
  • Upload all the release artifacts and their signatures
  • Publish the release

Quay release:

  • Visit the Quay tags page and wait for a versioned tag to appear
  • Click the gear next to the tag, select "Add New Tag", enter release, and confirm

RHCOS packaging for the current RHCOS development release:

  • Update the spec file
    • Bump the Version
    • Switch the Release back to 1%{?dist}
    • Remove any patches obsoleted by the new release
    • Run go-mods-to-bundled-provides.py | sort while inside of the ignition directory you ran ./tag_release from & copy output into spec file in # Main package provides section
    • Update changelog
  • Run spectool -g -S ignition.spec
  • Run kinit [email protected]
  • Run rhpkg new-sources $(spectool -S ignition.spec | sed 's:.*/::')
  • PR the changes
  • Get the PR reviewed and merge it
  • Update your local repo and run rhpkg build

CentOS Stream 9 packaging:

  • Create a rebase-c9s-ignition issue in the internal team-operations repo and follow the steps there
@prestist prestist added the kind/release Release checklist label Oct 21, 2024
@prestist
Copy link
Collaborator Author

prestist commented Oct 21, 2024

Once
#1922 lands we need to complete this release.
then update the other packages listed here
#1925

Other packages

  • Add a stable spec to ignition-config-rs and regenerate schema.
    • Put out a new release.
  • Bump ignition-config-rs in coreos-installer to support the new spec in iso customize and pxe customize. Update release notes.
    • Put out a new coreos-installer release.
  • Add a new downgrade translation to ign-converter.
  • Stabilize Butane specs.
    • Put out a new release.
  • Drop -experimental from configs in FCOS docs and remove colocated experimental-config warnings
  • Revendor Ignition and Butane into coreos-assembler and update mantle/platform/conf/conf.go and conf_test.go.
  • Ask the Machine Config Operator to support the new spec.

@prestist prestist self-assigned this Oct 22, 2024
@prestist prestist added the jira for syncing to jira label Oct 22, 2024
@prestist prestist added jira for syncing to jira and removed jira for syncing to jira labels Oct 22, 2024
@prestist
Copy link
Collaborator Author

@prestist
Copy link
Collaborator Author

prestist commented Nov 1, 2024

@prestist prestist closed this as completed Nov 3, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
jira for syncing to jira kind/release Release checklist
Projects
None yet
Development

No branches or pull requests

1 participant