For the complete documentation index, see llms.txt.
Skip to main content

Runtime environment variables

This reference inventories deployment-facing reShapr-specific settings in 1.1.0, plus the Quarkus and JVM settings most relevant to operating the control plane and proxy. Defaults are from the release's configuration and injection points, not Helm overrides. Unset means no deployment-independent value is supplied. Development credentials are intentionally not reproduced: replace them in production.

Quarkus exposes additional framework settings; this is not a copy of its entire configuration catalog. See the Quarkus configuration reference for precedence, profiles, and framework extensions. Build-time settings cannot generally be changed by adding an environment variable to an already built image.

Names and injection​

For fixed property names, uppercase and replace punctuation with _: reshapr.gateway.code-mode.timeout becomes RESHAPR_GATEWAY_CODE_MODE_TIMEOUT. Quoted segments use doubled underscores, for example QUARKUS_LOG_CATEGORY__IO_RESHAPR_PROXY__LEVEL. Dynamic map keys can be ambiguous after this conversion; declare their dotted names in a mounted configuration file rather than inventing environment names.

Use the proxy chart's extraEnv, the control-plane chart's ctrl.extraEnv, Compose service environment, or container --env / --env-file. Helm lists replace default lists: preserve any existing telemetry and deployment entries. Use Secret references for credentials, not literal values committed to Git. Changes require process restart or workload rollout, unlike Configuration Plan updates.

Proxy registration and backend calls​

VariableDefaultMeaning
RESHAPR_GATEWAY_IDreshapr-gateway-00Gateway registration ID; unique per running instance.
RESHAPR_GATEWAY_LABELSenv=dev;team=reshaprSemicolon-separated key=value labels used by Gateway Groups.
RESHAPR_GATEWAY_FQDNSlocalhost:7777Advertised addresses; configure addresses clients can actually reach.
RESHAPR_GATEWAY_API_KEYDevelopment placeholderGateway Admin API credential, not an Exposition's MCP API key.
RESHAPR_CTRL_HOSTlocalhostControl-plane host used by discovery and health gRPC clients.
RESHAPR_CTRL_PORT5555Control-plane port.
RESHAPR_CTRL_TOKENDevelopment placeholderGateway API token, including the required organization prefix.
RESHAPR_CTRL_TLS_PLAINTEXTtrueExplicit alias for reshapr.ctrl.tls.plain-text; false enables TLS for the control-plane connection.
RESHAPR_GATEWAY_MCP_CACHE_SIZE1000Maximum local parsed-artifact WorkCache entries; not an MCP response cache.
RESHAPR_GATEWAY_BACKEND_HTTP_DEFAULT_TIMEOUT3000 msDefault HTTP backend timeout; a Plan can supply its own timeout.
RESHAPR_GATEWAY_BACKEND_GRPC_DEFAULT_TIMEOUT3000 msDefault gRPC backend deadline; a Plan can supply its own timeout.
RESHAPR_GATEWAY_BACKEND_HTTP_MAX_PAYLOAD_SIZE10485760 bytesMaximum buffered HTTP backend response (10 MiB), enforced against declared length and streamed bytes. Not an incoming MCP request limit or a gRPC backend response limit.

Oversized HTTP backend responses are rejected rather than returned in full. Do not raise this ceiling without accounting for concurrent calls, parsing, output filters, and script intermediates in JVM/container memory. Reducing the final answer does not remove the memory cost of fetching the backend payload.

Code Mode and script guardrails​

All variables below apply to the proxy, globally rather than per Plan. Code Mode is enabled by the Plan's toolExposureMode, not by an environment switch.

VariableDefaultScope and unit
RESHAPR_GATEWAY_CODE_MODE_TIMEOUT10000Code Mode wall-clock execution time, milliseconds.
RESHAPR_GATEWAY_CODE_MODE_MAX_TOOL_CALLS10Tool calls allowed per Code Mode execution.
RESHAPR_GATEWAY_CODE_MODE_MAX_CODE_SIZE4000Submitted JavaScript characters, excluding the generated API prelude.
RESHAPR_GATEWAY_CODE_MODE_MAX_RESULT_SIZE100000Serialized result characters; checked after execution, not a streaming memory bound.
RESHAPR_GATEWAY_SCRIPTING_TIMEOUT10000Scripted Custom Tool wall-clock execution time, milliseconds.
RESHAPR_GATEWAY_SCRIPTING_MAX_TOOL_CALLS10Tool calls allowed in a Scripted Custom Tool's execution context.
RESHAPR_GATEWAY_SCRIPTING_MAX_DEPTH5Script nesting depth; used by both Scripted Custom Tools and Code Mode.
RESHAPR_GATEWAY_SCRIPTING_MAX_MEMORY_PAGES256WebAssembly linear-memory pages per sandbox, each 64 KiB; used by both execution paths. Default is 16 MiB.

