forked from gcgarner/IOTstack
-
Notifications
You must be signed in to change notification settings - Fork 308
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[enhancement] CLI development #505
Comments
This was referenced Apr 23, 2022
ukkopahis
added a commit
to ukkopahis/IOTstack
that referenced
this issue
Jun 24, 2022
Add compose variables and indentation as defined by SensorsIot#505 Fixes SensorsIot#383, Fixes SensorsIot#517
ukkopahis
added a commit
to ukkopahis/IOTstack
that referenced
this issue
Jun 24, 2022
Add compose variables and indentation as defined by SensorsIot#505 Fixes SensorsIot#383, Fixes SensorsIot#517
ukkopahis
added a commit
to ukkopahis/IOTstack
that referenced
this issue
Jun 25, 2022
Add compose variables and indentation as defined by SensorsIot#505 Fixes SensorsIot#383, Fixes SensorsIot#517
ukkopahis
added a commit
to ukkopahis/IOTstack
that referenced
this issue
Jun 25, 2022
Implements and resolves SensorsIot#232 Also changes user to reflect the strong recommendation of SensorsIot#287 As %randomPassword% doesn't seem to work, change to use the default password as listed on Default-Configs.md and add support for SensorsIot#505 style variables. Change default public port from 5433 to avoid port-conflict with posgresql.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
I'm working on a CLI interface and a proper back-end API for stack modification and upgrades.
Design goals:
Template specification (service.yml)
The
service.yml
-templates are currently yaml-snippets, with a custom variable replacement scheme (%var%
). Docker compose files natively allow for variables using the variable substitution syntax, e.g.${VARIABLE:?error message}
or${VARIABLE:-default_value}
. The custom notation will be migrated to use compose variables.Thus a
service.yml
-file is defined as:IOTSTACK_
have a special meanings in the menu..env
. No menu-use is strictly necessary.The menu should store user-entered variable values into
.env
, where they are read from when re-running menu to show the previously made choices.Special templating variables
/etc/timezone
, but detect if TZ is defined in shell-env or .envExample (combining many different service use-cases):
In this example menu would only require user to enter the duckdns_token, rest of the variables would be their default values.
Note: the entrypoint is an example how to implement dynamic functionality based on variable values.
Manual use without menu
Additionally operation without using the menu is possible (when restoring proper indentation to service.yml-files and appending "services:" to env.yml/docker-compose-base.yml) by e.g.:
Development
Current WIP version: template.py
Feel free to take a look and give feedback or comment if something doesn't look right.
Tasks:
Container changes/fixes (that are much easier):
:no-avahi-arm64v8
Definition of Done:
Additional ideas for the future:
The text was updated successfully, but these errors were encountered: