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 2024.4 #3191

Closed
33 tasks
jmarrero opened this issue Feb 21, 2024 · 5 comments · Fixed by #3197
Closed
33 tasks

Release 2024.4 #3191

jmarrero opened this issue Feb 21, 2024 · 5 comments · Fixed by #3197
Assignees

Comments

@jmarrero
Copy link
Member

Release process

The release process follows the usual PR-and-review flow, allowing an external reviewer to have a final check before publishing a release.

Requirements

This guide requires:

  • a web browser (and network connectivity)
  • git
  • GPG setup and personal key for signing
  • git-evtag
  • write access to the git repository
  • upload access to this project on GitHub

Release checklist

  • Prepare local environment:

    • git remote get-url --push origin
    • validate that the output above points to git@github.com:ostreedev/ostree.git
    • git checkout main && git pull
    • git clean -fd
    • RELEASE_VER=yyyy.n (matching package_version in configure.ac)
    • git checkout -b release-${RELEASE_VER}
  • Prepare the release commits:

    • sed -i -e 's/^is_release_build=no/is_release_build=yes/' configure.ac
    • move the new-symbols stanza (if any) from src/libostree/libostree-devel.sym to src/libostree/libostree-released.sym
    • comment the src/libostree/libostree-devel.sym include in Makefile-libostree.am
    • update tests/test-symbols.sh with the new digest from sha256sum src/libostree/libostree-released.sym
    • git commit -a -m "Release ${RELEASE_VER}"
    • RELEASE_COMMIT=$(git rev-parse HEAD)
    • ./autogen.sh && make dist
    • update year_version and release_version in configure.ac for the next development cycle
    • sed -i -e 's/^is_release_build=yes/is_release_build=no/' configure.ac
    • git commit -a -m 'configure: post-release version bump'
  • Open a PR to create the release:

    • git push -u origin release-${RELEASE_VER}
    • open a web browser and create a PR for the branch above, titled Release ${RELEASE_VER}
    • make sure the resulting PR contains two commits
    • in the PR body, write a short summary of relevant changes since last release (using git shortlog too)
  • get the PR reviewed, approved and merged

  • Publish the tag:

    • git fetch origin && git checkout ${RELEASE_COMMIT}
    • git-evtag sign v${RELEASE_VER}
    • git push --tags origin v${RELEASE_VER}
  • Publish the release and artifacts on GitHub:

    • find the new tag in the GitHub tag list and click the triple dots menu, then create a release for it
    • write a short changelog (i.e. re-use the PR content)
    • attach libostree-{RELEASE_VER}.tar.xz
    • publish release
  • Clean up:

    • git clean -fd
    • git checkout main
    • git pull
    • git push origin :release-${RELEASE_VER}
    • git branch -d release-${RELEASE_VER}
@ericcurtin
Copy link
Collaborator

Gonna push another PR around interpretation of "androidboot.slot_suffix=" karg here src/libostree/ostree-impl-system-generator.c to get into this release

@ericcurtin
Copy link
Collaborator

Got the android boot stuff in, we also closed up this secure boot thing also which is a nice add to this release #3187

@ericcurtin
Copy link
Collaborator

With this release we should be able to enable composefs more completely on our Automotive images.

@cgwalters
Copy link
Member

@jmarrero I'll take this

@cgwalters cgwalters self-assigned this Feb 23, 2024
@ericcurtin
Copy link
Collaborator

Debian Testing build is failing on main, but I think it's the usual flakes

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants