diff --git a/hosting/scripts/install-minio.sh b/hosting/scripts/install-minio.sh new file mode 100755 index 0000000000..8297593599 --- /dev/null +++ b/hosting/scripts/install-minio.sh @@ -0,0 +1,10 @@ +#!/bin/bash +if [[ $TARGETARCH == arm* ]] ; +then + echo "INSTALLING ARM64 MINIO" + wget https://dl.min.io/server/minio/release/linux-arm64/minio +else + echo "INSTALLING AMD64 MINIO" + wget https://dl.min.io/server/minio/release/linux-amd64/minio +fi +chmod +x minio diff --git a/hosting/tests/Dockerfile b/hosting/tests/Dockerfile new file mode 100644 index 0000000000..9753796383 --- /dev/null +++ b/hosting/tests/Dockerfile @@ -0,0 +1,22 @@ +FROM budibase/couchdb + +ENV DATA_DIR /data +RUN mkdir /data + +RUN apt-get update && \ + apt-get install -y --no-install-recommends redis-server + +WORKDIR /minio +ADD scripts/install-minio.sh ./install.sh +RUN chmod +x install.sh && ./install.sh + +WORKDIR / + +ADD tests/runner.sh . +RUN chmod +x ./runner.sh + +EXPOSE 5984 +EXPOSE 9000 +EXPOSE 6379 + +CMD ["./runner.sh"] diff --git a/hosting/tests/runner.sh b/hosting/tests/runner.sh new file mode 100644 index 0000000000..54a00490c8 --- /dev/null +++ b/hosting/tests/runner.sh @@ -0,0 +1,8 @@ +#!/bin/bash + +redis-server --requirepass $REDIS_PASSWORD > /dev/stdout 2>&1 & +/bbcouch-runner.sh & +/minio/minio server ${DATA_DIR}/minio > /dev/stdout 2>&1 & + +echo "Test environment started..." +sleep infinity \ No newline at end of file diff --git a/package.json b/package.json index 194ce73873..361bf99fe2 100644 --- a/package.json +++ b/package.json @@ -70,6 +70,7 @@ "build:docker:single:image": "docker build -f hosting/single/Dockerfile -t budibase:latest .", "build:docker:single": "npm run build:docker:pre && npm run build:docker:single:image", "build:docker:couch": "docker buildx build --platform linux/arm64,linux/amd64 -f hosting/couchdb/Dockerfile -t budibase/couchdb:latest -t budibase/couchdb:v3.2.1 --push ./hosting/couchdb", + "build:docker:tests": "docker buildx build --platform linux/arm64,linux/amd64 -f hosting/tests/Dockerfile -t budibase/tests:latest -t budibase/tests:v3.2.1 --push ./hosting", "build:docs": "lerna run build:docs", "release:helm": "node scripts/releaseHelmChart", "env:multi:enable": "lerna run env:multi:enable",