Hi all,

Here’s an *infrastructure-agnostic write-up of what I remember*.
It’s basically just a new, simplified, Release-Manager-centric way to
present the same info and provide more details in a few areas.

If this looks correct to others then maybe I should add a new Confluence
page or weave this into the existing *“Release Apache Geode”* page entry,
which goes into great detail about the old tooling and VMware pipelines
that are now outdated.

*Quick note on voting:* anyone can vote on dev@geode.apache.org, but *only
Geode PMC votes are binding* (the release requires 3+ binding +1s and a
≥72h vote window).
------------------------------
Apache Geode Release Manager Runbook (Geode-specific)

This runbook captures *how we do Geode releases* and *how someone
volunteers to be Release Manager (RM)*. Geode-specific paths, names, and
expectations are called out explicitly.
------------------------------
A) Volunteering to be the Geode Release Manager

*Purpose:* establish who’s running the release and ensure they can produce
verifiable signed artifacts.

   1.

   *Confirm eligibility*
   -

      You’re an *Apache Geode committer* (binding PMC votes come later
      during the release vote, but the RM can be a committer).
      -

      You’re available to drive the RC cycle (coordination on
      dev@geode.apache.org).
      2.

   *Announce your intent*
   -

      Send a short note to dev@geode.apache.org (subject: [DISCUSS]
      Volunteer RM for Geode <version>). If there are multiple volunteers,
      decide amicably who takes *RM* and who helps as *shadow RM*.
      3.

   *Prepare your OpenPGP signing key (one-time per person)*
   -

      Create a key (ed25519 or RSA-4096).
      -

      Verify your key has a non-expired expiration date and a recognizable
      UID (your Apache email recommended).
      4.

   *Publish your public key*
   -

      Export ASCII-armored public key and publish to a keyserver (e.g.,
      keys.openpgp.org) so others can fetch it.
      5.

   *Add your key to Geode’s KEYS file*
   -

      Checkout the Geode dist area:
      https://dist.apache.org/repos/dist/release/geode/
      -

      Append your public key to *KEYS* and commit.
      -

      This ensures users and voters can verify your signatures for Geode
      releases.
      6.

   *Local tooling sanity checks*
   -

      Ensure gpg works in non-TUI mode, you can create *detached ASCII
      signatures* (.asc), and you have utilities for checksums (sha512sum
      or equivalent).
      -

      Ensure you can deploy to *ASF Nexus* (Maven staging) with your Apache
      credentials and that your Maven settings.xml is configured
      appropriately.

Once steps 1–6 are complete, you’re ready to act as *Release Manager for
Geode*.

------------------------------
B) Geode Release Steps (performed by the RM)

*Scope:* from cutting the release branch/tag through vote, promotion, and
publication. Geode-specific repos/paths are used throughout.

   1.

   *Cut the release branch & tag*
   -

      Branch from the intended baseline (e.g., release/1.16.0 or whatever
      Geode is using).
      -

      Bump version numbers, update CHANGELOG/RELEASE NOTES, LICENSE/NOTICE
      as needed.
      -

      Create a signed tag for the RC base if the project convention uses RC
      tags (e.g., rel/v1.16.0-RC1).
      2.

   *Build release artifacts*
   -

      Produce *source* archive (required by Apache) and optional *binary*
      archive if Geode ships one:
      -

         apache-geode-<version>-src.tar.gz
         -

         apache-geode-<version>-bin.tar.gz (if applicable)
         3.

   *Sign and checksum the archives*
   -

      For each archive: create *detached ASCII PGP signature* (.asc).
      -

      Generate *SHA-512* checksum files (.sha512).
      -

      Note: For the *ASF release vote*, we sign the *archives* (not each
      JAR inside). Per-artifact signatures for JARs are handled during Maven
      Central staging.
      4.

   *Stage Maven artifacts for Central (do not release yet)*
   -

      Deploy with the Geode release profile so that JARs, POMs, sources,
      and javadocs are signed.
      -

      Close the staged repository in *ASF Nexus* but *do not release* until
      the vote passes.
      5.

   *Upload the Release Candidate to dist/dev*
   -

      Commit the RC to:
      -

         https://dist.apache.org/repos/dist/dev/geode/<version>-RC<N>/
         -

      Include the archives plus their .asc and .sha512 files.
      6.

   *Start the vote on dev@geode.apache.org <dev@geode.apache.org> (≥72
   hours)*
   -

      Email subject: [VOTE] Apache Geode <version> RC<N>
      -

      Include links to:
      -

         The RC in dist/dev
         -

         The *KEYS* file for Geode (under dist/release/geode/KEYS)
         -

         The Nexus staging repository URL
         -

         Verification steps (sig/checksum commands, building from source,
         license/RAT checks)
         -

      *Anyone can vote on dev@geode.apache.org <dev@geode.apache.org>, but
      only PMC member votes are binding.* Approval requires *3+ binding +1
      PMC votes*, and the vote must be open at least *72 hours*.
      7.

   *If issues are found*
   -

      Cancel/close the vote, address the issues, increment RC (e.g., RC2),
      and repeat steps 2–6.
      8.

   *Promote on success*
   -

      After a successful vote, *promote* the release:
      -

         Copy the approved artifacts from dist/dev/geode/<version>-RC<N>/
         to dist/release/geode/<version>/.
         -

         Only supported releases live in dist/release; older ones get
         archived automatically by ASF infra.
         9.

   *Publish to Maven Central*
   -

      In ASF Nexus, *Release* the previously closed staging repository so
      artifacts sync to Maven Central.
      10.

   *Finalize communications & site updates*


   -

   Push the final git tag (if you staged from a temporary tag).
   -

   Update the Geode website/downloads/release notes as per project
   convention.
   -

   Send an announce note to project lists (and annou...@apache.org if
   appropriate).

------------------------------

*Notes:*

   -

   ASF release vote = sign source/bin tarballs, not every JAR. Maven
   Central staging handles per-JAR .asc.
   -

   *Voting:* anyone may vote on dev@, but only *PMC votes are binding*.
   -

   Make sure your key is present in Geode’s KEYS file *before* starting a
   vote.

------------------------------

Thanks for reviewing. If this matches our current understanding, I can
polish it into Confluence either as a new page or merged into the
existing *Release
Apache Geode* page.

Reply via email to