Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

dmaketgz: release tarball generator script using docker #13388

Closed
wants to merge 4 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
4 changes: 1 addition & 3 deletions docs/RELEASE-PROCEDURE.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,9 +23,7 @@ in the source code repo
tag and we use underscores instead of dots in the version number. Make sure
the tag is GPG signed (using -s).

- run `./maketgz 7.34.0` to build the release tarballs. It is important that
you run this on a machine with the correct set of autotools etc installed as
this is what is shipped and used by most users on \*nix like systems.
- run `./scripts/dmaketgz 7.34.0` to build the release tarballs.

- push the git commits and the new tag

Expand Down
3 changes: 2 additions & 1 deletion scripts/Makefile.am
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,8 @@
###########################################################################

EXTRA_DIST = coverage.sh completion.pl firefox-db2pem.sh checksrc.pl \
mk-ca-bundle.pl schemetable.c cd2nroff nroff2cd cdall cd2cd managen
mk-ca-bundle.pl schemetable.c cd2nroff nroff2cd cdall cd2cd managen \
dmaketgz

ZSH_FUNCTIONS_DIR = @ZSH_FUNCTIONS_DIR@
FISH_FUNCTIONS_DIR = @FISH_FUNCTIONS_DIR@
Expand Down
52 changes: 52 additions & 0 deletions scripts/dmaketgz
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
#!/bin/sh
# docker-maketgz
#
#***************************************************************************
# _ _ ____ _
# Project ___| | | | _ \| |
# / __| | | | |_) | |
# | (__| |_| | _ <| |___
# \___|\___/|_| \_\_____|
#
# Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
#
# This software is licensed as described in the file COPYING, which
# you should have received as part of this distribution. The terms
# are also available at https://curl.se/docs/copyright.html.
#
# You may opt to use, copy, modify, merge, publish, distribute and/or sell
# copies of the Software, and permit persons to whom the Software is
# furnished to do so, under the terms of the COPYING file.
#
# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
# KIND, either express or implied.
#
# SPDX-License-Identifier: curl
#
###########################################################################

version="${1:-}"

if [ -z "$version" ]; then
echo "Specify a version number!"
exit
fi

make distclean
docker build \
--build-arg SOURCE_DATE_EPOCH="$(date -u +%s)" \
--build-arg UID="$(id -u)" \
--build-arg GID="$(id -g)" \
-t curl/curl .

run="run --rm -it -u $(id -u):$(id -g) -v $(pwd):/usr/src -w /usr/src curl/curl"
vszakats marked this conversation as resolved.
Show resolved Hide resolved

# shellcheck disable=SC2086
# "Double quote to prevent globbing and word splitting" on the $run use below
docker $run autoreconf -fi
# shellcheck disable=SC2086
docker $run ./configure --without-ssl --without-libpsl
# shellcheck disable=SC2086
docker $run make -sj8
# shellcheck disable=SC2086
docker $run ./maketgz $version
bagder marked this conversation as resolved.
Show resolved Hide resolved