Over the course of releases, we've had different types of feedback on what should be in the email, from which links to include, to which content to include. While we have been following Dubbo's release guide, and adjusting with feedback, different people keep telling us to do something different. When you revise the below templates based on feedback, please cite in the change the email thread so that we have some history. Ideally, over time these templates no longer need constant changes.

Variables

  • ${PROJECT_FRIENDLY_NAME} ex Zipkin Dependencies

  • ${MODULE} github repo minus the prefix incubator-. Ex zipkin-dependencies for https://github.com/apache/incubator-zipkin-dependencies
  • ${VERSION} ex 2.14.0 release tag will be prefixed with 'v', ex if version is 2.14.0, tag is v2.14.0
  • ${GIT_HASH} the git hash on the release tag. ex `git log v2.14.0` will show the hash to put here
  • ${GPG_KEY} the last 8 characters of your public key. Ex Adrian's is BB67A050
  • ${KNOWN_ISSUES} Issues that describe concerns that are understood to fix before graduation and/or the next release. Example below, but don't copy/paste as 1. is already fixed.
1. Zipkin-UI contains vendor libraries which will be removed during the
incubation
2. Issues blocking graduation, but not releases are documented below:
https://github.com/apache/incubator-zipkin/issues/2544

Step 1: Podling Vote

When we graduate, our vote thread will result directly in an ASF source release per http://www.apache.org/legal/release-policy.html#release-approval

Since we haven't graduated, we are issuing podling releases, not ASF releases. This has a few side effects including the DISCLAIMER file, different upload directories etc: https://incubator.apache.org/guides/releasemanagement.html

Definitely encourage all zipkin IPMC members to vote. However, pay special attention to nudging mentors. We need 3 votes eventually, and these can happen in the podling vote or the subsequent IPMC one. Mentor votes carry over to the latter and help reduce delays.



to: dev@zipkin.apache.org
subject: [VOTE] Release Apache ${PROJECT_FRIENDLY_NAME} (incubating) version ${VERSION}

Hello Zipkin Community,

This is a call for the vote to release Apache ${PROJECT_FRIENDLY_NAME}
(incubating) version ${VERSION}.

The release candidates:
https://dist.apache.org/repos/dist/dev/incubator/zipkin/${MODULE}/${VERSION}/

Git tag for the release:
https://github.com/apache/incubator-${MODULE}/tree/v${VERSION}

Hash for the release tag: ${GIT_HASH}

Release Notes:
https://github.com/apache/incubator-${MODULE}/releases/tag/v${VERSION}

The artifacts have been signed with Key: ${GPG_KEY}, which can be found in
the keys file:

https://www.apache.org/dist/incubator/zipkin/KEYS

Verification Hints:
For your convenience, the below includes a detailed how-to on verifying a
source release. Please note that this document is a
work-in-progress
https://cwiki.apache.org/confluence/display/ZIPKIN/Verifying+a+Source+Release

The vote will be open for at least 72 hours or until the necessary number
of votes are reached.

Please vote accordingly:

[ ] +1 approve
[ ] +0 no opinion
[ ] -1 disapprove with the reason

Known Issues:

   ${KNOWN_ISSUES}

Thanks,
The Apache Zipkin (Incubating) Team

Step 2:  IPMC Vote

After the podling vote, as soon as possible, raise the IPMC vote per https://incubator.apache.org/guides/releasemanagement.html


Notably, you should carry over votes from mentors as they are binding for this vote. We need 3 votes in total, and in some cases we carry over all we need and just need to wait the 3 day timeout. Usually, no one in the IPMC votes except our mentors. To pre-empt waiting in vain for 3 days, if you are missing 3 votes, remind mentors privately to vote.

Variables

  • ${VOTING_THREAD} permalink to the podling vote from https://lists.apache.org/list.html?dev@zipkin.apache.org

  • ${PROJECT_DESCRIPTION} as the IPMC may not know about the project. There is an appendix for project descriptions at the bottom of this wiki.
  • ${MENTORS_VOTED} names of mentors who added a +1 to the podling vote. ex
+1 Willem Ning Jiang (binding)
+1 Sheng Wu (binding)


to: general@incubator.apache.org
subject: [VOTE] Release Apache ${PROJECT_FRIENDLY_NAME} (incubating) version ${VERSION}


Hello IPMC,

The Apache Zipkin (incubating) community has voted on and approved a proposal to
release Apache ${PROJECT_FRIENDLY_NAME} (incubating) version ${VERSION}.
The voting thread can be found here: ${VOTING_THREAD}

Here are the binding +1 votes from mentors, carrying over from the podling vote:
${MENTORS_VOTED}

We now kindly request the Incubator PMC members review and vote on this
incubator release.

${PROJECT_DESCRIPTION}

