chore: backup automatically

This commit is contained in:
Elio Bischof
2023-05-23 18:40:58 +02:00
parent 06a4cfe388
commit 5748aab4d4
4 changed files with 31 additions and 6 deletions

5
.gitignore vendored
View File

@@ -7,7 +7,8 @@ dist
dist-ssr dist-ssr
*.local *.local
.env .env
./apps/login/.env.local.bak apps/login/.env.local.?.bak
apps/login/.env.local.??.bak
.cache .cache
server/dist server/dist
public/dist public/dist
@@ -15,4 +16,4 @@ public/dist
packages/zitadel-server/src/app/proto packages/zitadel-server/src/app/proto
packages/zitadel-client/src/app/proto packages/zitadel-client/src/app/proto
apps/login/.vscode apps/login/.vscode

View File

@@ -41,8 +41,11 @@ or have limited resources on your local machine.
### Developing Against Your Local ZITADEL Instance ### Developing Against Your Local ZITADEL Instance
```sh ```sh
# Backup your ./apps/login/.env.local if it exists to ./apps/login/.env.local.bak # To have your service user key and environment file written with the correct ownership, export your current users ID.
mv ./apps/login/.env.local ./apps/login/.env.local.bak export ZITADEL_DEV_UID="$(id -u)"
# Pull images
docker compose --file ./acceptance/docker-compose.yaml pull
# Run ZITADEL and configure ./apps/login/.env.local # Run ZITADEL and configure ./apps/login/.env.local
docker compose --file ./acceptance/docker-compose.yaml run setup docker compose --file ./acceptance/docker-compose.yaml run setup

View File

@@ -2,7 +2,7 @@ version: '3.8'
services: services:
zitadel: zitadel:
user: '$UID' user: '${ZITADEL_DEV_UID}'
image: '${ZITADEL_IMAGE:-ghcr.io/zitadel/zitadel:latest}' image: '${ZITADEL_IMAGE:-ghcr.io/zitadel/zitadel:latest}'
command: 'start-from-init --masterkey "MasterkeyNeedsToHave32Characters" --tlsMode disabled --config /zitadel.yaml --steps /zitadel.yaml' command: 'start-from-init --masterkey "MasterkeyNeedsToHave32Characters" --tlsMode disabled --config /zitadel.yaml --steps /zitadel.yaml'
ports: ports:
@@ -34,7 +34,7 @@ services:
- zitadel - zitadel
setup: setup:
user: '$UID' user: '${ZITADEL_DEV_UID}'
container_name: setup container_name: setup
build: . build: .
environment: environment:

View File

@@ -44,6 +44,27 @@ echo "${ORG_RESPONSE}" | jq
ORG_ID=$(echo -n ${ORG_RESPONSE} | jq -r '.org.id') ORG_ID=$(echo -n ${ORG_RESPONSE} | jq -r '.org.id')
echo "Extracted default org id ${ORG_ID}" echo "Extracted default org id ${ORG_ID}"
ENVIRONMENT_BACKUP_FILE=${WRITE_ENVIRONMENT_FILE}
# If the original file already exists, rename it
if [[ -e ${WRITE_ENVIRONMENT_FILE} ]]; then
if grep -q 'localhost' ${WRITE_ENVIRONMENT_FILE}; then
echo "Current environment file ${WRITE_ENVIRONMENT_FILE} contains localhost. Overwriting:"
cat ${WRITE_ENVIRONMENT_FILE}
else
i=0
# If a backup file already exists, increment counter until a free filename is found
while [[ -e ${ENVIRONMENT_BACKUP_FILE}.${i}.bak ]]; do
let "i++"
if [[ ${i} -eq 50 ]]; then
echo "Warning: Too many backup files (limit is 50), overwriting ${ENVIRONMENT_BACKUP_FILE}.${i}.bak"
break
fi
done
mv ${WRITE_ENVIRONMENT_FILE} ${ENVIRONMENT_BACKUP_FILE}.${i}.bak
echo "Renamed existing environment file to ${ENVIRONMENT_BACKUP_FILE}.${i}.bak"
fi
fi
echo "ZITADEL_API_URL=${AUDIENCE} echo "ZITADEL_API_URL=${AUDIENCE}
ZITADEL_ORG_ID=${ORG_ID} ZITADEL_ORG_ID=${ORG_ID}
ZITADEL_SERVICE_USER_TOKEN=${TOKEN}" > ${WRITE_ENVIRONMENT_FILE} ZITADEL_SERVICE_USER_TOKEN=${TOKEN}" > ${WRITE_ENVIRONMENT_FILE}