Keep positive finite bounds. Nonpositive execution timeouts disable that timeout, and nonpositive memory-page settings leave the engine's default in place; neither is a production hardening choice. These are per-execution controls, not rate limits, concurrency limits, total process-memory limits, or transactional guarantees. A script failure does not roll back completed backend calls.

See Use Code Mode and Build a Scripted Custom Tool.

Control-plane identity and initialization​

VariableDefaultMeaning
RESHAPR_MODEon-premisesApplication mode (on-premises or saas); not a license or an automatic deployment topology.
RESHAPR_CTRL_PUBLIC_URLhttp://localhost:5555Browser-reachable control-plane URL, used for authentication callbacks.
RESHAPR_CTRL_API_KEYDevelopment placeholderControl-plane Admin API credential. Distinct from user JWTs and proxy registration tokens.
RESHAPR_ADMIN_NAMEUnsetInitial administrator name, used during startup initialization.
RESHAPR_ADMIN_EMAILUnsetInitial administrator email.
RESHAPR_ADMIN_PASSWORDUnsetInitial administrator password; not a password rotation mechanism.
RESHAPR_DEFAULT_GATEWAY_TOKENSUnsetInitial default-organization Gateway tokens.
RESHAPR_DEFAULT_GATEWAY_LABELSUnsetInitial Default Gateway Group labels.
RESHAPR_AUTHENTICATION_IDP_ENABLEDfalseEnable external OIDC identity provider.
RESHAPR_AUTHENTICATION_IDP_URLLocal development provider URLProvider authorization endpoint.
RESHAPR_AUTHENTICATION_IDP_TOKEN_URLLocal development provider URLProvider token endpoint.
RESHAPR_AUTHENTICATION_IDP_CLIENT_IDreshapr-ctrlProvider client identifier.
RESHAPR_AUTHENTICATION_IDP_CLIENT_SECRETDevelopment placeholderProvider client secret.
RESHAPR_AUTHENTICATION_IDP_SCOPESUnsetAdditional scopes; built-in scopes are openid profile email.
RESHAPR_AUTHENTICATION_IDP_ALLOWED_REDIRECT_URISUnsetExact allowed final browser callback URLs.
RESHAPR_AUTHENTICATION_IDP_ALLOW_CLI_LOOPBACK_REDIRECTtrueAllow CLI callbacks on loopback ports 5556 through 5599.
RESHAPR_AUTHENTICATION_IDP_GUARD_ACCESS_GROUPUnsetRequired provider groups membership.
RESHAPR_AUTHENTICATION_IDP_GUARD_ACCESS_CLAIMUnsetRequired name=value claim.
RESHAPR_AUTHENTICATION_IDP_DEFAULT_ORGANIZATION_CLAIMUnsetClaim identifying the default organization.
RESHAPR_AUTHENTICATION_IDP_DEFAULT_ORGANIZATION_GROUP_PREFIXUnsetProvider group prefix identifying the organization.
RESHAPR_AUTHENTICATION_IDP_DEFAULT_ORGANIZATION_VALUEUnsetFixed fallback organization; resolution order is claim, group prefix, then value.

For startup collection/map syntax and existing-data behavior, use the initialization implementation. Onboarding quota properties have the historical spelling resharp.ctrl.onboarding-quotas, not reshapr: configure dotted keys such as resharp.ctrl.onboarding-quotas."exposition.count" in a properties file. Defaults are 0 Gateways, 0 Gateway Groups, and 10 Expositions. These are resource counts, not request quotas.

See Configure control-plane OIDC for deployment requirements and remaining login-validation limitations. This page does not broaden its security guarantees.

Control-plane encryption​

VariableDefaultMeaning
RESHAPR_ENCRYPTION_KEYS_V1Public development keyBase64-encoded 32-byte AES key for key ID v1. Replace before production use.
RESHAPR_ENCRYPTION_ACTIVE_KEY_IDv1Explicit alias for the active encryption key ID (reshapr.encryption.active-kid).
RESHAPR_ENCRYPTION_LEGACY_KEYLegacy development placeholderLegacy AES/ECB decryption key during migration.
RESHAPR_ENCRYPTION_KEYLegacy fallbackOlder alias used only as fallback for the legacy key. Not the active AES-GCM key.

