Hi all,

The PR has merged, and the https://github.com/apache/pulsar/wiki link has
been updated.
If you have any good ideas to improve the release process and release
validation documents.
You can push a PR directly.

Best,
Penghui

On Fri, Aug 19, 2022 at 2:18 PM PengHui Li <peng...@apache.org> wrote:

> The PR to move the release-related documentation to the codebase.
> https://github.com/apache/pulsar/pull/17176
>
> After the PR gets merged, I will update the
> https://github.com/apache/pulsar/wiki
> to link to the doc in the codebase.
>
> Thanks,
> Penghui
>
> On Tue, Aug 16, 2022 at 11:42 AM Haiting Jiang <jianghait...@gmail.com>
> wrote:
>
>> Hi Dave,
>>
>> > Just remove that command. Having two servers should be enough.
>>
>> Agree, I have removed it.
>>
>> > Release candidates should not be made by a bot. Releases must be
>> verified
>> by building them from source. See
>> https://www.apache.org/legal/release-policy.html#owned-controlled-hardware
>>
>> Thanks for the explanation. I get it now. It's mostly because we can only
>> sign the artifacts locally.
>> Apart from that, I think we can make other procedures more automatic and
>> more lightweight.
>> For example, currently we upload `pulsar-2.7.5-source-release.zip` [1]
>> (the
>> size is 6.23 GB) to maven
>> repository. I am not sure if it's necessary to upload this artifact.
>>
>> Anyway, IMO, we need to provide a more clear and convenient way to
>> optimize
>> the releasing procedure.
>> And moving the docs to codebase seems to be a good starting point.
>>
>> [1]
>>
>> https://repository.apache.org/service/local/repositories/orgapachepulsar-1171/content/org/apache/pulsar/pulsar/2.7.5/pulsar-2.7.5-source-release.zip
>>
>> Thanks,
>> Haiting
>>
>> On Mon, Aug 15, 2022 at 10:45 PM Dave Fisher <w...@apache.org> wrote:
>>
>> >
>> >
>> > > On Aug 15, 2022, at 3:30 AM, Haiting Jiang <jianghait...@gmail.com>
>> > wrote:
>> > >
>> > >> Maybe we'd better move the release process doc and validation doc
>> > >> to the codebase, not the wiki pages.
>> > >
>> > > IMO, we can move all contributor documentation and committers
>> > documentation
>> > > to codebase.
>> > > One example is that `pool.sks-keyservers.net` in [1] seems not
>> available
>> > > anymore, but I am not that confident enough to edit it directly.
>> >
>> > Just remove that command. Having two servers should be enough.
>> >
>> > >
>> > >> And another point is can we have an automatic validation program to
>> > reduce
>> > >> the burden on validators?
>> > >
>> > > I am in favour of this idea. At least some of the validations can be
>> done
>> > > automatically, like checking GPG signatures.
>> > > Or we can just run some part of the integration CI process on the
>> release
>> > > artifacts.
>> >
>> > The checksum checking burden is an intentional part of the release
>> > process. That said I often use a verification shell script.
>> >
>> > #!/bin/bash
>> >
>> > export DISTURL='https://dist.apache.org/repos/dist/dev'
>> > export PROJECT=${1}
>> > export ARTIFACT=${2}
>> > export DISTRO=${DISTURL}/${PROJECT}/${ARTIFACT}
>> >
>> > echo ${DISTRO}
>> >
>> > export TMPDIR=/tmp/${PROJECT}
>> >
>> > mkdir -p $TMPDIR
>> > cd $TMPDIR
>> > pwd
>> >
>> > curl -f -L ${DISTRO} --output ${ARTIFACT}
>> > curl -f -L ${DISTRO}.asc --output ${ARTIFACT}.asc
>> > curl -f -L ${DISTRO}.sha256 --output ${ARTIFACT}.sha256
>> > curl -f -L ${DISTRO}.sha512 --output ${ARTIFACT}.sha512
>> >
>> > echo 'Check signature'
>> > gpg --verify ${ARTIFACT}.asc
>> > echo 'Compare checksum to sha256'
>> > cat ${ARTIFACT}.sha256
>> > shasum -a 256 ${ARTIFACT}
>> > echo 'Compare checksum to sha512'
>> > cat ${ARTIFACT}.sha512
>> > shasum -a 512 ${ARTIFACT}
>> > echo
>> >
>> >
>> > >
>> > > And furthermore, I think we can consider using a BOT (like Github
>> Action)
>> > > to make the release candidates.
>> > > The following release steps require quite a lot of time and a stable
>> > > network.
>> > > - 3.1 Build RPM and DEB packages
>> >
>> > These are considered to be convenience binaries. Only the RM is required
>> > to build them. It’s extra and appreciated if they are built and
>> reviewed by
>> > others in the VOTE. Should the project attempt to start producing
>> > repeatable builds then we can also verify.
>> >
>> > > - 4. Sign and stage the artifacts
>> >
>> > It needs to be a manual script, but that is not too different from a
>> > checker script.
>> >
>> > > - 5. Stage artifacts in maven
>> > > I believe once we make the release process easier, our future version
>> > > releases will be on time more often.
>> >
>> > The most important part of the release is the source release and this
>> > should be the focus during a VOTE.
>> >
>> > Perhaps we need a more nuanced VOTE email. Here is an example from
>> Apache
>> > OpenOffice where there are some 240 artifacts in a release Source + (4
>> > linux builds + 1 macOS build + 1 windows build) * 41 languages.
>> >
>> > ———
>> >
>> > I am calling a VOTE on releasing the source and complimentary community
>> > builds of
>> > Apache OpenOffice 4.1.13-RC1 as GA.
>> >
>> > These artifacts can be found at:
>> >
>> > https://dist.apache.org/repos/dist/dev/openoffice/4.1.13-RC1/
>> >
>> > Please cast your vote:
>> >
>> > The Release Candidate is good for production/GA:
>> >
>> > [ ] yes / +1
>> >
>> > [ ] no / -1
>> >
>> > My vote is based on
>> >
>> > [ ] binding (member of PMC)
>> >
>> > [ ] I have built and tested the RC from source on platform [ ]
>> >
>> > [ ] I have tested the binary RC on platform [ ]
>> >
>> > This vote will be open for 7 days to allow for sufficient time
>> > for testing, review, and voting.
>> >
>> > ——
>> >
>> > Best Regards,
>> > Dave
>> >
>> > >
>> > > [1]
>> > >
>> >
>> https://github.com/apache/pulsar/wiki/Create-GPG-keys-to-sign-release-artifacts
>> > >
>> > > BR,
>> > > Haiting
>> > >
>> > > On Fri, Aug 12, 2022 at 6:12 PM PengHui Li <peng...@apache.org>
>> wrote:
>> > >
>> > >> Thanks for raising this question.
>> > >>
>> > >> Maybe we'd better move the release process doc and validation doc
>> > >> to the codebase, not the wiki pages.
>> > >>
>> > >> - Only committers can update the wiki pages
>> > >> - The changes without review
>> > >>
>> > >> After moving to the pulsar codebase
>> > >>
>> > >> - Everyone can contribute to the validation doc
>> > >> - The release process doc update can get reviewers to review
>> > >>
>> > >> I think there are multiple issues that need to be resolved for the
>> > release
>> > >> process
>> > >>
>> > >> - Have the Python client(Linux, osx) at the RC stage, I think
>> currently
>> > we
>> > >> only have the C++ client for RC, but push to pypi after the RC gets
>> > passed
>> > >> - Add validation process for the Python and C++ client
>> > >> - Add the Go function and Python function validation process
>> > >> - Add a script for building images for RC
>> > >> - Add images validation process
>> > >>
>> > >> And another point is can we have an automatic validation program to
>> > reduce
>> > >> the burden on validators?
>> > >> I'm not sure if it is acceptable.
>> > >>
>> > >> Thanks,
>> > >> Penghui
>> > >>
>> > >> On Fri, Aug 12, 2022 at 4:50 PM Haiting Jiang <
>> jianghait...@gmail.com>
>> > >> wrote:
>> > >>
>> > >>>> the 7th step is "Write release notes", should we execute this
>> > >>>> step later?
>> > >>>
>> > >>> From what I see, the release note can be postponed after the voting
>> > >>> process.
>> > >>> And it's not part of the voting content and does not affect whether
>> we
>> > >>> should cut a new release candidate.
>> > >>>
>> > >>>> In addition, I found the previous candidate [2] includes the docker
>> > >>>> images, which is not included in the template of the 8th step "Run
>> the
>> > >>>> vote". It seems to be the 10th step "Publish Docker Images".
>> > >>>
>> > >>> Confused +1, If we do add docker image as part of release vote, we
>> > should
>> > >>> also add validation method in [1]
>> > >>>
>> > >>> [1]
>> https://github.com/apache/pulsar/wiki/Release-Candidate-Validation
>> > >>>
>> > >>> Thanks,
>> > >>> Haiting
>> > >>>
>> > >>> On Thu, Aug 11, 2022 at 9:49 PM Yunze Xu
>> <y...@streamnative.io.invalid
>> > >
>> > >>> wrote:
>> > >>>
>> > >>>> Hi all,
>> > >>>>
>> > >>>> Recently I'm working on the release of 2.8.4 and it's near the
>> vote of
>> > >>>> the 1st candidate but I have some questions.
>> > >>>>
>> > >>>> From the tutorial [1] we can see, the 8th step is "Run the vote".
>> > >>>> However, the 7th step is "Write release notes", should we execute
>> this
>> > >>>> step later? I see the 16th step is also "Write release notes" but
>> the
>> > >>>> 16th step at the beginning of "Release workflow" section is "Update
>> > >>>> the site".
>> > >>>>
>> > >>>> In addition, I found the previous candidate [2] includes the docker
>> > >>>> images, which is not included in the template of the 8th step "Run
>> the
>> > >>>> vote". It seems to be the 10th step "Publish Docker Images".
>> > >>>>
>> > >>>> It seems that the documents are not maintained well, which really
>> > >>>> makes me confused. Therefore, before voting for the 1st candidate,
>> I
>> > >>>> want to get some clarifications from the mail list.
>> > >>>>
>> > >>>> [1] https://github.com/apache/pulsar/wiki/Release-process
>> > >>>> [2]
>> https://lists.apache.org/thread/q0g5ko617rb77b1wqpxy94ks5mq48d88
>> > >>>>
>> > >>>>
>> > >>>> Thanks,
>> > >>>> Yunze
>> > >>>>
>> > >>>>
>> > >>>>
>> > >>>>
>> > >>>>
>> > >>>
>> > >>
>> >
>> >
>>
>

Reply via email to