
Security News
Node.js Homepage Adds Paid Support Link, Prompting Contributor Pushback
A new Node.js homepage button linking to paid support for EOL versions has sparked a heated discussion among contributors and the wider community.
version number: 0.1.0 author: ScienceLogic
Render, merge and validate docker_compose files for deploying a stack.
This library is using docker-compose merging process, but at the end it does a final verification to let users know whether this is a valid docker-compose for deploying a stack or not, as docker-compose doesn't validate that.
Additionally, this library will compile valid yaml jinja2 templates, so they can be merged along with the other docker-compose files.
To install use pip:
$ pip install stackconfig
Or clone the repo:
$ git clone https://github.com/Sciencelogic/stackconfig.git
$ python setup.py install
pip install -r dev_requirements.txt
pip install -r requirements.txt
pip install -e .
git checkout -b feature-more-cool-stuff
# run tests using tox
tox
# run tests with pytest
pytest
bumpversion major # major release
or
bumpversion minor # minor release
or
bumpversion patch # hotfix release
git push origin release-n.n.0
or
git push origin hotfix-x.x.n
$ stackconfig --help
Usage: stackconfig [OPTIONS]
Options:
-f, --file PATH docker-compose file to be merged. Accept multiple
arguments.
-o, --output PATH Output path for the final docker-compose file
[default: /tmp/docker-compose-20220425-16-49-16.yml]
-d, --j2data PATH Yaml file that contains variables to render the
provided jinja2 template.
-t, --j2template PATH Jinja2 template that needs to be a valid docker-
compose file after being rendered.
--version TEXT Set valid version for the final docker-compose file
--help Show this message and exit.
$ stackconfig -f docker-compose.yml -f compose-override.yml -t docker-compose-template.yml.j2 -d data_file.yml --version 3.8 -o docker-compose-final.yml
from stackconfig.stackconfig import StackConfigCompose
from stackconfig.utils.jinja2_utils import render_jijnja2_compose
jinja_env = {}
yml_compiled_files = render_jijnja2_compose(['/tmp/docker-compose.yml.j2',
'/tmp/docker-compose-override-yml.j2'],
data_file='/tmp/data_file.yml',
data_dict=jinja_env)
# valid docker-compose files can be appended, all of them are going to be merged using the docker-compose library
yml_compiled_files.append("/tmp/docker-copmose-override2.yml")
stack_config = StackConfigCompose(yml_compiled_files, '/tmp/docker-compose-output.yml')
stack_config.merge_stack_compose()
Options that may be a good fit for you:
FAQs
Render, merge and validate docker_compose files for deploying a stack
We found that stackconfig demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 3 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
A new Node.js homepage button linking to paid support for EOL versions has sparked a heated discussion among contributors and the wider community.
Research
North Korean threat actors linked to the Contagious Interview campaign return with 35 new malicious npm packages using a stealthy multi-stage malware loader.
Research
Security News
The Socket Research Team investigates a malicious Python typosquat of a popular password library that forces Windows shutdowns when input is incorrect.