1
0
docker-letsencrypt-nginx-pr.../test/setup/setup-boulder.sh
2020-12-28 16:27:16 +01:00

56 lines
1.6 KiB
Bash
Executable File

#!/bin/bash
set -e
acme_endpoint='http://boulder:4001/directory'
setup_boulder() {
export GOPATH=${GITHUB_WORKSPACE}/go
[[ ! -d $GOPATH/src/github.com/letsencrypt/boulder ]] \
&& git clone https://github.com/letsencrypt/boulder \
"$GOPATH/src/github.com/letsencrypt/boulder"
pushd "$GOPATH/src/github.com/letsencrypt/boulder"
git checkout release-2020-12-14
if [[ "$(uname)" == 'Darwin' ]]; then
# Set Standard Ports
for file in test/config/va.json test/config/va-remote-a.json test/config/va-remote-b.json; do
sed -i '' 's/ 5002/ 80/g' "$file"
sed -i '' 's/ 5001/ 443/g' "$file"
done
# Modify custom rate limit
sed -i '' 's/le.wtf,le1.wtf/le1.wtf,le2.wtf,le3.wtf/g' test/rate-limit-policies.yml
else
# Set Standard Ports
for file in test/config/va.json test/config/va-remote-a.json test/config/va-remote-b.json; do
sed --in-place 's/ 5002/ 80/g' "$file"
sed --in-place 's/ 5001/ 443/g' "$file"
done
# Modify custom rate limit
sed --in-place 's/le.wtf,le1.wtf/le1.wtf,le2.wtf,le3.wtf/g' test/rate-limit-policies.yml
fi
docker-compose build --pull
docker-compose run -d \
--use-aliases \
--name boulder \
-e FAKE_DNS=10.77.77.1 \
--service-ports \
boulder
popd
}
wait_for_boulder() {
i=0
until docker exec boulder bash -c "curl ${acme_endpoint:?} >/dev/null 2>&1"; do
if [ $i -gt 300 ]; then
echo "Boulder has not started for 5 minutes, timing out."
exit 1
fi
i=$((i + 5))
echo "$acme_endpoint : connection refused, Boulder isn't ready yet. Waiting."
sleep 5
done
}
setup_boulder
wait_for_boulder