This is an automated email from the ASF dual-hosted git repository.
cmcfarlen pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/trafficserver.git
The following commit(s) were added to refs/heads/master by this push:
new b461694923 Add ASF release targets (#11672)
b461694923 is described below
commit b4616949232f74871b329e1e6979018a79ac41ab
Author: Chris McFarlen <[email protected]>
AuthorDate: Wed Aug 14 09:58:00 2024 -0500
Add ASF release targets (#11672)
---
CMakeLists.txt | 66 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 66 insertions(+)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index b9d37775d2..9d395bc6c8 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -838,6 +838,72 @@ configure_file(Findtsapi.cmake.in Findtsapi.cmake @ONLY)
install(FILES "${PROJECT_BINARY_DIR}/ts.pc" DESTINATION
${CMAKE_INSTALL_LIBDIR}/pkgconfig)
install(FILES "${PROJECT_BINARY_DIR}/Findtsapi.cmake" DESTINATION
${CMAKE_INSTALL_LIBDIR}/cmake)
+# Release Targets
+set(DISTTMP /tmp/asf-dist)
+set(DISTFILENAME trafficserver-${TS_VERSION_STRING})
+
+add_custom_target(
+ asf-distdir
+ COMMENT "Create distribution tarball for ASF"
+ WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}
+ COMMAND rm -rf /tmp/asf-dist && mkdir /tmp/asf-dist
+ COMMAND git archive --format=tar HEAD | tar --delete ci | tar -C
/tmp/asf-dist -xf -
+ COMMAND grep -v img.shields.io /tmp/asf-dist/README.md >
/tmp/asf-dist/README.md.clean
+ COMMAND mv /tmp/asf-dist/README.md.clean /tmp/asf-dist/README.md
+)
+
+add_custom_target(
+ asf-dist
+ COMMENT "Create distribution tarball for ASF release"
+ DEPENDS asf-distdir
+ WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}
+ COMMAND tar -C ${DISTTMP} -c . | bzip2 -9 -c > ${DISTFILENAME}.tar.bz2
+ COMMAND rm -rf ${DISTTMP}
+)
+
+add_custom_target(
+ asf-dist-rc
+ COMMENT "Create distribution tarball for ASF release candidate"
+ DEPENDS asf-distdir
+ WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}
+ COMMAND tar -C ${DISTTMP} -c . | bzip2 -9 -c >
${DISTFILENAME}-rc$ENV{RC}.tar.bz2
+ COMMAND rm -rf ${DISTTMP}
+)
+
+add_custom_target(
+ asf-dist-sign
+ COMMENT "Create and sign distribution tarball for ASF release"
+ DEPENDS asf-dist
+ WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}
+ COMMAND sha512sum -b ${DISTFILENAME}.tar.bz2 > ${DISTFILENAME}.tar.bz2.sha512
+ COMMAND gpg --armor --output ${DISTFILENAME}.tar.bz2.asc --detach-sig
${DISTFILENAME}.tar.bz2
+)
+
+add_custom_target(
+ asf-dist-sign-rc
+ COMMENT "Create and sign distribution tarball for ASF release candidate"
+ DEPENDS asf-dist-rc
+ WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}
+ COMMAND sha512sum -b ${DISTFILENAME}-rc$ENV{RC}.tar.bz2 >
${DISTFILENAME}-rc$ENV{RC}.tar.bz2.sha512
+ COMMAND gpg --armor --output ${DISTFILENAME}-rc$ENV{RC}.tar.bz2.asc
--detach-sig ${DISTFILENAME}-rc$ENV{RC}.tar.bz2
+)
+
+add_custom_target(
+ release
+ COMMENT "Create release"
+ DEPENDS asf-dist-sign
+ WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}
+ COMMAND git tag -fs -m "Release ${TS_VERSION_STRING}" ${TS_VERSION_STRING}
+)
+
+add_custom_target(
+ rel-candidate
+ COMMENT "Create release candidate"
+ DEPENDS asf-dist-sign-rc
+ WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}
+ COMMAND git tag -fs -m "Release Candidate ${TS_VERSION_STRING}-rc$ENV{RC}"
${TS_VERSION_STRING}-rc$ENV{RC}
+)
+
# Display build summary
include(CMakePrintHelpers)
message(STATUS "Build Summary:")