polandll commented on code in PR #208: URL: https://github.com/apache/cassandra-website/pull/208#discussion_r1100567784
########## site-content/source/modules/ROOT/pages/development/release_process.adoc: ########## @@ -34,25 +34,27 @@ https://dist.apache.org/repos/dist/release/cassandra/KEYS ---- Publish your GPG key in a PGP key server, such as -http://pgp.mit.edu/[MIT Keyserver]. +http://pgp.mit.edu/[MIT Keyserver]. Some `gpg` clients are publishing the keys https://keys.openpgp.org/[here]. You are +welcome to set the server the keys will be published to by following https://keys.openpgp.org/about/usage[this guide]. -==== Bintray account with access to Apache organisation - -Publishing a successfully voted upon release requires bintray access to -the Apache organisation. Please verify that you have a bintray account -and the Apache organisation is listed -https://bintray.com/profile/edit/organizations[here]. +Once done, you need to create a ticket https://issues.apache.org/jira/browse/CASSANDRA-18205[like this] Review Comment: ```suggestion Once completed, you need to create a ticket https://issues.apache.org/jira/browse/CASSANDRA-18205[like this] ``` ########## site-content/source/modules/ROOT/pages/development/release_process.adoc: ########## @@ -34,25 +34,27 @@ https://dist.apache.org/repos/dist/release/cassandra/KEYS ---- Publish your GPG key in a PGP key server, such as -http://pgp.mit.edu/[MIT Keyserver]. +http://pgp.mit.edu/[MIT Keyserver]. Some `gpg` clients are publishing the keys https://keys.openpgp.org/[here]. You are +welcome to set the server the keys will be published to by following https://keys.openpgp.org/about/usage[this guide]. -==== Bintray account with access to Apache organisation - -Publishing a successfully voted upon release requires bintray access to -the Apache organisation. Please verify that you have a bintray account -and the Apache organisation is listed -https://bintray.com/profile/edit/organizations[here]. +Once done, you need to create a ticket https://issues.apache.org/jira/browse/CASSANDRA-18205[like this] +and ask a PMC to add your key to `KEYS` file. === Create Release Artifacts Any committer can perform the following steps to create and call a vote on a proposed release. -Check that there are no open urgent jira tickets currently being worked +Check that there are no open urgent Jira tickets currently being worked on. Also check with the PMC that there's security vulnerabilities -currently being worked on in private.' Current project habit is to check +currently being worked on in private. Current project habit is to check the timing for a new release on the dev mailing lists. +For sucessful building process, you need to have this tooling installed locally: +svn, git, ant, devscripts, reprepro, rpmsign, docker, createrepo (the script is checking this tooling is present +before proceeding any further). The names of these "packages" are Debian-centric but there Review Comment: ```suggestion before proceeding any further). The names of these "packages" are Debian-centric, ``` ########## site-content/source/modules/ROOT/pages/development/release_process.adoc: ########## @@ -63,19 +65,92 @@ the ASF nexus staging repository and dev distribution location: cd ~/git git clone https://github.com/apache/cassandra-builds.git git clone https://github.com/apache/cassandra.git +---- +[source,none] +---- # Edit the variables at the top of the `prepare_release.sh` file edit cassandra-builds/cassandra-release/prepare_release.sh +---- + +You need to specify your ASF username to `asf_username` variable. Next, `gpg_key` environment variable needs to be +set to a fingerprint of your gpg key. You get that value by executing `gpg --list-keys` or similar. Also, you need to +add ASF remote to cloned repository and `git_asf_remote` variable needs to be set to point to that. For example, when this is done: Review Comment: ```suggestion add ASF remote to your cloned repository and `git_asf_remote` variable needs to be set to point to that. For example, when this command is executed: ``` ########## site-content/source/modules/ROOT/pages/development/release_process.adoc: ########## @@ -34,25 +34,27 @@ https://dist.apache.org/repos/dist/release/cassandra/KEYS ---- Publish your GPG key in a PGP key server, such as -http://pgp.mit.edu/[MIT Keyserver]. +http://pgp.mit.edu/[MIT Keyserver]. Some `gpg` clients are publishing the keys https://keys.openpgp.org/[here]. You are +welcome to set the server the keys will be published to by following https://keys.openpgp.org/about/usage[this guide]. -==== Bintray account with access to Apache organisation - -Publishing a successfully voted upon release requires bintray access to -the Apache organisation. Please verify that you have a bintray account -and the Apache organisation is listed -https://bintray.com/profile/edit/organizations[here]. +Once done, you need to create a ticket https://issues.apache.org/jira/browse/CASSANDRA-18205[like this] +and ask a PMC to add your key to `KEYS` file. === Create Release Artifacts Any committer can perform the following steps to create and call a vote on a proposed release. -Check that there are no open urgent jira tickets currently being worked +Check that there are no open urgent Jira tickets currently being worked on. Also check with the PMC that there's security vulnerabilities -currently being worked on in private.' Current project habit is to check +currently being worked on in private. Current project habit is to check the timing for a new release on the dev mailing lists. +For sucessful building process, you need to have this tooling installed locally: +svn, git, ant, devscripts, reprepro, rpmsign, docker, createrepo (the script is checking this tooling is present +before proceeding any further). The names of these "packages" are Debian-centric but there +should not be any problem to find the equivalents in other systems too. Review Comment: ```suggestion but equivalents should be discoverable in other systems too. ``` ########## site-content/source/modules/ROOT/pages/development/release_process.adoc: ########## @@ -63,19 +65,92 @@ the ASF nexus staging repository and dev distribution location: cd ~/git git clone https://github.com/apache/cassandra-builds.git git clone https://github.com/apache/cassandra.git +---- +[source,none] +---- # Edit the variables at the top of the `prepare_release.sh` file edit cassandra-builds/cassandra-release/prepare_release.sh +---- + +You need to specify your ASF username to `asf_username` variable. Next, `gpg_key` environment variable needs to be +set to a fingerprint of your gpg key. You get that value by executing `gpg --list-keys` or similar. Also, you need to +add ASF remote to cloned repository and `git_asf_remote` variable needs to be set to point to that. For example, when this is done: + +[source,none] +---- +git remote add asf https://gitbox.apache.org/repos/asf/cassandra.git +---- +then `git_asf_remote` variable needs to be set to `asf`. This is very important step as tags are pushed to ASF repository and +they are synchronized to GitHub automatically. Review Comment: ```suggestion ``` ########## site-content/source/modules/ROOT/pages/development/release_process.adoc: ########## @@ -85,13 +160,23 @@ git switch cassandra-<version-branch> Follow the prompts. +Once artifacts are built and pushed to the staging area, the script will pause and it will ask you to go to Review Comment: ```suggestion Once artifacts are built and pushed to the staging area, the script will pause and require you to go to the ``` ########## site-content/source/modules/ROOT/pages/development/release_process.adoc: ########## @@ -63,19 +65,92 @@ the ASF nexus staging repository and dev distribution location: cd ~/git git clone https://github.com/apache/cassandra-builds.git git clone https://github.com/apache/cassandra.git +---- +[source,none] +---- # Edit the variables at the top of the `prepare_release.sh` file edit cassandra-builds/cassandra-release/prepare_release.sh +---- + +You need to specify your ASF username to `asf_username` variable. Next, `gpg_key` environment variable needs to be +set to a fingerprint of your gpg key. You get that value by executing `gpg --list-keys` or similar. Also, you need to +add ASF remote to cloned repository and `git_asf_remote` variable needs to be set to point to that. For example, when this is done: + +[source,none] +---- +git remote add asf https://gitbox.apache.org/repos/asf/cassandra.git +---- +then `git_asf_remote` variable needs to be set to `asf`. This is very important step as tags are pushed to ASF repository and +they are synchronized to GitHub automatically. + +[source,none] +---- # Ensure your 4096 RSA key is the default secret key edit ~/.gnupg/gpg.conf # update the `default-key` line -edit ~/.rpmmacros # update the `%gpg_name <key_id>` line +---- + +A reference configuration looks like this: +[source,none] +---- +default-key <fingerprint of your key> +personal-digest-preferences SHA512 +cert-digest-algo SHA512 +default-preference-list SHA512 SHA384 SHA256 SHA224 AES256 AES192 AES CAST5 ZLIB BZIP2 ZIP Uncompressed +---- + +[source,none] +---- +edit ~/.rpmmacros # update the `%_gpg_name <key_id>` line # Ensure DEBFULLNAME and DEBEMAIL is defined and exported, in the debian scripts configuration edit ~/.devscripts +---- + +The reference content of these files should be: -# The prepare_release.sh is run from the actual cassandra git checkout, -# on the branch/commit that we wish to tag for the tentative release along with version number to tag. +[source,none] +---- +$ cat ~/.rpmmacros +%_gpg_name [email protected] +$ cat ~/.devscripts +DEBFULLNAME="Your Name" [email protected] +---- + +It was empirically tested that you also need to have the above `DEB*` environemnt variables exported before proceeding. Review Comment: ```suggestion Empirically testing shows that you also must have the above `DEB*` environemnt variables exported before proceeding. ``` ########## site-content/source/modules/ROOT/pages/development/release_process.adoc: ########## @@ -85,13 +160,23 @@ git switch cassandra-<version-branch> Follow the prompts. +Once artifacts are built and pushed to the staging area, the script will pause and it will ask you to go to +https://repository.apache.org/#stagingRepositories[Staging repositories] and you will find the repository there. +You need to select Cassandra repository and push the "Close" button. +Please take a note of a number of that repository like `orgapachecassandra-1283` - number is 1283. +This will be asked by the script to proceed. It will use this number upon rendering the e-mail template to send to dev list etc. + If building the deb or rpm packages fail, those steps can be repeated individually using the [.title-ref]#-d# and [.title-ref]#-r# flags, respectively. +Once DEBs and RPMs are uploaded too, do not forget to merge up your commit which prepares the release up to trunk +and push after all artifacts are uploaded and whole process is finished. You will be also reminded to do that by Review Comment: ```suggestion and push after all artifacts are uploaded finish the process. You will be also reminded to do that by ``` ########## site-content/source/modules/ROOT/pages/development/release_process.adoc: ########## @@ -63,19 +65,92 @@ the ASF nexus staging repository and dev distribution location: cd ~/git git clone https://github.com/apache/cassandra-builds.git git clone https://github.com/apache/cassandra.git +---- +[source,none] +---- # Edit the variables at the top of the `prepare_release.sh` file edit cassandra-builds/cassandra-release/prepare_release.sh +---- + +You need to specify your ASF username to `asf_username` variable. Next, `gpg_key` environment variable needs to be +set to a fingerprint of your gpg key. You get that value by executing `gpg --list-keys` or similar. Also, you need to Review Comment: ```suggestion set to a fingerprint of your gpg key. Execute `gpg --list-keys` or a similar command to get the value. Finally, you must ``` ########## site-content/source/modules/ROOT/pages/development/release_process.adoc: ########## @@ -34,25 +34,27 @@ https://dist.apache.org/repos/dist/release/cassandra/KEYS ---- Publish your GPG key in a PGP key server, such as -http://pgp.mit.edu/[MIT Keyserver]. +http://pgp.mit.edu/[MIT Keyserver]. Some `gpg` clients are publishing the keys https://keys.openpgp.org/[here]. You are +welcome to set the server the keys will be published to by following https://keys.openpgp.org/about/usage[this guide]. Review Comment: ```suggestion welcome to set the server where the keys will be published by following https://keys.openpgp.org/about/usage[this guide]. ``` ########## site-content/source/modules/ROOT/pages/development/release_process.adoc: ########## @@ -63,19 +65,92 @@ the ASF nexus staging repository and dev distribution location: cd ~/git git clone https://github.com/apache/cassandra-builds.git git clone https://github.com/apache/cassandra.git +---- +[source,none] +---- # Edit the variables at the top of the `prepare_release.sh` file edit cassandra-builds/cassandra-release/prepare_release.sh +---- + +You need to specify your ASF username to `asf_username` variable. Next, `gpg_key` environment variable needs to be Review Comment: ```suggestion You must specify your ASF username to `asf_username` variable. Next, `gpg_key` environment variable must be ``` ########## site-content/source/modules/ROOT/pages/development/release_process.adoc: ########## @@ -34,25 +34,27 @@ https://dist.apache.org/repos/dist/release/cassandra/KEYS ---- Publish your GPG key in a PGP key server, such as -http://pgp.mit.edu/[MIT Keyserver]. +http://pgp.mit.edu/[MIT Keyserver]. Some `gpg` clients are publishing the keys https://keys.openpgp.org/[here]. You are +welcome to set the server the keys will be published to by following https://keys.openpgp.org/about/usage[this guide]. -==== Bintray account with access to Apache organisation - -Publishing a successfully voted upon release requires bintray access to -the Apache organisation. Please verify that you have a bintray account -and the Apache organisation is listed -https://bintray.com/profile/edit/organizations[here]. +Once done, you need to create a ticket https://issues.apache.org/jira/browse/CASSANDRA-18205[like this] +and ask a PMC to add your key to `KEYS` file. === Create Release Artifacts Any committer can perform the following steps to create and call a vote on a proposed release. -Check that there are no open urgent jira tickets currently being worked +Check that there are no open urgent Jira tickets currently being worked on. Also check with the PMC that there's security vulnerabilities -currently being worked on in private.' Current project habit is to check +currently being worked on in private. Current project habit is to check the timing for a new release on the dev mailing lists. +For sucessful building process, you need to have this tooling installed locally: Review Comment: ```suggestion For successful building process, install this tooling locally: ``` ########## site-content/source/modules/ROOT/pages/development/release_process.adoc: ########## @@ -63,19 +65,92 @@ the ASF nexus staging repository and dev distribution location: cd ~/git git clone https://github.com/apache/cassandra-builds.git git clone https://github.com/apache/cassandra.git +---- +[source,none] +---- # Edit the variables at the top of the `prepare_release.sh` file edit cassandra-builds/cassandra-release/prepare_release.sh +---- + +You need to specify your ASF username to `asf_username` variable. Next, `gpg_key` environment variable needs to be +set to a fingerprint of your gpg key. You get that value by executing `gpg --list-keys` or similar. Also, you need to +add ASF remote to cloned repository and `git_asf_remote` variable needs to be set to point to that. For example, when this is done: + +[source,none] +---- +git remote add asf https://gitbox.apache.org/repos/asf/cassandra.git +---- +then `git_asf_remote` variable needs to be set to `asf`. This is very important step as tags are pushed to ASF repository and +they are synchronized to GitHub automatically. + +[source,none] +---- # Ensure your 4096 RSA key is the default secret key edit ~/.gnupg/gpg.conf # update the `default-key` line -edit ~/.rpmmacros # update the `%gpg_name <key_id>` line +---- + +A reference configuration looks like this: +[source,none] +---- +default-key <fingerprint of your key> +personal-digest-preferences SHA512 +cert-digest-algo SHA512 +default-preference-list SHA512 SHA384 SHA256 SHA224 AES256 AES192 AES CAST5 ZLIB BZIP2 ZIP Uncompressed +---- + +[source,none] +---- +edit ~/.rpmmacros # update the `%_gpg_name <key_id>` line # Ensure DEBFULLNAME and DEBEMAIL is defined and exported, in the debian scripts configuration edit ~/.devscripts +---- + +The reference content of these files should be: Review Comment: ```suggestion The reference content of these files is: ``` ########## site-content/source/modules/ROOT/pages/development/release_process.adoc: ########## @@ -63,19 +65,92 @@ the ASF nexus staging repository and dev distribution location: cd ~/git git clone https://github.com/apache/cassandra-builds.git git clone https://github.com/apache/cassandra.git +---- +[source,none] +---- # Edit the variables at the top of the `prepare_release.sh` file edit cassandra-builds/cassandra-release/prepare_release.sh +---- + +You need to specify your ASF username to `asf_username` variable. Next, `gpg_key` environment variable needs to be +set to a fingerprint of your gpg key. You get that value by executing `gpg --list-keys` or similar. Also, you need to +add ASF remote to cloned repository and `git_asf_remote` variable needs to be set to point to that. For example, when this is done: + +[source,none] +---- +git remote add asf https://gitbox.apache.org/repos/asf/cassandra.git +---- +then `git_asf_remote` variable needs to be set to `asf`. This is very important step as tags are pushed to ASF repository and +they are synchronized to GitHub automatically. + +[source,none] +---- # Ensure your 4096 RSA key is the default secret key edit ~/.gnupg/gpg.conf # update the `default-key` line -edit ~/.rpmmacros # update the `%gpg_name <key_id>` line +---- + +A reference configuration looks like this: Review Comment: ```suggestion A reference configuration should look like these examples: ``` ########## site-content/source/modules/ROOT/pages/development/release_process.adoc: ########## @@ -63,19 +65,92 @@ the ASF nexus staging repository and dev distribution location: cd ~/git git clone https://github.com/apache/cassandra-builds.git git clone https://github.com/apache/cassandra.git +---- +[source,none] +---- # Edit the variables at the top of the `prepare_release.sh` file edit cassandra-builds/cassandra-release/prepare_release.sh +---- + +You need to specify your ASF username to `asf_username` variable. Next, `gpg_key` environment variable needs to be +set to a fingerprint of your gpg key. You get that value by executing `gpg --list-keys` or similar. Also, you need to +add ASF remote to cloned repository and `git_asf_remote` variable needs to be set to point to that. For example, when this is done: + +[source,none] +---- +git remote add asf https://gitbox.apache.org/repos/asf/cassandra.git +---- +then `git_asf_remote` variable needs to be set to `asf`. This is very important step as tags are pushed to ASF repository and Review Comment: ```suggestion then `git_asf_remote` variable needs to be set to `asf`. NOTE: This is very important step as tags are pushed to ASF repository and they are synchronized to GitHub automatically. ``` ########## site-content/source/modules/ROOT/pages/development/release_process.adoc: ########## @@ -85,13 +160,23 @@ git switch cassandra-<version-branch> Follow the prompts. +Once artifacts are built and pushed to the staging area, the script will pause and it will ask you to go to +https://repository.apache.org/#stagingRepositories[Staging repositories] and you will find the repository there. Review Comment: ```suggestion https://repository.apache.org/#stagingRepositories[Staging repositories], where you will find the repository. ``` ########## site-content/source/modules/ROOT/pages/development/release_process.adoc: ########## @@ -85,13 +160,23 @@ git switch cassandra-<version-branch> Follow the prompts. +Once artifacts are built and pushed to the staging area, the script will pause and it will ask you to go to +https://repository.apache.org/#stagingRepositories[Staging repositories] and you will find the repository there. +You need to select Cassandra repository and push the "Close" button. +Please take a note of a number of that repository like `orgapachecassandra-1283` - number is 1283. +This will be asked by the script to proceed. It will use this number upon rendering the e-mail template to send to dev list etc. + If building the deb or rpm packages fail, those steps can be repeated individually using the [.title-ref]#-d# and [.title-ref]#-r# flags, respectively. +Once DEBs and RPMs are uploaded too, do not forget to merge up your commit which prepares the release up to trunk Review Comment: ```suggestion Once DEBs and RPMs are also uploaded, do not forget to merge your commit to prepare the release to trunk ``` ########## site-content/source/modules/ROOT/pages/development/release_process.adoc: ########## @@ -63,19 +65,92 @@ the ASF nexus staging repository and dev distribution location: cd ~/git git clone https://github.com/apache/cassandra-builds.git git clone https://github.com/apache/cassandra.git +---- +[source,none] +---- # Edit the variables at the top of the `prepare_release.sh` file edit cassandra-builds/cassandra-release/prepare_release.sh +---- + +You need to specify your ASF username to `asf_username` variable. Next, `gpg_key` environment variable needs to be +set to a fingerprint of your gpg key. You get that value by executing `gpg --list-keys` or similar. Also, you need to +add ASF remote to cloned repository and `git_asf_remote` variable needs to be set to point to that. For example, when this is done: + +[source,none] +---- +git remote add asf https://gitbox.apache.org/repos/asf/cassandra.git +---- +then `git_asf_remote` variable needs to be set to `asf`. This is very important step as tags are pushed to ASF repository and +they are synchronized to GitHub automatically. + +[source,none] +---- # Ensure your 4096 RSA key is the default secret key edit ~/.gnupg/gpg.conf # update the `default-key` line -edit ~/.rpmmacros # update the `%gpg_name <key_id>` line +---- + +A reference configuration looks like this: +[source,none] +---- +default-key <fingerprint of your key> +personal-digest-preferences SHA512 +cert-digest-algo SHA512 +default-preference-list SHA512 SHA384 SHA256 SHA224 AES256 AES192 AES CAST5 ZLIB BZIP2 ZIP Uncompressed +---- + +[source,none] +---- +edit ~/.rpmmacros # update the `%_gpg_name <key_id>` line # Ensure DEBFULLNAME and DEBEMAIL is defined and exported, in the debian scripts configuration edit ~/.devscripts +---- + +The reference content of these files should be: -# The prepare_release.sh is run from the actual cassandra git checkout, -# on the branch/commit that we wish to tag for the tentative release along with version number to tag. +[source,none] +---- +$ cat ~/.rpmmacros +%_gpg_name [email protected] +$ cat ~/.devscripts +DEBFULLNAME="Your Name" [email protected] +---- + +It was empirically tested that you also need to have the above `DEB*` environemnt variables exported before proceeding. + +Next, you have to configure `$HOME/.m2/settings.xml` to contain the credentials how to upload artifacts to https://repository.apache.org/[staging repository]. The credentails are your ASF credentials. Review Comment: ```suggestion Additionally, you must configure `$HOME/.m2/settings.xml` to contain the credentials used to upload artifacts to https://repository.apache.org/[staging repository]. The credentials are your ASF credentials. ``` ########## site-content/source/modules/ROOT/pages/development/release_process.adoc: ########## @@ -85,13 +160,23 @@ git switch cassandra-<version-branch> Follow the prompts. +Once artifacts are built and pushed to the staging area, the script will pause and it will ask you to go to +https://repository.apache.org/#stagingRepositories[Staging repositories] and you will find the repository there. +You need to select Cassandra repository and push the "Close" button. +Please take a note of a number of that repository like `orgapachecassandra-1283` - number is 1283. +This will be asked by the script to proceed. It will use this number upon rendering the e-mail template to send to dev list etc. Review Comment: ```suggestion The script will require the repo number to proceed. It will use this number in the rendered e-mail template sent to the dev list, etc. ``` ########## site-content/source/modules/ROOT/pages/development/release_process.adoc: ########## @@ -85,13 +160,23 @@ git switch cassandra-<version-branch> Follow the prompts. +Once artifacts are built and pushed to the staging area, the script will pause and it will ask you to go to +https://repository.apache.org/#stagingRepositories[Staging repositories] and you will find the repository there. +You need to select Cassandra repository and push the "Close" button. +Please take a note of a number of that repository like `orgapachecassandra-1283` - number is 1283. Review Comment: ```suggestion Please take a note of the number of that repository like `orgapachecassandra-1283` - number is 1283. ``` ########## site-content/source/modules/ROOT/pages/development/release_process.adoc: ########## @@ -85,13 +160,23 @@ git switch cassandra-<version-branch> Follow the prompts. +Once artifacts are built and pushed to the staging area, the script will pause and it will ask you to go to +https://repository.apache.org/#stagingRepositories[Staging repositories] and you will find the repository there. +You need to select Cassandra repository and push the "Close" button. Review Comment: ```suggestion Select the Cassandra repository and push the "Close" button. ``` -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]