Additional key IDs use the dynamic map reshapr.encryption.keys.<kid>. Preserve old keys until stored values have been re-encrypted and backups considered; changing the active ID alone does not re-encrypt existing rows. See Rotate database encryption keys.

HTTP, discovery, database, and tokens​

VariableComponentRelease default / purpose
QUARKUS_HTTP_HOSTBothControl plane explicitly uses 0.0.0.0; proxy uses the framework's profile-dependent default.
QUARKUS_HTTP_PORTBothControl plane 5555, proxy 7777. Changing the port does not update Services, probes, or advertised addresses.
QUARKUS_HTTP_LIMITS_MAX_BODY_SIZEBoth10M; incoming HTTP request limit, separate from backend responses.
QUARKUS_HTTP_ENABLE_COMPRESSIONBothtrue; configured compressible type is application/json.
QUARKUS_HTTP_CORS_ENABLED / QUARKUS_HTTP_CORS_ORIGINSProxytrue / *; restrict origins to your client requirements.
QUARKUS_GRPC_CLIENTS__EXPOSITION_DISCOVERY__MAX_INBOUND_MESSAGE_SIZEProxy10485760 bytes; maximum incoming discovery message containing configuration/artifacts, not a backend payload.
QUARKUS_GRPC_CLIENTS__EXPOSITION_DISCOVERY__FLOW_CONTROL_WINDOWProxyFramework default; HTTP/2 flow-control window in bytes. Does not replace the message-size limit.
QUARKUS_DATASOURCE_JDBC_URLControl planeDeployment-supplied PostgreSQL JDBC URL.
QUARKUS_DATASOURCE_USERNAME / QUARKUS_DATASOURCE_PASSWORDControl planeDeployment-supplied database credentials.
QUARKUS_DATASOURCE_JDBC_MIN_SIZE / QUARKUS_DATASOURCE_JDBC_MAX_SIZEControl planeFramework pool defaults; size together with PostgreSQL limits and replica count.
QUARKUS_FLYWAY_MIGRATE_AT_STARTControl planetrue; startup migrations are required for the release schema. Disabling is not an upgrade strategy.
SMALLRYE_JWT_SIGN_KEY_LOCATIONControl planeProduction default keys/jwt-rs256.pem; private signing key location.
MP_JWT_VERIFY_PUBLICKEY_LOCATIONControl planeProduction default keys/jwt-rs256.pub.pem; matching verification key.
SMALLRYE_JWT_NEW_TOKEN_ISSUER / MP_JWT_VERIFY_ISSUERControl planehttps://app.reshapr.io; keep issuing and verifying configuration aligned.
SMALLRYE_JWT_TIME_TO_LIVE / MP_JWT_VERIFY_TOKEN_AGEControl plane7200 seconds; issued token lifetime and accepted token age.
GRAPHQL_PARSER_MAX_CHARACTERS / GRAPHQL_PARSER_MAX_TOKENSBoth100000000 / 100000; parser limits, not HTTP payload limits.

For application/framework configuration not listed here, start with the two release files below rather than treating all Quarkus properties as supported deployment overrides. Release metadata (reshapr.version, reshapr.buildTimestamp) is build information, not an operator tuning interface.

Logging, telemetry, and clustering​

Logging lists category and handler settings and their sensitivity. Proxy OTLP variables include QUARKUS_OTEL_SDK_DISABLED, QUARKUS_OTEL_EXPORTER_OTLP_ENDPOINT, QUARKUS_OTEL_EXPORTER_OTLP_PROTOCOL, and QUARKUS_OTEL_EXPORTER_OTLP_HEADERS. See Observe and audit for the supported export workflow; a runtime environment variable cannot restore a telemetry extension omitted at build time.

Infinispan XML reads JVM system properties, including reshapr.infinispan.stack. Do not assume RESHAPR_INFINISPAN_STACK is equivalent. The proxy chart sets the appropriate -D options through its JVM configuration; retain those options when adding your own. See Helm charts and the released Infinispan configuration. The container launcher also accepts JVM options such as JAVA_OPTS_APPEND; heap sizing must leave room for native memory, buffers, and concurrent sandboxes.

Canonical sources​

These owner contracts remain authoritative; this page provides the bounded deployment lookup rather than copying their full contents.

Agent View