globals

package
v0.0.0-...-f45be23 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 19, 2021 License: MIT Imports: 1 Imported by: 0

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.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL