| #!/bin/bash |
| set -e |
| |
| # This script modifies the install.sh script for domains and keys other than |
| # those used by the primary opensource releases. |
| # |
| # You can provide `url`, `yum_url`, `apt_url` and optionally `gpg_fingerprint` |
| # or `GPG_KEYID` as environment variables, or the defaults for open source are used. |
| # |
| # The lower-case variables are substituted into install.sh. |
| # |
| # gpg_fingerprint and GPG_KEYID are optional, defaulting to the opensource release |
| # key ("releasedocker"). Other GPG_KEYIDs will require you to mount a volume with |
| # the correct contents to /root/.gnupg. |
| # |
| # It outputs the modified `install.sh` file to $DOCKER_RELEASE_DIR (default: $DEST) |
| # |
| # Example usage: |
| # |
| # docker run \ |
| # --rm \ |
| # --privileged \ |
| # -e "GPG_KEYID=deadbeef" \ |
| # -e "GNUPGHOME=/root/.gnupg" \ |
| # -v $HOME/.gnupg:/root/.gnupg \ |
| # -v $(pwd):/go/src/github.com/docker/docker/bundles \ |
| # "$IMAGE_DOCKER" \ |
| # hack/make.sh install-script |
| |
| : ${DOCKER_RELEASE_DIR:=$DEST} |
| : ${GPG_KEYID:=releasedocker} |
| |
| DEFAULT_URL="https://get.docker.com/" |
| DEFAULT_APT_URL="https://apt.dockerproject.org" |
| DEFAULT_YUM_URL="https://yum.dockerproject.org" |
| DEFAULT_GPG_FINGERPRINT="58118E89F3A912897C070ADBF76221572C52609D" |
| |
| : ${url:=$DEFAULT_URL} |
| : ${apt_url:=$DEFAULT_APT_URL} |
| : ${yum_url:=$DEFAULT_YUM_URL} |
| if [[ "$GPG_KEYID" == "releasedocker" ]] ; then |
| : ${gpg_fingerprint:=$DEFAULT_GPG_FINGERPRINT} |
| fi |
| |
| DEST_FILE="$DOCKER_RELEASE_DIR/install.sh" |
| |
| bundle_install_script() { |
| mkdir -p "$DOCKER_RELEASE_DIR" |
| |
| if [[ -z "$gpg_fingerprint" ]] ; then |
| # NOTE: if no key matching key is in /root/.gnupg, this will fail |
| gpg_fingerprint=$(gpg --with-fingerprint -k "$GPG_KEYID" | grep "Key fingerprint" | awk -F "=" '{print $2};' | tr -d ' ') |
| fi |
| |
| cp hack/install.sh "$DEST_FILE" |
| sed -i.bak 's#^url=".*"$#url="'"$url"'"#' "$DEST_FILE" |
| sed -i.bak 's#^apt_url=".*"$#apt_url="'"$apt_url"'"#' "$DEST_FILE" |
| sed -i.bak 's#^yum_url=".*"$#yum_url="'"$yum_url"'"#' "$DEST_FILE" |
| sed -i.bak 's#^gpg_fingerprint=".*"$#gpg_fingerprint="'"$gpg_fingerprint"'"#' "$DEST_FILE" |
| rm "${DEST_FILE}.bak" |
| } |
| |
| bundle_install_script |