Documentation ¶
Index ¶
Constants ¶
View Source
const ( VERSION = "0.1.0" AUTHOR = "SKP <[email protected]>" NAME = "cam - Cyphernode apps management tool" DESCRIPTION = "A tool to manager your cypherapps" DATA_DIR = ".cam" REPO_DIR = "repo" STATE_FILE = "state.json" SOURCE_FILE = "sources.list" REPO_INDEX_FILE = REPO_DIR + string(filepath.Separator) + "index.json" LOCK_FILE = "state.lock" APP_DESCRIPTION_FILE = "app.json" APP_VERSIONS_DIR = "versions" CANDIDATE_DESCRIPTION_FILE = "candidate.json" INSTALL_DIR_ENV_KEY = "CYPHERAPPS_INSTALL_DIR" INSTALLED_APPS_FILE = "index.json" INSTALL_DIR = "apps" KEYS_FILE_ENV_KEY = "CYPHERNODE_KEYS_FILE" CYPHERNODE_INFO_FILE_ENV_KEY = "CYPHERNODE_INFO_FILE" DOCKER_COMPOSE_TEMPLATE_REGEXP_TEMPLATE = `<%%= *%s *%%>` TRUST_ZONE_UNTRUSTED = "untrusted" TRUST_ZONE_TRUSTED = "trusted" TRUST_ZONE_SERVICE = "service" TRUST_ZONE_CORE = "core" CORE_NETWORK = "cyphernodenet" APPS_NETWORK = "cyphernodeappsnet" SERVICE_NETWORK = "cyphernodeservicenet" )
View Source
const ( DOCKER_COMPOSE_LABEL_TRAEFIK_ENABLE = "traefik.enable=true" DOCKER_COMPOSE_LABEL_MOUNTPOINT_RULE = "traefik.http.routers.<%= APP_ID %>.rule=PathPrefix(`/<%= APP_MOUNTPOINT %>`)" DOCKER_COMPOSE_LABEL_ENTRYPOINTS = "traefik.http.routers.<%= APP_ID %>.entrypoints=websecure" DOCKER_COMPOSE_LABEL_TLS = "traefik.http.routers.<%= APP_ID %>.tls=true" DOCKER_COMPOSE_LABEL_MIDDLEWARES = "traefik.http.routers.<%= APP_ID %>.middlewares=" DOCKER_COMPOSE_LABEL_ROUTER_SERVICE = "traefik.http.routers.<%= APP_ID %>.service=<%= APP_ID %>" DOCKER_COMPOSE_LABEL_ONION_MOUNTPOINT_RULE = "traefik.http.routers.<%= APP_ID %>-onion.rule=PathPrefix(`/<%= APP_MOUNTPOINT %>`)" DOCKER_COMPOSE_LABEL_ONION_ENTRYPOINTS = "traefik.http.routers.<%= APP_ID %>-onion.entrypoints=onion" DOCKER_COMPOSE_LABEL_ONION_MIDDLEWARES = "traefik.http.routers.<%= APP_ID %>-onion.middlewares=" DOCKER_COMPOSE_LABEL_ONION_ROUTER_SERVICE = "traefik.http.routers.<%= APP_ID %>-onion.service=<%= APP_ID %>" DOCKER_COMPOSE_LABEL_MW_STRIPPREXIX = "traefik.http.middlewares.<%= APP_ID %>-stripprefix.stripprefix.prefixes=/<%= APP_MOUNTPOINT %>,/<%= APP_MOUNTPOINT %>/" DOCKER_COMPOSE_LABEL_FORCE_SLASH = "traefik.http.middlewares.<%= APP_ID %>-stripprefix.stripprefix.forceSlash=true" DOCKER_COMPOSE_LABEL_PASS_HOST_HEADER = "traefik.frontend.passHostHeader=true" DOCKER_COMPOSE_STRIPPREFIX_MIDDLEWARE = "<%= APP_ID %>-stripprefix@docker" DOCKER_COMPOSE_FORWARD_AUTH_MIDDLEWARE = "forward-auth@file" )
View Source
const DOCKER_COMPOSE_MIDDLEWARE_PATTERN = "^traefik\\.http\\.middlewares\\.(<%= *APP_ID *%>-\\w+?)\\."
Variables ¶
View Source
var ( TRUST_ZONE_CORE_PATTERN = `^\$(\{ *|)CORE__.+?(| *\})` // everything beneath TRUSTED__<ANYTHING>_PATH TRUST_ZONE_TRUSTED_PATTERN = `^\$(\{ *|)TRUSTED__.+?(| *\})` // everything beneath TRUSTED__<ANYTHING>_PATH TRUST_ZONE_SERVICE_PATTERN = `^\$(\{ *|)SERVICE__.+?(| *\})` // everything beneath SERVICE__<ANYTHING>_PATH DockerVolumeWhitelist = []string{ `^\$(\{ *|)GATEKEEPER_CERTS_DATAPATH(| *\})`, `^\$(\{ *|)APP_DATAPATH(| *\})`, TRUST_ZONE_CORE_PATTERN, TRUST_ZONE_TRUSTED_PATTERN, TRUST_ZONE_SERVICE_PATTERN, } // TODO: research if \.\. or \\.\\. is bad // TODO: check env files DockerVolumeElementBlacklist = []string{ "..", } ValidTrustZones = []string{ TRUST_ZONE_UNTRUSTED, TRUST_ZONE_TRUSTED, TRUST_ZONE_SERVICE, TRUST_ZONE_CORE, } DefaultTrustZone = TRUST_ZONE_UNTRUSTED )
View Source
var ( DOCKER_COMPOSE_ALLOWED_MAIN_SERVICE_LABELS = []string{ DOCKER_COMPOSE_MIDDLEWARE_PATTERN, "^traefik\\.http\\.services\\.<%= *APP_ID *%>\\.loadbalancer\\.server\\.port=\\d+", } )
Functions ¶
This section is empty.
Types ¶
This section is empty.
Click to show internal directories.
Click to hide internal directories.