# Service Configuration Scaffold allows for a whole slew of configuration options that can be configured via environment variables in the deployment All configuration ENV variables start with `SCAFFOLD_` | Variable | Description | Default | |---|---|---| | SCAFFOLD_WS_PORT | DEPRECATED Websocket port for task shell | 8080 | | SCAFFOLD_LOG_LEVEL | Log level to use during operation. Valid levels are `NONE`, `DEBUG`, `ERROR`, `FATAL`, `INFO`, `SUCCESS`, `TRACE`, `WARN` | `INFO` | | SCAFFOLD_LOG_FORMAT | Log format to output. Valid formats are `console`, `json` | `console` | | SCAFFOLD_BASE_URL | Service base URL | `http://localhost:2997` | | SCAFFOLD_PODMAN_OPTS | Options to pass to podman command in container tasks | `--security-opt label=disabled --network=host` | | SCAFFOLD_ADMIN | Default admin user configuration | `{"username":"admin","password":"admin"}` | | SCAFFOLD_DB_CONNECTION_STRING | Connection string for MongoDB | `mongodb://MyCoolMongoDBUsername:MyCoolMongoDBPassword@mongodb:27017/scaffold` | | SCAFFOLD_NODE | Node information. For workers change the type to `worker` | `{"type":"manager","manager_host":"scaffold-manager","manager_port":2997,"manager_protocol":"http","join_key":"MyCoolJoinKey12345","primary_key":"MyCoolPrimaryKey12345"}` | | SCAFFOLD_HEARTBEAT_INTERVAL | How frequently to check for worker health in seconds | `1000` | | SCAFFOLD_HEARTBEAT_BACKOFF | How many retries before removing node | `10` | | SCAFFOLD_RESET | Reset email configuration | `{"email":"","password":"","host":"smtp.gmail.com","port":587}` | | SCAFFOLD_FILESTORE | Filestore configuration for use either with S3 or Artifactory. For Artifactory, change `host` and `port` to point to your Artifactory instance, `bucket` to the path in Artifactory to store the files, and `type` to `artifactory` | `{"access_key":"MyCoolMinIOAccessKey","secret_key":"MyCoolMinIOSecretKey","host":"minio","port":9000,"bucket":"scaffold","region":"default-region","protocol":"http","type":"s3"}` | | SCAFFOLD_TLS_ENABLED | Should Scaffold run on https | `false` | | SCAFFOLD_TLS_SKIP_VERIFY | Should Scaffold skip ssl verification in requests | `false` | | SCAFFOLD_TLS_CERT_PATH | Path to mounted certificate for https | `/tmp/certs/cert.crt` | | SCAFFOLD_TLS_KEY_PATH | Path to mounted key for https | `tmp/certs/cert.key` | | SCAFFOLD_RABBITMQ_CONNECTION_STRING | Connection string for RabbitMQ | | | SCAFFOLD_MANAGER_QUEUE_NAME | Name of the queue for messages to the manager | `scaffold_manager` | | SCAFFOLD_WORKER_QUEUE_NAME | Name of the queue for messages to the worker | `scaffold_worker` | | SCAFFOLD_KILL_QUEUE_NAME | Name of the queue to pass task runs to be killed | `scaffold_kill` | | SCAFFOLD_PING_HEALTHY_THRESHOLD | How many pings until node is considered not healthy | `3` | | SCAFFOLD_UNKNOWN_THRESHOLD | How many pings until node is considered unknown status | `6` | | SCAFFOLD_PING_DOWN_THRESHOLD | How many pings until node is considered down | `9` | | SCAFFOLD_CHECK_INTERVAL | How frequently to check task status in milliseconds | `2000` | | SCAFFOLD_RESTART_PERIOD | How long in milliseconds before the service should restart itself. Set to `0` to disable automatic restarts | `86400` | | SCAFFOLD_RUN_PRUNE_CRON | Crontab to prune run histories | `0 0 * * * *` | | SCAFFOLD_RUN_PRUNE_DURATION | How long runs can stay around before being pruned in hours | `24` |