1
0
Fork 0
mirror of https://github.com/moby/moby.git synced 2022-11-09 12:21:53 -05:00
moby--moby/hack/make/release-rpm
Sebastiaan van Stijn a08c955e30 Remove Fedora 21 from RPM build as it is EOL
Fedora 21 is EOL'd as of December 1st, 2015.

Announcement:
https://lists.fedoraproject.org/pipermail/announce/2015-November/003296.html

Fedora 21 will reach end of life on 2015-12-01, and no further updates
will be pushed out after that time. Additionally, with the recent
release of Fedora 23, no new packages will be added to the Fedora 21
collection.

Please see https://fedoraproject.org/wiki/DNF_system_upgrade for more
information on upgrading from Fedora 21 to a newer release.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2015-12-20 00:42:17 +01:00

75 lines
2.3 KiB
Bash
Executable file

#!/bin/bash
set -e
# This script creates the yum repos for the .rpm files generated by hack/make/build-rpm
#
# The following can then be used as a yum repo:
# http://yum.dockerproject.org/repo/$release/$distro/$distro-version
#
# For example:
# http://yum.dockerproject.org/repo/main/fedora/23
# http://yum.dockerproject.org/repo/testing/centos/7
# http://yum.dockerproject.org/repo/experimental/fedora/23
# http://yum.dockerproject.org/repo/main/centos/7
#
# ... and so on and so forth for the builds created by hack/make/build-rpm
: ${DOCKER_RELEASE_DIR:=$DEST}
YUMDIR=$DOCKER_RELEASE_DIR/yum/repo
: ${GPG_KEYID:=releasedocker}
# manage the repos for each distribution separately
distros=( fedora centos opensuse oraclelinux )
# get the release
release="main"
if [[ "$VERSION" == *-rc* ]]; then
release="testing"
fi
if [ $DOCKER_EXPERIMENTAL ] || [[ "$VERSION" == *-dev ]] || [ -n "$(git status --porcelain)" ]; then
release="experimental"
fi
for distro in "${distros[@]}"; do
# Setup the yum repo
REPO=$YUMDIR/$release/$distro
for dir in contrib/builder/rpm/$distro-*/; do
version="$(basename "$dir")"
suite="${version##*-}"
# if the directory does not exist, initialize the yum repo
if [[ ! -d $REPO/$suite/Packages ]]; then
mkdir -p "$REPO/$suite/Packages"
createrepo --pretty "$REPO/$suite"
fi
# path to rpms
RPMFILE=( "bundles/$VERSION/build-rpm/$version/RPMS/"*"/docker-engine"*.rpm "bundles/$VERSION/build-rpm/$version/SRPMS/docker-engine"*.rpm )
# if we have a $GPG_PASSPHRASE we may as well
# sign the rpms before adding to repo
if [ ! -z $GPG_PASSPHRASE ]; then
# export our key to rpm import
gpg --armor --export "$GPG_KEYID" > /tmp/gpg
rpm --import /tmp/gpg
# sign the rpms
echo "yes" | setsid rpm \
--define "_gpg_name $GPG_KEYID" \
--define "_signature gpg" \
--define "__gpg_check_password_cmd /bin/true" \
--define "__gpg_sign_cmd %{__gpg} gpg --batch --no-armor --passphrase '$GPG_PASSPHRASE' --no-secmem-warning -u '%{_gpg_name}' --sign --detach-sign --output %{__signature_filename} %{__plaintext_filename}" \
--resign "${RPMFILE[@]}"
fi
# copy the rpms to the packages folder
cp "${RPMFILE[@]}" "$REPO/$suite/Packages"
# update the repo
createrepo --pretty --update "$REPO/$suite"
done
done