fix: use Docker volume for CI smoke data
This commit is contained in:
@@ -2,20 +2,24 @@
|
|||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
|
|
||||||
container_name="magent-ci-${GITHUB_RUN_ID:-local}-$$"
|
container_name="magent-ci-${GITHUB_RUN_ID:-local}-$$"
|
||||||
data_dir="$(mktemp -d)"
|
volume_name="${container_name}-data"
|
||||||
chmod 0777 "$data_dir"
|
|
||||||
cleanup() {
|
cleanup() {
|
||||||
docker rm -f "$container_name" >/dev/null 2>&1 || true
|
docker rm -f "$container_name" >/dev/null 2>&1 || true
|
||||||
rm -rf "$data_dir"
|
docker volume rm -f "$volume_name" >/dev/null 2>&1 || true
|
||||||
}
|
}
|
||||||
trap cleanup EXIT
|
trap cleanup EXIT
|
||||||
|
|
||||||
docker build --tag magent:ci .
|
docker build --tag magent:ci .
|
||||||
|
docker volume create "$volume_name" >/dev/null
|
||||||
|
docker run --rm --user 0 \
|
||||||
|
--volume "$volume_name:/app/data" \
|
||||||
|
--entrypoint chown \
|
||||||
|
magent:ci -R 1000:1000 /app/data
|
||||||
docker run --detach --name "$container_name" \
|
docker run --detach --name "$container_name" \
|
||||||
--read-only --cap-drop ALL --security-opt no-new-privileges:true \
|
--read-only --cap-drop ALL --security-opt no-new-privileges:true \
|
||||||
--tmpfs /tmp:rw,noexec,nosuid,size=64m,uid=1000,gid=1000 \
|
--tmpfs /tmp:rw,noexec,nosuid,size=64m,uid=1000,gid=1000 \
|
||||||
--tmpfs /app/frontend/.next/cache:rw,noexec,nosuid,size=128m,uid=1000,gid=1000 \
|
--tmpfs /app/frontend/.next/cache:rw,noexec,nosuid,size=128m,uid=1000,gid=1000 \
|
||||||
--volume "$data_dir:/app/data" \
|
--volume "$volume_name:/app/data" \
|
||||||
--env JWT_SECRET=ci-only-secret-with-at-least-32-characters \
|
--env JWT_SECRET=ci-only-secret-with-at-least-32-characters \
|
||||||
--env SETTINGS_ENCRYPTION_KEY=AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= \
|
--env SETTINGS_ENCRYPTION_KEY=AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= \
|
||||||
--env ADMIN_PASSWORD=ci-only-bootstrap-password-123 \
|
--env ADMIN_PASSWORD=ci-only-bootstrap-password-123 \
|
||||||
|
|||||||
Reference in New Issue
Block a user