podman-compose/tests/env-file-tests/README.md
Genzer 4e9f76768c Load .env from Compose file's directory and cwd
This commit loads dotenv `.env` (exactly that name) from the following location (the later takes
precedence):

- The `.env` file in the Compose file's directory.
- The `.env` file in the current working directory (invoking podman-compose).

This preserves the behavior prior to 1.1.0 and to match with Docker Compose CLI.

Fix: https://github.com/containers/podman-compose/issues/937
Signed-off-by: Genzer <732937+Genzer@users.noreply.github.com>
2024-06-24 23:29:56 +03:00

1.0 KiB

running the following commands should always give podman-rocks-123

podman-compose -f project/container-compose.yaml --env-file env-files/project-1.env up
podman-compose -f $(pwd)/project/container-compose.yaml --env-file $(pwd)/env-files/project-1.env up
podman-compose -f $(pwd)/project/container-compose.env-file-flat.yaml up
podman-compose -f $(pwd)/project/container-compose.env-file-obj.yaml up
podman-compose -f $(pwd)/project/container-compose.env-file-obj-optional.yaml up

based on environment variable precedent this command should give podman-rocks-321

ZZVAR1=podman-rocks-321 podman-compose -f $(pwd)/project/container-compose.yaml --env-file $(pwd)/env-files/project-1.env up

The below test should print three environment variables

podman-compose -f $(pwd)/project/container-compose.load-.env-in-project.yaml run --rm app

ZZVAR1=This value is overwritten by env-file-tests/.env
ZZVAR2=This value is loaded from .env in project/ directory
ZZVAR3=This value is loaded from env-file-tests/.env