mirror of
https://github.com/chevereto/docker.git
synced 2026-05-07 11:37:21 +02:00
improve sh
This commit is contained in:
@@ -1,5 +1,7 @@
|
||||
#!/bin/bash
|
||||
curl --request POST \
|
||||
#!/usr/bin/env bash
|
||||
set -e
|
||||
echo "* Creating ${HOSTNAME} CNAME record at CloudFlare"
|
||||
CLOUDFLARE_IDENTIFIER=$(curl --request POST \
|
||||
--url https://api.cloudflare.com/client/v4/zones/${CLOUDFLARE_ZONE_ID}/dns_records \
|
||||
--header "Content-Type: application/json" \
|
||||
--header "Authorization: Bearer ${CLOUDFLARE_TOKEN}" \
|
||||
@@ -9,4 +11,10 @@ curl --request POST \
|
||||
"type": "CNAME",
|
||||
"proxied": true,
|
||||
"ttl": 3600
|
||||
}' | jq -r '.result.id'
|
||||
}' | jq -r '.result.id')
|
||||
if [ "${CLOUDFLARE_IDENTIFIER}" == null ]; then
|
||||
echo "CloudFlare integration failure"
|
||||
exit 1
|
||||
fi
|
||||
echo "CLOUDFLARE_IDENTIFIER=${CLOUDFLARE_IDENTIFIER}" >>${NAMESPACE_FILE}
|
||||
echo "[OK] Hostname created @ ${CLOUDFLARE_IDENTIFIER}"
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
#!/bin/bash
|
||||
#!/usr/bin/env bash
|
||||
set -e
|
||||
PROJECT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" &>/dev/null && pwd)"
|
||||
curl --request DELETE \
|
||||
--url https://api.cloudflare.com/client/v4/zones/${CLOUDFLARE_ZONE_ID}/dns_records/${CLOUDFLARE_IDENTIFIER} \
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
#!/bin/bash
|
||||
#!/usr/bin/env bash
|
||||
set -e
|
||||
PROJECT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" &>/dev/null && pwd)"
|
||||
CLOUDFLARE_FILE_PATH=${PROJECT_DIR}/../nginx/cloudflare.conf
|
||||
cat >${CLOUDFLARE_FILE_PATH} <<EOM
|
||||
|
||||
@@ -2,8 +2,9 @@
|
||||
set -e
|
||||
PROJECT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" &>/dev/null && pwd)"
|
||||
CRON_FILE=/etc/cron.d/chevereto
|
||||
echo "* Creating ${CRON_FILE}"
|
||||
cat >${CRON_FILE} <<EOM
|
||||
* * * * * ${USER} ${PROJECT_DIR}/cron--run.sh >/dev/null 2>&1
|
||||
45 2 * * * ${USER} ${PROJECT_DIR}/cloudflare.sh >/dev/null 2>&1
|
||||
EOM
|
||||
echo ${CRON_FILE}
|
||||
echo "[OK] Cron file created @ ${CRON_FILE}"
|
||||
|
||||
@@ -1,23 +1,26 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
set -e
|
||||
|
||||
NAMESPACE="${NAMESPACE}"
|
||||
ADMIN_USER="${ADMIN_USER:-admin}"
|
||||
ADMIN_EMAIL="${ADMIN_EMAIL}"
|
||||
ADMIN_PASSWORD="$(openssl rand -base64 8)"
|
||||
|
||||
NAMESPACE=${NAMESPACE} make --no-print-directory provision &&
|
||||
NAMESPACE=${NAMESPACE} \
|
||||
ADMIN_PASSWORD=${ADMIN_PASSWORD} \
|
||||
ADMIN_EMAIL=${ADMIN_EMAIL} \
|
||||
ADMIN_USER=${ADMIN_USER} make --no-print-directory install
|
||||
|
||||
if [ -z "${CLOUDFLARE_A_NAME}" ]; then
|
||||
HOSTNAME="${DOMAIN}"
|
||||
echo "* CLOUDFLARE_A_NAME is not set. Skipping DNS creation."
|
||||
else
|
||||
HOSTNAME="${NAMESPACE}.${DOMAIN}"
|
||||
fi
|
||||
echo "* Using hostname ${HOSTNAME}"
|
||||
make --no-print-directory feedback feedback--compose feedback--url NAMESPACE=${NAMESPACE}
|
||||
make --no-print-directory namespace NAMESPACE=${NAMESPACE} HOSTNAME="${HOSTNAME}"
|
||||
if [ -n "${CLOUDFLARE_A_NAME}" ]; then
|
||||
make --no-print-directory cloudflare--create NAMESPACE=${NAMESPACE}
|
||||
fi
|
||||
make --no-print-directory up-d NAMESPACE=${NAMESPACE}
|
||||
make --no-print-directory install NAMESPACE=${NAMESPACE} ADMIN_USER=${ADMIN_USER} ADMIN_EMAIL=${ADMIN_EMAIL} ADMIN_PASSWORD=${ADMIN_PASSWORD}
|
||||
echo ""
|
||||
echo "🚀 Deployment complete!"
|
||||
|
||||
echo "[OK] Deployment complete!"
|
||||
NAMESPACE=${NAMESPACE} make --no-print-directory feedback--url
|
||||
|
||||
echo "Login details"
|
||||
echo "--"
|
||||
echo "Email: ${ADMIN_EMAIL}"
|
||||
|
||||
@@ -4,13 +4,14 @@ if [ -f "${NAMESPACE_FILE}" ]; then
|
||||
echo "[!] File ${NAMESPACE_FILE} already exists"
|
||||
exit 1
|
||||
fi
|
||||
echo "* Creating ${NAMESPACE_FILE}"
|
||||
if [ "${ENCRYPTION_KEY}" == "" ]; then
|
||||
ENCRYPTION_KEY=$(openssl rand -base64 32)
|
||||
echo '🔑 Using auto encryption key'
|
||||
echo '* 🔑 Using auto encryption key'
|
||||
fi
|
||||
mkdir -p $(dirname ${NAMESPACE_FILE})
|
||||
cat >${NAMESPACE_FILE} <<EOM
|
||||
HOSTNAME=${HOSTNAME}
|
||||
ENCRYPTION_KEY=${ENCRYPTION_KEY}
|
||||
EOM
|
||||
echo ${NAMESPACE_FILE}
|
||||
echo "[OK] Namespace file created @ ${NAMESPACE_FILE}"
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
set -e
|
||||
|
||||
ENV_FILE="./.env"
|
||||
|
||||
Reference in New Issue
Block a user