Files and configuration handler to inject configuration files into volumes for ECS containers
Project description
What does it do?
ECS Files Composer, although can be used in EKS and other Docker context, is a small program that will allow users to define files they need pulled out of AWS Services, such as AWS S3 or AWS SSM Parameter Store, and load the content to a given location, adding builtin capabilities to set file ownership, mode, and other handy features.
The configuration of the job to perform can be written in YAML or JSON (see examples), so long as they comply to a given schema.
Why use it?
Having your core application, when reliant on configuration files, can be tricky to start in a way that the configuration needs to be pulled first and then started. This can add un-necessary complexity and logic to the application. And some docker images you might pull off the shelves from DockerHub do not necessarily allow for configuration override from environment variables.
By using a sidecar that handles all of that logic, you delegate all of these activities to it. And with the ability to define which container to start first with success criteria, you also ensure that your application won’t start without the configuration files it needs.
How to use it ?
Docker
docker run public.ecr.aws/compose-x/ecs-files-composer:${VERSION:-latest} -h
docker run -v $PWD:/ /var/tmp,:/public.ecr.aws/compose-x/ecs-files-composer:${VERSION:-latest} -f files.yaml
CLI
usage: ecs_files_composer [-h] [-f FILE_PATH | -e ENV_VAR | --from-ssm SSM_CONFIG | --from-s3 S3_CONFIG] [--role-arn ROLE_ARN] [_ ...]
optional arguments:
-h, --help show this help message and exit
-f FILE_PATH, --from-file FILE_PATH
Configuration for execution from a file
-e ENV_VAR, --from-env-var ENV_VAR
Configuration for execution is in an environment variable
--from-ssm SSM_CONFIG
Configuration for execution is in an SSM Parameter
--from-s3 S3_CONFIG Configuration for execution is in an S3
--role-arn ROLE_ARN The Role ARN to use for the configuration initialization
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file ecs_files_composer-1.3.0.tar.gz
.
File metadata
- Download URL: ecs_files_composer-1.3.0.tar.gz
- Upload date:
- Size: 23.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.5.1 CPython/3.11.3 Linux/6.3.7-100.fc37.x86_64
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3a0314c8bcd5bad962692003a386349fadc0f81340da53576e5122f1cbff9d88 |
|
MD5 | 3175f32d5a7089a4adacb08574a14856 |
|
BLAKE2b-256 | 2b85b094bf892862db9b6d96d84f29c685fd70013f1270af8eaa392c6533d475 |
File details
Details for the file ecs_files_composer-1.3.0-py3-none-any.whl
.
File metadata
- Download URL: ecs_files_composer-1.3.0-py3-none-any.whl
- Upload date:
- Size: 26.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.5.1 CPython/3.11.3 Linux/6.3.7-100.fc37.x86_64
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 07d8c324b3cd1ffb03dc7423099e837bf3b1c96b0a022ddd901cf181696ab353 |
|
MD5 | 4b8f64a39088cc6a47e178c0f8697fc8 |
|
BLAKE2b-256 | 69adb39504b32d42bbb2194e34c0ef0d2a4157b79a3dc7b216a8c6fb919c6ad4 |