#!/usr/bin/env bash

#   Copyright The containerd Authors.

#   Licensed under the Apache License, Version 2.0 (the "License");
#   you may not use this file except in compliance with the License.
#   You may obtain a copy of the License at

#       http://www.apache.org/licenses/LICENSE-2.0

#   Unless required by applicable law or agreed to in writing, software
#   distributed under the License is distributed on an "AS IS" BASIS,
#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
#   See the License for the specific language governing permissions and
#   limitations under the License.

#
# Builds and installs imgcrypt including ctd-decoder and ctr-enc
# to /usr/local/bin.
#
set -eu -o pipefail

script_dir="$(cd -- "$(dirname -- "$0")" > /dev/null 2>&1; pwd -P)"

: "${IMGCRYPT_VERSION:=$(cat "${script_dir}/imgcrypt-version")}"
: "${IMGCRYPT_REPO:=https://github.com/containerd/imgcrypt.git}" # Default repo

TMPROOT=$(mktemp -d)
git clone "${IMGCRYPT_REPO}" "${TMPROOT}"/imgcrypt
pushd "${TMPROOT}"/imgcrypt
git checkout "${IMGCRYPT_VERSION}"
make
make containerd-release -e DESTDIR="${DESTDIR}/usr/local"

popd
rm -fR "${TMPROOT}"
