mirror of
				https://github.com/Unleash/unleash.git
				synced 2025-10-27 11:02:16 +01:00 
			
		
		
		
	## About the changes This adds a Makefile to make it easy to test migrations from one version of Unleash to another. The script depends on [docker compose V2](https://docs.docker.com/compose/migrate/) **Before starting**: make sure you're inside test-migrations folder and run `make clean` to be in a clean state. We can run 2 versions of Unleash side by side with a shared database (the second version will apply migrations to the DB): ```shell UNLEASH_DOCKER_IMAGE=unleashorg/unleash-server:5.6.10 make start-unleash # defaults to port 4242 UNLEASH_DOCKER_IMAGE=unleashorg/unleash-server:latest make start-another-unleash # defaults to port 4243 make test # run basic UI tests against port 4242 (first image) EXPOSED_PORT=4243 make test # run basic UI tests against port 4243 ``` This also enables us to test our local repository with our code of Unleash server running at port 4244 (`EXPOSE_PORT=4444 make run-current` if you want to change it): ```shell UNLEASH_DOCKER_IMAGE=unleashorg/unleash-server:5.6.10 make start-unleash # defaults to port 4242 make run-current # exposes the current backend at 4244 ``` You can also connect the latest UI to any of the ports specified above, starting the UI at port 3000: ```shell EXPOSED_PORT=4242 make run-current-ui # exposed port defaults to 4244 which is the port of the current backend ```
		
			
				
	
	
		
			65 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			65 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
| version: "3.9"
 | |
| services:
 | |
|   unleash:
 | |
|     image: ${UNLEASH_DOCKER_IMAGE:-unleashorg/unleash-server:latest} # this is the latest stable release
 | |
|     pull_policy: "always"
 | |
|     ports:
 | |
|       - "${EXPOSED_PORT:-4242}:4242"
 | |
|     environment:
 | |
|       DATABASE_URL: "postgres://postgres:unleash@db/unleash"
 | |
|       DATABASE_SSL: "false"
 | |
|       LOG_LEVEL: "debug"
 | |
|       INIT_ADMIN_API_TOKENS: "*:*.unleash-insecure-admin-api-token"
 | |
|     depends_on:
 | |
|       db:
 | |
|         condition: service_healthy
 | |
|     healthcheck:
 | |
|       test: wget --no-verbose --tries=1 --spider http://localhost:4242/health || exit 1
 | |
|       interval: 1s
 | |
|       timeout: 1m
 | |
|       retries: 5
 | |
|       start_period: 15s
 | |
| 
 | |
|   another-unleash:
 | |
|     image: ${UNLEASH_DOCKER_IMAGE:-unleashorg/unleash-server:latest} # this is the latest stable release
 | |
|     pull_policy: "always"
 | |
|     ports:
 | |
|       - "${EXPOSED_PORT:-4243}:4242"
 | |
|     environment:
 | |
|       DATABASE_URL: "postgres://postgres:unleash@db/unleash"
 | |
|       DATABASE_SSL: "false"
 | |
|       LOG_LEVEL: "debug"
 | |
|       INIT_ADMIN_API_TOKENS: "*:*.unleash-insecure-admin-api-token"
 | |
|     depends_on:
 | |
|       db:
 | |
|         condition: service_healthy
 | |
|     healthcheck:
 | |
|       test: wget --no-verbose --tries=1 --spider http://localhost:4242/health || exit 1
 | |
|       interval: 1s
 | |
|       timeout: 1m
 | |
|       retries: 5
 | |
|       start_period: 15s
 | |
|   db:
 | |
|     ports:
 | |
|       - "5432:5432"
 | |
|     expose:
 | |
|       - "5432"
 | |
|     image: postgres:16
 | |
|     environment:
 | |
|       POSTGRES_DB: "unleash"
 | |
|       # trust incoming connections blindly (DON'T DO THIS IN PRODUCTION!)
 | |
|       POSTGRES_HOST_AUTH_METHOD: "trust"
 | |
|     healthcheck:
 | |
|       test:
 | |
|         [
 | |
|           "CMD",
 | |
|           "pg_isready",
 | |
|           "--username=postgres",
 | |
|           "--host=127.0.0.1",
 | |
|           "--port=5432",
 | |
|         ]
 | |
|       interval: 2s
 | |
|       timeout: 1m
 | |
|       retries: 5
 | |
|       start_period: 10s
 |