Recommendations for the S3-compatible storage
Allure TestOps relies on an object storage service for storing test results artifacts (see Architecture). The most reliable and well-performing object storage for use with Allure TestOps is Amazon S3, which is recommended for large deployments with high workloads. Object storage can also be implemented using MinIO, Google Cloud Storage, or any other S3-compatible storage solution.
Migrating data from a Docker Compose demo deployment to MinIO standalone
If you used the testops-demo deployment before switching to a production environment, follow the instructions below to migrate the data to a separate MinIO storage. You can also need to do this if you have been working with a Docker Compose deployment for an extended period and artifacts were stored in Docker volumes as file system storage.
Directly copying the files might result in incorrect access rights and inaccurate MinIO metadata for the artifacts. It is strongly advised to use the MinIO CLI application for performing the bulk migration of files.
Make sure that the target storage service is running and accessible from your machine.
In your .env file, add the connection parameters to the target storage service:
TESTOPS_S3_URL_NEW
— server URL.TESTOPS_S3_BUCKET_NEW
— S3 bucket name.TESTOPS_S3_ACCESS_KEY_NEW
— access key for connecting to the bucket.TESTOPS_S3_SECRET_KEY_NEW
— secret key for connecting to the bucket.
In your docker-compose.yml file, add the following service configuration:
services: minio-migrate: restart: "no" image: minio/mc container_name: minio-migrate depends_on: - minio-local networks: - testops-net entrypoint: "/bin/sh -c" command: > "mc config host add minio-old ${DEMO_INSTANCE_S3_URL} ${DEMO_INSTANCE_S3_ACCESS_KEY} ${DEMO_INSTANCE_S3_SECRET_KEY} --api S3v4 && mc config host add s3-new ${TESTOPS_S3_URL_NEW} ${TESTOPS_S3_ACCESS_KEY_NEW} ${TESTOPS_S3_SECRET_KEY_NEW} --api S3v4 && mc cp -r minio-old/${DEMO_INSTANCE_S3_BUCKET}/v2 s3-new/${TESTOPS_S3_BUCKET_NEW}/" # ...
Navigate to the directory where your docker-compose.yml and .env files are located, then run the command:
docker compose run minio-migrate