The release candidates:
https://dist.apache.org/repos/dist/dev/incubator/zipkin/${MODULE}/${VERSION}/

Git tag for the release:
https://github.com/apache/incubator-${MODULE}/tree/v${VERSION}

Hash for the release tag: ${GIT_HASH}

Release Notes:
https://github.com/apache/incubator-${MODULE}/releases/tag/v${VERSION}

The artifacts have been signed with Key: ${GPG_KEY}, which can be found in
the keys file:

https://www.apache.org/dist/incubator/zipkin/KEYS

The vote will be open for at least 72 hours or until the necessary number
of votes are reached.

Please vote accordingly:

[ ] +1 approve
[ ] +0 no opinion
[ ] -1 disapprove with the reason

Known Issues:

   ${KNOWN_ISSUES}

Thanks,
The Apache Zipkin (Incubating) Team

Step 3:  Successful IPMC Result


When 3 days pass, or you get 3 votes, issue the vote result and finish the release process.

Variables



to: general@incubator.apache.org
subject: [RESULT] [VOTE] Release Apache ${PROJECT_FRIENDLY_NAME} (incubating) version ${VERSION}


Thanks to everyone that participated. The vote to release Release Apache ${PROJECT_FRIENDLY_NAME} (incubating) version ${VERSION} is now closed.

The vote PASSED with ${VOTE_SUMMARY}:
+1 ${VOTER_1} (binding)
+1 ${VOTER_2} (binding)
+1 ${VOTER_3} (binding)

We will work to complete the release process.

Thanks,
The Apache Zipkin (Incubating) Team

Step 4: Announcement

TODO: copy/paste/find/replace here for now https://lists.apache.org/thread.html/57cf50b9074cc4cba00e63ab7c206d04fa7dc45add7091edd82b950e@%3Cgeneral.incubator.apache.org%3E

Project Descriptions

Zipkin Server and Core Library

Apache Zipkin (incubating) is a distributed tracing system. It helps gather 
timing data needed to troubleshoot latency problems in service architectures.
Features include both the collection and lookup of this data.

This source includes a dependency-free Java library and a spring-boot server.
Storage options include in-memory, MySQL, Apache Cassandra and Elasticsearch.
Transport options include HTTP, gRPC, Scribe (Apache Thrift), RabbitMQ and
Apache Kafka.

Zipkin Api

Apache Zipkin API (incubating) includes service and model definitions used for
Zipkin-compatible services.

This source includes OpenAPI, Protocol Buffers and Apache Thrift definitions. As
these IDL files are languagage agnostic, there are no compilation instructions
needed or included.

Zipkin B3 Propagation

Apache Zipkin B3 Propagation (incubating) includes a specification for the header
"b3" and those that start with "x-b3-". These headers are used for trace context
propagation across service boundaries.

This source includes a markdown formatted specification. There are no compilation
instructions needed or included.

Zipkin Brave

Apache Zipkin Brave (incubating) is a distributed tracing instrumentation
library. Brave typically intercepts production requests to gather timing data,
correlate and propagate trace contexts. While typically trace data is sent to
Zipkin server, third-party plugins are available to send to alternate services
such as Amazon X-Ray.

This source includes dependency-free Java libraries and instrumentation for
common components used in production services. For example, this includes trace
filters for Servlet and log correlation for Apache Log4J.

Zipkin Brave for Apache Cassandra

Apache Zipkin Brave (incubating) for Apache Cassandra allows you to trace 
activities started by Datastax Java Driver for Apache Cassandra all the way to
inside Apache Cassandra itself.

This source includes tracing wrappers for Datastax Java Driver and an Apache
Cassandra tracing implementation.

Zipkin Brave for Apache Karaf

Apache Zipkin Brave (incubating) for Apache Karaf sets up tracing components 
such that tools built with Karaf needn't configure these explicitly.

This source includes OSGi services for tracing and reporting components.

Zipkin Dependencies

Apache Zipkin Dependencies (incubating) collects spans from storage, analyzes
links between services, and stores them for later presentation in the web UI.

This source includes an Apache Spark job. Storage options include MySQL, Apache
Cassandra and Elasticsearch.

Zipkin Layout Factory

Apache Zipkin Layout Factory (Incubating) is an assembly that allows extensions,
such as custom collectors or storage implementations.

This source includes a spring-boot-plugin layout which creates artifacts of type
module. spring-boot servers can load these using PropertiesLoader.

Zipkin Reporter Java

Apache Zipkin Reporter (incubating) buffers and sends trace data collected from
tracer libraries to a Zipkin compatible backend.

This source includes a Java reporting library with transport-specific senders.
Transport options include HTTP, Scribe (Apache Thrift), RabbitMQ and Apache
Kafka.


  • No labels