Update: Collection development
This commit is contained in:
parent
30ddd419a3
commit
254e86da11
@ -1,35 +0,0 @@
|
|||||||
# Paasify plugins
|
|
||||||
|
|
||||||
## Input data
|
|
||||||
|
|
||||||
* Plugins meta:
|
|
||||||
* Desc: Return plugin metadata informations
|
|
||||||
* `action`: `'metadata'`
|
|
||||||
* `schema`: `<JSON schema>`
|
|
||||||
* `version`: `<>`
|
|
||||||
* `author`: `<>`
|
|
||||||
* `name`: `<>`
|
|
||||||
* `description`: `<>`
|
|
||||||
* `require`: `[<Tag Name>,]`, Future !
|
|
||||||
* Returns: Dict of all static data
|
|
||||||
|
|
||||||
* Docker compose vars build
|
|
||||||
* Desc: Return plugin configuration
|
|
||||||
* `action`: `'vars_docker'`
|
|
||||||
* `user_data`: `<User vars>`
|
|
||||||
* Returns:
|
|
||||||
* new_settings only
|
|
||||||
* merged_config
|
|
||||||
|
|
||||||
* Docker compose file build
|
|
||||||
* Desc: Transform docker data with plugin configuration
|
|
||||||
* `action`: `'docker_transform'`
|
|
||||||
* `user_data`: `<User vars>`
|
|
||||||
* `docker_data`: `<Docker Compose data>`
|
|
||||||
* Returns:
|
|
||||||
* new_settings only
|
|
||||||
* merged_config
|
|
||||||
|
|
||||||
## Template
|
|
||||||
|
|
||||||
|
|
||||||
@ -1,3 +1,8 @@
|
|||||||
|
### OLD PLUGIN !!!!!!!
|
||||||
|
|
||||||
|
|
||||||
|
# local paasify = import 'paasify.libsonnet';
|
||||||
|
|
||||||
|
|
||||||
# Helpers functions
|
# Helpers functions
|
||||||
# -------------------------------------
|
# -------------------------------------
|
||||||
@ -124,9 +129,10 @@ local global_vars_default(runtime) =
|
|||||||
app_dir_root: dir_prefix,
|
app_dir_root: dir_prefix,
|
||||||
app_dir_db_data: dir_prefix + 'db_data', # Backup data
|
app_dir_db_data: dir_prefix + 'db_data', # Backup data
|
||||||
app_dir_db_conf: dir_prefix + 'db_conf', # Commitables files into git
|
app_dir_db_conf: dir_prefix + 'db_conf', # Commitables files into git
|
||||||
|
|
||||||
app_dir_cache: dir_prefix + 'cache', # Cache files
|
app_dir_cache: dir_prefix + 'cache', # Cache files
|
||||||
app_dir_build: dir_prefix + 'build', # Build dir
|
app_dir_build: dir_prefix + 'build', # Build dir
|
||||||
app_dir_script: dir_prefix + 'build', # Dir for storing container scripts and helpers
|
app_dir_script: dir_prefix + 'scripts', # Dir for storing container scripts and helpers
|
||||||
app_dir_conf: dir_prefix + 'conf', # Commitables files into git
|
app_dir_conf: dir_prefix + 'conf', # Commitables files into git
|
||||||
app_dir_backup: dir_prefix + 'backup', # Backup directory
|
app_dir_backup: dir_prefix + 'backup', # Backup directory
|
||||||
app_dir_data: dir_prefix + 'data', # Backup data
|
app_dir_data: dir_prefix + 'data', # Backup data
|
||||||
@ -138,14 +144,7 @@ local global_vars_default(runtime) =
|
|||||||
app_docker_socket: '/var/run/docker.sock',
|
app_docker_socket: '/var/run/docker.sock',
|
||||||
app_docker_conn: 'unix://var/run/docker.sock',
|
app_docker_conn: 'unix://var/run/docker.sock',
|
||||||
|
|
||||||
# TOFIX: Merging data, SHOULD BEIN OVERRIDE !!!
|
|
||||||
app_admin_login: 'admin',
|
|
||||||
app_admin_email: 'admin@' + self.app_domain,
|
|
||||||
app_admin_passwd: 'admin',
|
|
||||||
|
|
||||||
app_user_login: 'user',
|
|
||||||
app_user_email: 'user@' + self.app_domain,
|
|
||||||
app_user_passwd: 'user',
|
|
||||||
|
|
||||||
# Generic networks
|
# Generic networks
|
||||||
net_backup: runtime.paasify_ns + runtime.paasify_sep + 'backup', # For backup network
|
net_backup: runtime.paasify_ns + runtime.paasify_sep + 'backup', # For backup network
|
||||||
@ -227,40 +226,41 @@ local docker_transform(conf_raw, docker_data) =
|
|||||||
;
|
;
|
||||||
|
|
||||||
|
|
||||||
# Return result
|
# # Return result
|
||||||
# -------------------------------------
|
# # -------------------------------------
|
||||||
|
#
|
||||||
|
#
|
||||||
local main() =
|
# local main() =
|
||||||
|
#
|
||||||
local getConf(name) = std.parseJson(std.extVar(name));
|
# local getConf(name) = std.parseJson(std.extVar(name));
|
||||||
local action = getConf('action');
|
# local action = getConf('action');
|
||||||
|
#
|
||||||
if action == 'metadata' then
|
# if action == 'metadata' then
|
||||||
metadata
|
# metadata
|
||||||
|
#
|
||||||
else if action == 'vars_docker' then
|
# else if action == 'vars' then
|
||||||
local user_data = getConf('user_data');
|
# local user_data = getConf('user_data');
|
||||||
local default_data = global_vars_default(user_data);
|
# local default_data = global_vars_default(user_data);
|
||||||
local common = { [x]: std.get(user_data, std.lstripChars(x, '_'), default_data[x] ) for x in std.objectFields(default_data) };
|
# local common = { [x]: std.get(user_data, std.lstripChars(x, '_'), default_data[x] ) for x in std.objectFields(default_data) };
|
||||||
{
|
# {
|
||||||
input: user_data,
|
# input: user_data,
|
||||||
|
#
|
||||||
diff: default_data + common + global_vars_override(default_data + user_data ),
|
# diff: default_data + common + global_vars_override(default_data + user_data ),
|
||||||
merged: user_data + global_vars_override(default_data + user_data ),
|
# merged: user_data + global_vars_override(default_data + user_data ),
|
||||||
}
|
# }
|
||||||
|
#
|
||||||
else if action == 'docker_transform' then
|
# else if action == 'docker_transform' then
|
||||||
local user_data = getConf('user_data');
|
# local user_data = getConf('user_data');
|
||||||
local docker_data = getConf('docker_data');
|
# local docker_data = getConf('docker_data');
|
||||||
|
#
|
||||||
{
|
# {
|
||||||
input: user_data,
|
# input: user_data,
|
||||||
|
#
|
||||||
#diff: docker_transform(user_data + global_vars_override(user_data), docker_data),
|
# #diff: docker_transform(user_data + global_vars_override(user_data), docker_data),
|
||||||
diff: docker_transform(user_data, docker_data),
|
# diff: docker_transform(user_data, docker_data),
|
||||||
merged: docker_data + self.diff,
|
# merged: docker_data + self.diff,
|
||||||
};
|
# };
|
||||||
|
#
|
||||||
# Run main script !
|
# # Run main script !
|
||||||
main()
|
# main()
|
||||||
|
paasify.main()
|
||||||
|
|||||||
@ -77,7 +77,7 @@ local global_vars_override(conf) =
|
|||||||
|
|
||||||
local default_svc_entrypoints = [
|
local default_svc_entrypoints = [
|
||||||
std.get(conf, 'traefik_svc_entrypoints'),
|
std.get(conf, 'traefik_svc_entrypoints'),
|
||||||
"web",
|
"front-http",
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -1,5 +1,18 @@
|
|||||||
version: "3.9"
|
version: "3.9"
|
||||||
|
|
||||||
|
# Official docuemtnation
|
||||||
|
# https://min.io/docs/minio/container/index.html
|
||||||
|
|
||||||
|
# See: https://github.com/minio/minio/blob/master/dockerscripts/docker-entrypoint.sh
|
||||||
|
# MINIO_USERNAME=minio
|
||||||
|
# MINIO_GROUPNAME=minio
|
||||||
|
# MINIO_UID=$app_puid
|
||||||
|
# MINIO_GID=$app_pgid
|
||||||
|
#
|
||||||
|
# Mendatory ?
|
||||||
|
# MINIO_ACCESS_KEY
|
||||||
|
# MINIO_SECRET_KEY
|
||||||
|
|
||||||
networks:
|
networks:
|
||||||
default:
|
default:
|
||||||
name: ${net_ostorage:-s3}
|
name: ${net_ostorage:-s3}
|
||||||
@ -16,9 +29,13 @@ services:
|
|||||||
environment:
|
environment:
|
||||||
- MINIO_ROOT_USER=$app_admin_login
|
- MINIO_ROOT_USER=$app_admin_login
|
||||||
- MINIO_ROOT_PASSWORD=$app_admin_passwd
|
- MINIO_ROOT_PASSWORD=$app_admin_passwd
|
||||||
|
|
||||||
#- MINIO_DOMAIN=minio.$app_domain
|
#- MINIO_DOMAIN=minio.$app_domain
|
||||||
#- MINIO_DOMAIN=http://localhost:9000
|
#- MINIO_DOMAIN=http://localhost:9000
|
||||||
#- MINIO_SERVER_URL=http://minio.$app_domain
|
#- MINIO_SERVER_URL=http://minio.$app_domain
|
||||||
- MINIO_SERVER_URL=http://minio:9000
|
- MINIO_SERVER_URL=${app_prot}://minio:9000
|
||||||
- MINIO_BROWSER_REDIRECT_URL=https://minio-console.$app_domain
|
- MINIO_BROWSER_REDIRECT_URL=${app_prot}://minio-console.$app_domain
|
||||||
|
#
|
||||||
|
#- MINIO_ACCESS_KEY=dksflhdskhfkjdshfkdf
|
||||||
|
#- MINIO_SECRET_KEY=kfsdfksdhfkjsdhfkjdshf
|
||||||
|
|
||||||
|
|||||||
@ -9,7 +9,7 @@ services:
|
|||||||
environment:
|
environment:
|
||||||
|
|
||||||
# Entrypoints
|
# Entrypoints
|
||||||
- TRAEFIK_ENTRYPOINTS_front-https_ADDRESS=:53/udp
|
- TRAEFIK_ENTRYPOINTS_default-https_ADDRESS=:53/udp
|
||||||
- TRAEFIK_ENTRYPOINTS_front-https_ADDRESS=:53/tcp
|
- TRAEFIK_ENTRYPOINTS_default-https_ADDRESS=:53/tcp
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -1,5 +1,10 @@
|
|||||||
---
|
---
|
||||||
|
|
||||||
|
x-paasify:
|
||||||
|
conf:
|
||||||
|
traefik_svc_tls: true
|
||||||
|
traefik_svc_entrypoints: default-http,default-https
|
||||||
|
|
||||||
services:
|
services:
|
||||||
traefik:
|
traefik:
|
||||||
ports:
|
ports:
|
||||||
@ -9,10 +14,10 @@ services:
|
|||||||
environment:
|
environment:
|
||||||
|
|
||||||
# Entrypoints
|
# Entrypoints
|
||||||
- TRAEFIK_ENTRYPOINTS_front-https_ADDRESS=:443 # <== Defining an entrypoint for port :80 named front
|
- TRAEFIK_ENTRYPOINTS_default-https_ADDRESS=:443 # <== Defining an entrypoint for port :80 named default
|
||||||
|
|
||||||
# Forced Http redirect to https
|
# Forced Http redirect to https
|
||||||
- TRAEFIK_ENTRYPOINTS_front-http_HTTP_REDIRECTIONS_ENTRYPOINT_PERMANENT=true
|
- TRAEFIK_ENTRYPOINTS_default-http_HTTP_REDIRECTIONS_ENTRYPOINT_PERMANENT=true
|
||||||
- TRAEFIK_ENTRYPOINTS_front-http_HTTP_REDIRECTIONS_ENTRYPOINT_SCHEME=https
|
- TRAEFIK_ENTRYPOINTS_default-http_HTTP_REDIRECTIONS_ENTRYPOINT_SCHEME=https
|
||||||
- TRAEFIK_ENTRYPOINTS_front-http_HTTP_REDIRECTIONS_ENTRYPOINT_TO=front-https
|
- TRAEFIK_ENTRYPOINTS_default-http_HTTP_REDIRECTIONS_ENTRYPOINT_TO=default-https
|
||||||
|
|
||||||
|
|||||||
@ -1,6 +1,25 @@
|
|||||||
---
|
---
|
||||||
version: "3.7"
|
version: "3.7"
|
||||||
|
|
||||||
|
# Notes:
|
||||||
|
# Only entrypoints with chars and number are accepted, because:
|
||||||
|
# - bash does not allow hyphen in their name
|
||||||
|
# - Traefik does not allow underscore when shell configuration is used
|
||||||
|
|
||||||
|
x-paasify:
|
||||||
|
app:
|
||||||
|
service: traefik
|
||||||
|
port: 8080
|
||||||
|
image: traefik
|
||||||
|
version: v1.6
|
||||||
|
cmd: my command
|
||||||
|
cmd_help:
|
||||||
|
cmd_shell:
|
||||||
|
cmd_status:
|
||||||
|
conf:
|
||||||
|
traefik_svc_tls: false
|
||||||
|
traefik_svc_entrypoints: default-http
|
||||||
|
|
||||||
services:
|
services:
|
||||||
traefik:
|
traefik:
|
||||||
image: ${app_image}
|
image: ${app_image}
|
||||||
@ -41,7 +60,8 @@ services:
|
|||||||
#- TRAEFIK_PROVIDERS.FILE.DIRECTORY=/etc/traefik/configs
|
#- TRAEFIK_PROVIDERS.FILE.DIRECTORY=/etc/traefik/configs
|
||||||
|
|
||||||
# Entrypoints
|
# Entrypoints
|
||||||
- TRAEFIK_ENTRYPOINTS_front-http_ADDRESS=:80 # <== Defining an entrypoint for port :80 named front
|
- TRAEFIK_ENTRYPOINTS_default-http=True
|
||||||
|
- TRAEFIK_ENTRYPOINTS_default-http_ADDRESS=:80 # <== Defining an entrypoint for port :80 named default
|
||||||
|
|
||||||
labels:
|
labels:
|
||||||
- traefik.group=$app_network_name
|
- traefik.group=$app_network_name
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user