content: # The default configuration used by the OpenRun server and client
  
  server_uri = "$OPENRUN_HOME/run/openrun.sock" # the unix domain socket (UDS) path or URL to the OpenRun server
  admin_user = "admin"
  
  # Properties use by the OpenRun client to connect to the server
  [client]
  admin_password = ""      # the password for the admin user. Required only if admin over TCP is enabled
  skip_cert_check = false
  default_format = "basic" # default output format for the client commands
  
  # HTTP port binding related Config
  [http]
  host = "127.0.0.1"        # bind to localhost by default for HTTP
  port = 25222              # default port for HTTP
  redirect_to_https = false # redirect HTTP to HTTPS
  
  # HTTPS port binding related Config
  [https]
  host = "0.0.0.0"                               # bind to all interfaces (if port is >= 0)
  port = 25223                                   # port for HTTPS
  enable_cert_lookup = true                      # enable looking for certificate files on disk before using Let's Encrypt
  mkcert_path = ""                               # mkcert binary path, set to disable to disable mkcert
  service_email = ""                             # email address for registering with Let's Encrypt. Set a value to enable automatic certs
  use_staging = true                             # use Let's Encrypt staging server
  cert_location = "$OPENRUN_HOME/config/certificates" # where to look for existing certificate files
  storage_location = "$OPENRUN_HOME/run/certmagic"    # where to cache dynamically created certificates
  disable_client_certs = true                    # disable client certs for HTTPS
  
  [security]
  admin_over_tcp = false           # enable admin API's over TCP (HTTP/HTTPS). Admin is over UDS only by default
  admin_password_bcrypt = ""       # the password bcrypt value
  session_secret = ""              # the secret key for session cookie. Auto generated on server startup if not set
  session_block_key = ""           # the block key for session cookie. Auto generated on server startup if not set
  session_max_age = 86400          # session max age in seconds
  session_https_only = true        # session cookie is HTTPS only
  app_default_auth_type = "none" # default auth type for apps, "system" or "none" or custom auth
  default_git_auth = ""            # default git auth entry to use
  stage_enable_write_access = true # enable write plugin API call access for staging apps
  preview_enable_write_access = true #  enable write plugin API call access for preview apps
  
  
  # Logging related Config
  [logging]
  level = "INFO"
  max_backups = 10
  max_size_mb = 50
  console = false
  file = true
  access_logging = true
  
  # Metadata Storage Config
  [metadata]
  db_connection = "sqlite:$OPENRUN_HOME/metadata/clace_metadata.db"
  auto_upgrade = true
  audit_db_connection = "sqlite:$OPENRUN_HOME/metadata/clace_audit.db"
  file_cache_connection = "sqlite:$OPENRUN_HOME/metadata/file_cache.db"
  
  [system]
  tailwindcss_command = "tailwindcss"
  file_watcher_debounce_millis = 300
  watch_ignore_patterns = ["**/.vscode/**", "**/.idea/**", "**/.git/**", "**/.DS_Store/**", "**/.*sw*"] # patterns to ignore for file watcher
  node_path = ""                      # node module lookup paths https://esbuild.github.io/api/#node-paths
  container_command = "auto"          # "auto" or "docker" or "podman"
  default_domain = "localhost"        # default domain for apps
  root_serve_list_apps = "auto"       # "auto" means serve list_apps app for default domain, "disable" means don't server for any domain,
                                      # any other value means serve for specified domain
  enable_compression = false          # enable compression for HTTP responses
  default_schedule_mins = 15          # default sync schedule interval in minutes
  max_sync_failure_count = 5          # max number of sync failures before sync is marked as disabled
  
  http_event_retention_days = 90      # number of days to retain http events
  non_http_event_retention_days = 180 # number of days to retain non-http (system, action, custom) events
  allowed_env = ["HOME", "OPENRUN_HOME", "PATH"] # env values allowed for use in node config
  
  max_concurrent_builds = 1 # max number of concurrent container builds
  max_build_wait_secs = 120 # max wait time for a build lock
  
  [plugin."store.in"]
  db_connection = "sqlite:$OPENRUN_HOME/metadata/clace_app_store.db"
  
  [plugin."fs.in"]
  db_connection = "sqlite:$OPENRUN_HOME/metadata/clace_fs.db"
  
  [app_config]
  # app config can be set at the app level using a metadata config update. For example:
  #  openrun app update-metadata conf --promote 'cors.allow_methods="GET, POST"' /myapp
  
  # ==== CORS related Config ====
  # Default setting is to add CORS headers with * as allow_origin header. If cors.allow_origin is set to empty string,
  # no CORS headers are set. If allow_origin is set to "origin", the origin host is used as the allow_origin header. 
  # For any other value for cors.allow_origin, the specified value is used as the allow_origin header.
  cors.allow_origin = "*"
  cors.allow_methods = "*"
  cors.allow_headers = "DNT,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Range,Authorization,X-Requested-With"
  cors.allow_credentials = "true"
  cors.max_age = "2678400"                                                                                                                 # 31 days
  
  # ==== Container related Config ====
  
  # Health check Config
  container.health_url = "/"
  container.health_attempts_after_startup = 30
  container.health_timeout_secs = 5
  
  # Idle Shutdown Config
  container.idle_shutdown_secs = 180
  container.idle_shutdown_dev_apps = false
  container.idle_bytes_high_watermark = 1500 # bytes high watermark for idle shutdown 
                                             # (1500 bytes sent and recv over 180 seconds)
  
  # Status check Config
  container.status_check_interval_secs = 5
  container.status_health_attempts = 3
  
  # Proxy related settings
  proxy.max_idle_conns = 250
  proxy.idle_conn_timeout_secs = 15
  proxy.disable_compression = true
  
  # FS plugin related settings
  fs.file_access = ["$TEMPDIR", "/tmp"]
  
  # Audit related settings
  audit.redact_url = false
  audit.skip_http_events = false
  
  security.default_secrets_provider = "env" # default secret provider, env if it is enabled
  