All Connector configuration variables
As of SaaS v2, Connector configuration uses new canonical property names documented below. The legacy moderne.agent.* property names (and their MODERNE_AGENT_* environment variable equivalents) are still accepted and automatically mapped to their canonical equivalents at startup. New deployments should use the canonical names shown here.
This document includes all of the variables you can configure the Moderne Connector to run with. Your configuration will only use some of these.
Core variables
- OCI Container
- Executable JAR
Environment variables:
| Variable Name | Required | Default | Description |
|---|---|---|---|
MODERNE_CONNECTOR_APIGATEWAYRSOCKETURI | true | The URI used to connect to the Moderne API, provided by Moderne. | |
MODERNE_CONNECTOR_CRYPTO_SYMMETRICKEY | true | A 256-bit AES encryption key, hex encoded. Used to encrypt your artifacts. | |
MODERNE_CONNECTOR_NICKNAME | true | A name used to identify your Connector in the SaaS Connector dashboard UI. | |
MODERNE_CONNECTOR_TOKEN | true | The Moderne SaaS Connector connection token, provided by Moderne. | |
MODERNE_SCM_DEFAULTCOMMITOPTIONS_{index} | false | All options available. | Use to restrict which commit options are available in Moderne. Acceptable values: Direct, Branch, Fork, PullRequest, ForkAndPullRequest. |
MODERNE_AUTHORIZATION_ACCESSTOKENS_MAXEXPIRYDAYS | false | The maximum number of days a personal access token can be configured to expire in. When set, users cannot create tokens with an expiry date beyond this limit. |
Example:
docker run \
-e MODERNE_CONNECTOR_APIGATEWAYRSOCKETURI=https://api.tenant.moderne.io/connector \
-e MODERNE_CONNECTOR_CRYPTO_SYMMETRICKEY=yourSymmetricKey \
-e MODERNE_CONNECTOR_NICKNAME=prod-1 \
-e MODERNE_CONNECTOR_TOKEN=yourToken \
-e MODERNE_SCM_DEFAULTCOMMITOPTIONS_0=PullRequest \
-e MODERNE_SCM_DEFAULTCOMMITOPTIONS_1=ForkAndPullRequest \
# ... Additional variables
Arguments:
| Argument Name | Required | Default | Description |
|---|---|---|---|
--moderne.connector.apiGatewayRsocketUri | true | The URI used to connect to the Moderne API, provided by Moderne. | |
--moderne.connector.crypto.symmetricKey | true | A 256-bit AES encryption key, hex encoded. Used to encrypt your artifacts. | |
--moderne.connector.nickname | true | A name used to identify your Connector in the SaaS Connector dashboard UI. | |
--moderne.connector.token | true | The Moderne SaaS Connector connection token, provided by Moderne. | |
--moderne.scm.defaultCommitOptions[{index}] | false | All options available. | Use to restrict which commit options are available in Moderne. Acceptable values: Direct, Branch, Fork, PullRequest, ForkAndPullRequest. |
--moderne.authorization.accessTokens.maxExpiryDays | false | The maximum number of days a personal access token can be configured to expire in. When set, users cannot create tokens with an expiry date beyond this limit. |
Example:
java -jar connector-{version}.jar \
--moderne.connector.apiGatewayRsocketUri=https://api.tenant.moderne.io/connector \
--moderne.connector.crypto.symmetricKey=yourSymmetricKey \
--moderne.connector.nickname=prod-1 \
--moderne.connector.token=yourToken \
--moderne.scm.defaultCommitOptions[0]=PullRequest \
--moderne.scm.defaultCommitOptions[1]=ForkAndPullRequest \
# ... Additional arguments
Azure variables
- OCI Container
- Executable JAR
Environment variables:
| Variable Name | Required | Default | Description |
|---|---|---|---|
MODERNE_SCM_AZUREDEVOPS_{index}_OAUTH_CLIENTID | true | The client ID of the registered OAuth app. | |
MODERNE_SCM_AZUREDEVOPS_{index}_OAUTH_CLIENTSECRET | true | The client secret of the registered OAuth app. | |
MODERNE_SCM_AZUREDEVOPS_{index}_OAUTH_TENANTID | true | The Azure tenant ID of the registered OAuth app. |
Example:
docker run \
# ... Existing variables
-e MODERNE_SCM_AZUREDEVOPS_0_OAUTH_CLIENTID=4affd674-286d-423f-b643-7ffe4dec0f53 \
-e MODERNE_SCM_AZUREDEVOPS_0_OAUTH_CLIENTSECRET=yourClientSecret \
-e MODERNE_SCM_AZUREDEVOPS_0_OAUTH_TENANTID=488bc312-9fdc-43d2-a647-7a7b28066cc4 \
# ... Additional variables
Arguments:
| Argument Name | Required | Default | Description |
|---|---|---|---|
--moderne.scm.azureDevops[{index}].oauth.clientId | true | The client ID of the registered OAuth app. | |
--moderne.scm.azureDevops[{index}].oauth.clientSecret | true | The client secret of the registered OAuth app. | |
--moderne.scm.azureDevops[{index}].oauth.tenantId | true | The Azure tenant ID of the registered OAuth app. |
Example:
java -jar connector-{version}.jar \
# ... Existing arguments
--moderne.scm.azureDevops[0].oauth.clientId=4affd674-286d-423f-b643-7ffe4dec0f53 \
--moderne.scm.azureDevops[0].oauth.clientSecret=yourClientSecret \
--moderne.scm.azureDevops[0].oauth.tenantId=488bc312-9fdc-43d2-a647-7a7b28066cc4 \
# ... Additional arguments
Bitbucket Cloud variables
- OCI Container
- Executable JAR
Environment variables:
| Variable Name | Required | Default | Description |
|---|---|---|---|
MODERNE_SCM_BITBUCKETCLOUD_OAUTH_KEY | true | The key specified in your Bitbucket OAuth consumer. | |
MODERNE_SCM_BITBUCKETCLOUD_OAUTH_SECRET | true | The secret specified in your Bitbucket OAuth consumer. |
Example:
docker run \
# ... Existing variables
-e MODERNE_SCM_BITBUCKETCLOUD_OAUTH_KEY=yourOAuthKey \
-e MODERNE_SCM_BITBUCKETCLOUD_OAUTH_SECRET=yourSecretKey \
# ... Additional variables
Arguments:
| Argument Name | Required | Default | Description |
|---|---|---|---|
--moderne.scm.bitbucketCloud.oauth.key | true | The key specified in your Bitbucket OAuth consumer. | |
--moderne.scm.bitbucketCloud.oauth.secret | true | The secret specified in your Bitbucket OAuth consumer. |
Example:
java -jar connector-{version}.jar \
# ... Existing arguments
--moderne.scm.bitbucketCloud.oauth.key=yourOAuthKey \
--moderne.scm.bitbucketCloud.oauth.secret=yourSecretKey \
# ... Additional arguments
Bitbucket Data Center variables
You can configure multiple Bitbucket instances by including multiple entries, each with a different {index}.
- OCI Container
- Executable JAR
Environment variables:
| Variable Name | Required | Default | Description |
|---|---|---|---|
MODERNE_SCM_BITBUCKETDATACENTER_{index}_URI | true | The fully-qualified URI of the running Bitbucket instance. For example: https://bitbucket.myorg.com. | |
MODERNE_SCM_BITBUCKETDATACENTER_{index}_PRIVATEKEY | conditional | (OAuth1.0a only) The private key you configured for this Bitbucket instance. | |
MODERNE_SCM_BITBUCKETDATACENTER_{index}_OAUTH_KEY | conditional | (OAuth2 only) The client id for the Application Link that you configured for this Bitbucket instance. | |
MODERNE_SCM_BITBUCKETDATACENTER_{index}_OAUTH_SECRET | conditional | (OAuth2 only) The client secret for the Application Link that you configured for this Bitbucket instance. | |
MODERNE_SCM_BITBUCKETDATACENTER_{index}_SKIPSSL | false | false | Specifies whether or not to skip SSL validation for HTTP connections to this Bitbucket instance. This must be set to true if you use a self-signed SSL/TLS certificate. |
Example:
docker run \
# ... Existing variables
-e MODERNE_SCM_BITBUCKETDATACENTER_0_OAUTH_KEY=yourClientId \
-e MODERNE_SCM_BITBUCKETDATACENTER_0_OAUTH_SECRET=yourClientSecret \
-e MODERNE_SCM_BITBUCKETDATACENTER_0_URI=https://bitbucket.myorg.com \
# ... Additional variables
Arguments:
| Argument Name | Required | Default | Description |
|---|---|---|---|
--moderne.scm.bitbucketDatacenter[{index}].uri | true | The fully-qualified URI of the running Bitbucket instance. For example: https://bitbucket.myorg.com. | |
--moderne.scm.bitbucketDatacenter[{index}].privateKey | conditional | (OAuth1.0a only) The private key you configured for this Bitbucket instance. | |
--moderne.scm.bitbucketDatacenter[{index}].oauth.key | conditional | (OAuth2 only) The client id for the Application Link that you configured for this Bitbucket instance. | |
--moderne.scm.bitbucketDatacenter[{index}].oauth.secret | conditional | (OAuth2 only) The client secret for the Application Link that you configured for this Bitbucket instance. | |
--moderne.scm.bitbucketDatacenter[{index}].skipSsl | false | false | Specifies whether or not to skip SSL validation for HTTP connections to this Bitbucket instance. This must be set to true if you use a self-signed SSL/TLS certificate. |
Example:
java -jar connector-{version}.jar \
# ... Existing arguments
--moderne.scm.bitbucketDatacenter[0].oauth.key=yourClientId \
--moderne.scm.bitbucketDatacenter[0].oauth.secret=yourClientSecret \
--moderne.scm.bitbucketDatacenter[0].uri=https://bitbucket.myorg.com \
# ... Additional arguments
GitHub variables
You can configure multiple GitHub OAuth apps by including multiple entries, each with a different {index}.
- OCI Container
- Executable JAR
Environment variables:
| Variable Name | Required | Default | Description |
|---|---|---|---|
MODERNE_SCM_GITHUB_{index}_OAUTH_CLIENTID | true | The client id configured in GitHub. | |
MODERNE_SCM_GITHUB_{index}_OAUTH_CLIENTSECRET | true | The client secret configured in GitHub. | |
MODERNE_SCM_GITHUB_{index}_URI | true | The fully-qualified hostname of the running GitHub instance. | |
MODERNE_SCM_GITHUB_{index}_SKIPSSL | false | false | Specifies whether or not to skip SSL validation for HTTP connections to this GitHub instance. This must be set to true if you use a self-signed SSL/TLS certificate. |
MODERNE_SCM_GITHUB_{index}_ALLOWABLE_ORGANIZATIONS_{index} | false | See description | Specifies what organizations you can fork recipe results to. By default, there are no restrictions on which organizations can be committed to. If you want multiple organizations, increase the last index and add one per line. |
MODERNE_SCM_GITHUB_{index}_OAUTH_INCLUDEPRIVATEREPOS | false | See description | By default, the OAuth app will only have access to public repositories within your organization(s). To provide the OAuth app access to private repositories, you can set this to true. |
Example:
docker run \
# ... Existing variables
-e MODERNE_SCM_GITHUB_0_OAUTH_CLIENTID=yourClientId \
-e MODERNE_SCM_GITHUB_0_OAUTH_CLIENTSECRET=yourClientSecret \
-e MODERNE_SCM_GITHUB_0_URI=https://myorg.github.com \
-e MODERNE_SCM_GITHUB_0_ALLOWABLE_ORGANIZATIONS_0=moderne \
-e MODERNE_SCM_GITHUB_0_ALLOWABLE_ORGANIZATIONS_1=openrewrite \
-e MODERNE_SCM_GITHUB_0_OAUTH_INCLUDEPRIVATEREPOS=true \
# ... Additional variables
Arguments:
| Argument Name | Required | Default | Description |
|---|---|---|---|
--moderne.scm.github[{index}].oauth.clientId | true | The client id configured in GitHub. | |
--moderne.scm.github[{index}].oauth.clientSecret | true | The client secret configured in GitHub. | |
--moderne.scm.github[{index}].uri | true | The fully-qualified hostname of the running GitHub instance. | |
--moderne.scm.github[{index}].skipSsl | false | false | Specifies whether or not to skip SSL validation for HTTP connections to this GitHub instance. This must be set to true if you use a self-signed SSL/TLS certificate. |
--moderne.scm.github[{index}].allowableOrganizations[{index}] | false | See description | Specifies what organizations you can fork recipe results to. By default, there are no restrictions on which organizations can be committed to. If you want multiple organizations, increase the last index and add one per line. |
--moderne.scm.github[{index}].oauth.includePrivateRepos | false | See description | By default, the OAuth app will only have access to public repositories within your organization(s). To provide the OAuth app access to private repositories, you can set this to true. |
Example:
java -jar connector-{version}.jar \
# ... Existing arguments
--moderne.scm.github[0].oauth.clientId=yourClientId \
--moderne.scm.github[0].oauth.clientSecret=yourClientSecret \
--moderne.scm.github[0].uri=https://myorg.github.com \
--moderne.scm.github[0].allowableOrganizations[0]=moderne \
--moderne.scm.github[0].allowableOrganizations[1]=openrewrite \
--moderne.scm.github[0].oauth.includePrivateRepos=true \
# ... Additional arguments
GitLab variables
You can configure multiple GitLab OAuth apps by including multiple entries, each with a different {index}.
- OCI Container
- Executable JAR
Environment variables:
| Variable Name | Required | Default | Description |
|---|---|---|---|
MODERNE_SCM_GITLAB_{index}_OAUTH_CLIENTID | true | The application id configured in GitLab. | |
MODERNE_SCM_GITLAB_{index}_OAUTH_CLIENTSECRET | true | The secret configured in GitLab. | |
MODERNE_SCM_GITLAB_{index}_URI | true | The fully-qualified hostname of your GitLab instance. | |
MODERNE_SCM_GITLAB_{index}_SKIPSSL | false | false | Specifies whether or not to skip SSL validation for HTTP connections to this GitLab instance. This must be set to true if you use a self-signed SSL/TLS certificate. |
Example:
docker run \
# ... Existing variables
-e MODERNE_SCM_GITLAB_0_OAUTH_CLIENTID=yourClientId \
-e MODERNE_SCM_GITLAB_0_OAUTH_CLIENTSECRET=yourClientSecret \
-e MODERNE_SCM_GITLAB_0_URI=https://your-gitlab.com \
# ... Additional variables
Arguments:
| Argument Name | Required | Default | Description |
|---|---|---|---|
--moderne.scm.gitlab[{index}].oauth.clientId | true | The application id configured in GitLab. | |
--moderne.scm.gitlab[{index}].oauth.clientSecret | true | The secret configured in GitLab. | |
--moderne.scm.gitlab[{index}].uri | true | The fully-qualified hostname of your GitLab instance. | |
--moderne.scm.gitlab[{index}].skipSsl | false | false | Specifies whether or not to skip SSL validation for HTTP connections to this GitLab instance. This must be set to true if you use a self-signed SSL/TLS certificate. |
Example:
java -jar connector-{version}.jar \
# ... Existing arguments
--moderne.scm.gitlab[0].oauth.clientId=yourClientId \
--moderne.scm.gitlab[0].oauth.clientSecret=yourClientSecret \
--moderne.scm.gitlab[0].uri=https://your-gitlab.com \
# ... Additional arguments
Organization hierarchy variables
- OCI Container
- Executable JAR
Environment variables:
| Environment Variable | Required | Default | Description |
|---|---|---|---|
MODERNE_ORGANIZATION_SOURCES_FILE_{index}_PATH | false | The path to a local repos.csv file, relative to the Connector's permanent directory (MODERNE_CONNECTOR_STORAGE_PERMANENTDIR). | |
MODERNE_ORGANIZATION_SOURCES_HTTP_{index}_URI | false | The URL of an HTTP(S) endpoint serving your repos.csv file (e.g., https://<internal-endpoint>/repos.csv). | |
MODERNE_ORGANIZATION_SOURCES_HTTP_{index}_USERNAME | false | Username for basic auth against the HTTP endpoint. Mutually exclusive with BEARERTOKEN. | |
MODERNE_ORGANIZATION_SOURCES_HTTP_{index}_PASSWORD | false | Password for basic auth against the HTTP endpoint. Mutually exclusive with BEARERTOKEN. | |
MODERNE_ORGANIZATION_SOURCES_HTTP_{index}_BEARERTOKEN | false | Bearer token for the HTTP endpoint. Mutually exclusive with USERNAME/PASSWORD. | |
MODERNE_ORGANIZATION_SOURCES_HTTP_{index}_PROXY_HOST | false | The hostname of a proxy server to use for connections to the HTTP endpoint. If specified, PROXY_PORT must also be set. | |
MODERNE_ORGANIZATION_SOURCES_HTTP_{index}_PROXY_PORT | false | The port of the proxy server to use for connections to the HTTP endpoint. If specified, PROXY_HOST must also be set. | |
MODERNE_ORGANIZATION_SOURCES_S3_{index}_URI | false | The S3 URI of a CSV object (e.g., s3://my-bucket/repos-lock.csv). For the full set of S3 auth/region/endpoint variables, please see S3 organization source. |
Example using a local file:
docker run \
# ... Existing variables
-e MODERNE_ORGANIZATION_SOURCES_FILE_0_PATH=repos.csv \
# ... Additional variables
Example using an HTTP URL:
docker run \
# ... Existing variables
-e MODERNE_ORGANIZATION_SOURCES_HTTP_0_URI=https://internal.example.com/repos.csv \
# ... Additional variables
Arguments:
| Argument Name | Required | Default | Description |
|---|---|---|---|
--moderne.organization.sources.file[{index}].path | false | The path to a local repos.csv file, relative to the Connector's permanent directory (--moderne.connector.storage.permanentDir). | |
--moderne.organization.sources.http[{index}].uri | false | The URL of an HTTP(S) endpoint serving your repos.csv file (e.g., https://<internal-endpoint>/repos.csv). | |
--moderne.organization.sources.http[{index}].username | false | Username for basic auth against the HTTP endpoint. Mutually exclusive with bearerToken. | |
--moderne.organization.sources.http[{index}].password | false | Password for basic auth against the HTTP endpoint. Mutually exclusive with bearerToken. | |
--moderne.organization.sources.http[{index}].bearerToken | false | Bearer token for the HTTP endpoint. Mutually exclusive with username/password. | |
--moderne.organization.sources.http[{index}].proxy.host | false | The hostname of a proxy server to use for connections to the HTTP endpoint. If specified, proxy.port must also be set. | |
--moderne.organization.sources.http[{index}].proxy.port | false | The port of the proxy server to use for connections to the HTTP endpoint. If specified, proxy.host must also be set. | |
--moderne.organization.sources.s3[{index}].uri | false | The S3 URI of a CSV object (e.g., s3://my-bucket/repos-lock.csv). For the full set of S3 auth/region/endpoint arguments, please see S3 organization source. |
Example using a local file:
java -jar connector-{version}.jar \
# ... Existing arguments
--moderne.organization.sources.file[0].path=repos.csv \
# ... Additional arguments
Example using an HTTP URL:
java -jar connector-{version}.jar \
# ... Existing arguments
--moderne.organization.sources.http[0].uri=https://internal.example.com/repos.csv \
# ... Additional arguments
Organization sync variables
These variables control how often the Connector re-fetches each repos.csv source and the global concurrency for LST download, encryption, and upload operations. Both are optional.
- OCI Container
- Executable JAR
Environment variables:
| Environment Variable | Required | Default | Description |
|---|---|---|---|
MODERNE_CONNECTOR_ORGANIZATION_MODE | false | AUTO | Indexing mode. AUTO infers POLLING when any poll repository is configured and LOCK otherwise. LOCK forces use of publishUri values from the CSV (poll repositories, if any, supply credentials only). POLLING forces AQL / Maven Indexer discovery against poll repositories. |
MODERNE_CONNECTOR_ORGANIZATION_INTERVAL | false | 10m | How often the Connector re-fetches each source repos.csv and re-runs enrichment. Applies to both LOCK and POLLING modes. Specified as a duration (e.g., 10m, 1h). |
MODERNE_CONNECTOR_ORGANIZATION_DOWNLOADPARALLELISM | false | max(4, availableProcessors()) | Global cap on concurrent LST download, encrypt, and upload operations across all configured sources. |
Example:
docker run \
# ... Existing variables
-e MODERNE_CONNECTOR_ORGANIZATION_INTERVAL=5m \
-e MODERNE_CONNECTOR_ORGANIZATION_DOWNLOADPARALLELISM=8 \
# ... Additional variables
Arguments:
| Argument Name | Required | Default | Description |
|---|---|---|---|
--moderne.connector.organization.mode | false | AUTO | Indexing mode. AUTO infers POLLING when any poll repository is configured and LOCK otherwise. LOCK forces use of publishUri values from the CSV (poll repositories, if any, supply credentials only). POLLING forces AQL / Maven Indexer discovery against poll repositories. |
--moderne.connector.organization.interval | false | 10m | How often the Connector re-fetches each source repos.csv and re-runs enrichment. Applies to both LOCK and POLLING modes. Specified as a duration (e.g., 10m, 1h). |
--moderne.connector.organization.downloadParallelism | false | max(4, availableProcessors()) | Global cap on concurrent LST download, encrypt, and upload operations across all configured sources. |
Example:
java -jar connector-{version}.jar \
# ... Existing arguments
--moderne.connector.organization.interval=5m \
--moderne.connector.organization.downloadParallelism=8 \
# ... Additional arguments
Maven repository variables
You can configure multiple Maven repositories by including multiple entries, each with a different {index}.
- OCI Container
- Executable JAR
Environment variables:
| Variable Name | Required | Default | Description |
|---|---|---|---|
MODERNE_ORGANIZATION_SOURCES_HTTP_0_POLL_MAVEN_{index}_URI | true | The URI of your Maven repository. | |
MODERNE_ORGANIZATION_SOURCES_HTTP_0_POLL_MAVEN_{index}_LOCALREPOSITORY | false | ~/.moderne-maven | The path on disk where LST artifacts and Maven index files will be downloaded to. This is on the disk where the Connector is being run and not on the Maven instance. LST artifacts are deleted from this location after they are transmitted to Moderne. Index files will remain behind to be used to detect diffs in the artifacts. |
MODERNE_ORGANIZATION_SOURCES_HTTP_0_POLL_MAVEN_{index}_USERNAME | false | null | The username used to resolve artifacts. |
MODERNE_ORGANIZATION_SOURCES_HTTP_0_POLL_MAVEN_{index}_PASSWORD | false | null | The password used to resolve artifacts. |
MODERNE_ORGANIZATION_SOURCES_HTTP_0_POLL_MAVEN_{index}_RELEASES | false | true | Specifies whether or not this repository should be searched for releases. |
MODERNE_ORGANIZATION_SOURCES_HTTP_0_POLL_MAVEN_{index}_SNAPSHOTS | false | true | Specifies whether or not this repository should be searched for snapshots. |
MODERNE_ORGANIZATION_SOURCES_HTTP_0_POLL_MAVEN_{index}_SKIPSSL | false | false | Whether or not to skip SSL/TLS verification for calls from the Connector to this Maven repository. This must be set to true if you use a self-signed SSL/TLS certificate. |
MODERNE_ORGANIZATION_SOURCES_HTTP_0_POLL_MAVEN_{index}_SKIPVALIDATECONNECTIVITY | false | false | By default, on Connector startup, we will validate that we can connect to this Maven repository, and fail to start up the Connector if we cannot. Set this to true to skip this validation. |
MODERNE_ORGANIZATION_SOURCES_HTTP_0_POLL_MAVEN_{index}_PROXY_HOST | false | The hostname of a proxy server to use for connections to this Maven repository. | |
MODERNE_ORGANIZATION_SOURCES_HTTP_0_POLL_MAVEN_{index}_PROXY_PORT | false | The port of the proxy server to use for connections to this Maven repository. | |
MODERNE_ORGANIZATION_SOURCES_HTTP_0_POLL_MAVEN_{index}_CONNECTTIMEOUT | false | 30s | Timeout for the connection to be established (and the first data received). Specified as a duration (e.g., 30s, 1m). |
MODERNE_ORGANIZATION_SOURCES_HTTP_0_POLL_MAVEN_{index}_READTIMEOUT | false | 60s | Timeout for reading the response body from the Maven repository. Specified as a duration (e.g., 60s, 5m). |
Example:
docker run \
# ... Existing variables
-e MODERNE_ORGANIZATION_SOURCES_HTTP_0_POLL_MAVEN_0_URI=https://myartifactory.example.com/artifactory/libs-releases-local \
-e MODERNE_ORGANIZATION_SOURCES_HTTP_0_POLL_MAVEN_0_USERNAME=admin \
-e MODERNE_ORGANIZATION_SOURCES_HTTP_0_POLL_MAVEN_0_PASSWORD=password \
# ... Additional variables
Arguments:
| Argument Name | Required | Default | Description |
|---|---|---|---|
--moderne.organization.sources.http[0].poll.maven[{index}].uri | true | The URI of your Maven repository. | |
--moderne.organization.sources.http[0].poll.maven[{index}].localRepository | false | ~/.moderne-maven | The path on disk where LST artifacts and Maven index files will be downloaded to. This is on the disk where the Connector is being run and not on the Maven instance. LST artifacts are deleted from this location after they are transmitted to Moderne. Index files will remain behind to be used to detect diffs in the artifacts. |
--moderne.organization.sources.http[0].poll.maven[{index}].username | false | null | The username used to resolve artifacts. |
--moderne.organization.sources.http[0].poll.maven[{index}].password | false | null | The password used to resolve artifacts. |
--moderne.organization.sources.http[0].poll.maven[{index}].releases | false | true | Specifies whether or not this repository should be searched for releases. |
--moderne.organization.sources.http[0].poll.maven[{index}].snapshots | false | true | Specifies whether or not this repository should be searched for snapshots. |
--moderne.organization.sources.http[0].poll.maven[{index}].skipSsl | false | false | Whether or not to skip SSL/TLS verification for calls from the Connector to this Maven repository. This must be set to true if you use a self-signed SSL/TLS certificate. |
--moderne.organization.sources.http[0].poll.maven[{index}].skipValidateConnectivity | false | false | By default, on Connector startup, we will validate that we can connect to this Maven repository, and fail to start up the Connector if we cannot. Set this to true to skip this validation. |
--moderne.organization.sources.http[0].poll.maven[{index}].proxy.host | false | The hostname of a proxy server to use for connections to this Maven repository. | |
--moderne.organization.sources.http[0].poll.maven[{index}].proxy.port | false | The port of the proxy server to use for connections to this Maven repository. | |
--moderne.organization.sources.http[0].poll.maven[{index}].connectTimeout | false | 30s | Timeout for the connection to be established (and the first data received). Specified as a duration (e.g., 30s, 1m). |
--moderne.organization.sources.http[0].poll.maven[{index}].readTimeout | false | 60s | Timeout for reading the response body from the Maven repository. Specified as a duration (e.g., 60s, 5m). |
Example:
java -jar connector-{version}.jar \
# ... Existing arguments
--moderne.organization.sources.http[0].poll.maven[0].uri=https://myartifactory.example.com/artifactory/libs-releases-local \
--moderne.organization.sources.http[0].poll.maven[0].username=admin \
--moderne.organization.sources.http[0].poll.maven[0].password=password \
# ... Additional arguments
Artifactory repository variables
You can configure multiple Artifactory servers by including multiple entries, each with a different {index}. Within a given Artifactory server configuration, you can configure multiple LST query filters by including multiple entries, each with a different {index}.
- OCI Container
- Executable JAR
Environment variables:
| Variable Name | Required | Default | Description |
|---|---|---|---|
MODERNE_ORGANIZATION_SOURCES_HTTP_0_POLL_ARTIFACTORY_{index}_URI | true | The URL of your Artifactory instance. | |
MODERNE_ORGANIZATION_SOURCES_HTTP_0_POLL_ARTIFACTORY_{index}_USERNAME | false | The username used to connect to your Artifactory instance. This user must have permission to run AQL queries. Note: Only one of basic auth (username+password) or bearer token can be used. | |
MODERNE_ORGANIZATION_SOURCES_HTTP_0_POLL_ARTIFACTORY_{index}_PASSWORD | false | The password used to connect to your Artifactory instance. Note: Only one of basic auth (username+password) or bearer token can be used. | |
MODERNE_ORGANIZATION_SOURCES_HTTP_0_POLL_ARTIFACTORY_{index}_BEARERTOKEN | false | The bearer token (access token) used to connect to your Artifactory instance. Note: Only one of basic auth (username+password) or bearer token can be used. If bearerToken is specified, username and password must not be provided. | |
MODERNE_ORGANIZATION_SOURCES_HTTP_0_POLL_ARTIFACTORY_{index}_LSTQUERYFILTERS_{index} | true | The AQL query fragment used to select LST artifacts to send to Moderne. If multiple are specified, they are combined together with an AND. | |
MODERNE_ORGANIZATION_SOURCES_HTTP_0_POLL_ARTIFACTORY_{index}_SKIPSSL | false | false | Specifies whether or not to skip SSL verification for HTTP connections from the Connector to this Artifactory instance. This must be set to true if you use a self-signed SSL/TLS certificate. |
MODERNE_ORGANIZATION_SOURCES_HTTP_0_POLL_ARTIFACTORY_{index}_SKIPVALIDATECONNECTIVITY | false | false | By default, on Connector startup, we will validate that we can connect to this Artifactory instance, and fail to start up the Connector if we cannot. Set this to true to skip this validation. |
MODERNE_ORGANIZATION_SOURCES_HTTP_0_POLL_ARTIFACTORY_{index}_PROXY_HOST | false | The hostname of a proxy server to use for connections to this Artifactory instance. | |
MODERNE_ORGANIZATION_SOURCES_HTTP_0_POLL_ARTIFACTORY_{index}_PROXY_PORT | false | The port of the proxy server to use for connections to this Artifactory instance. | |
MODERNE_ORGANIZATION_SOURCES_HTTP_0_POLL_ARTIFACTORY_{index}_CONNECTTIMEOUT | false | 30s | Timeout for the connection to be established (and the first data received). Specified as a duration (e.g., 30s, 1m). |
MODERNE_ORGANIZATION_SOURCES_HTTP_0_POLL_ARTIFACTORY_{index}_READTIMEOUT | false | 60s | Timeout for reading the response body from the Artifactory instance. Specified as a duration (e.g., 60s, 5m). |
Example:
docker run \
# ... Existing variables
-e MODERNE_ORGANIZATION_SOURCES_HTTP_0_POLL_ARTIFACTORY_0_URI=https://myartifactory.example.com/artifactory/ \
-e MODERNE_ORGANIZATION_SOURCES_HTTP_0_POLL_ARTIFACTORY_0_USERNAME=admin \
-e MODERNE_ORGANIZATION_SOURCES_HTTP_0_POLL_ARTIFACTORY_0_PASSWORD=password \
-e MODERNE_ORGANIZATION_SOURCES_HTTP_0_POLL_ARTIFACTORY_0_LSTQUERYFILTERS_0='"name":{"$match":"*-ast.jar"}' \
-e MODERNE_ORGANIZATION_SOURCES_HTTP_0_POLL_ARTIFACTORY_0_LSTQUERYFILTERS_1='"repo":{"$eq":"example-maven"}' \
# ... Additional variables
Arguments:
| Argument Name | Required | Default | Description |
|---|---|---|---|
--moderne.organization.sources.http[0].poll.artifactory[{index}].uri | true | The URL of your Artifactory instance. | |
--moderne.organization.sources.http[0].poll.artifactory[{index}].username | false | The username used to connect to your Artifactory instance. This user must have permission to run AQL queries. Note: Only one of basic auth (username+password) or bearer token can be used. | |
--moderne.organization.sources.http[0].poll.artifactory[{index}].password | false | The password used to connect to your Artifactory instance. Note: Only one of basic auth (username+password) or bearer token can be used. | |
--moderne.organization.sources.http[0].poll.artifactory[{index}].bearerToken | false | The bearer token (access token) used to connect to your Artifactory instance. Note: Only one of basic auth (username+password) or bearer token can be used. If bearerToken is specified, username and password must not be provided. | |
--moderne.organization.sources.http[0].poll.artifactory[{index}].lstQueryFilters[{index}] | true | The AQL query fragment used to select LST artifacts to send to Moderne. If multiple are specified, they are combined together with an AND. | |
--moderne.organization.sources.http[0].poll.artifactory[{index}].skipSsl | false | false | Specifies whether or not to skip SSL verification for HTTP connections from the Connector to this Artifactory instance. This must be set to true if you use a self-signed SSL/TLS certificate. |
--moderne.organization.sources.http[0].poll.artifactory[{index}].skipValidateConnectivity | false | false | By default, on Connector startup, we will validate that we can connect to this Artifactory instance, and fail to start up the Connector if we cannot. Set this to true to skip this validation. |
--moderne.organization.sources.http[0].poll.artifactory[{index}].proxy.host | false | The hostname of a proxy server to use for connections to this Artifactory instance. | |
--moderne.organization.sources.http[0].poll.artifactory[{index}].proxy.port | false | The port of the proxy server to use for connections to this Artifactory instance. | |
--moderne.organization.sources.http[0].poll.artifactory[{index}].connectTimeout | false | 30s | Timeout for the connection to be established (and the first data received). Specified as a duration (e.g., 30s, 1m). |
--moderne.organization.sources.http[0].poll.artifactory[{index}].readTimeout | false | 60s | Timeout for reading the response body from the Artifactory instance. Specified as a duration (e.g., 60s, 5m). |
Example:
java -jar connector-{version}.jar \
# ... Existing arguments
--moderne.organization.sources.http[0].poll.artifactory[0].uri=https://myartifactory.example.com/artifactory/ \
--moderne.organization.sources.http[0].poll.artifactory[0].username=admin \
--moderne.organization.sources.http[0].poll.artifactory[0].password=password \
--moderne.organization.sources.http[0].poll.artifactory[0].lstQueryFilters[0]='{"name":{"$match":"*-ast.jar"}}' \
--moderne.organization.sources.http[0].poll.artifactory[0].lstQueryFilters[1]='{"repo":{"$eq":"example-maven"}}' \
# ... Additional arguments
Recipe marketplace Maven variables
Recipe marketplace repositories are configured under the moderne.recipe.marketplace.repositories namespace. You can configure multiple Maven repositories by including multiple entries, each with a different {index}.
- OCI Container
- Executable JAR
Environment variables:
| Variable Name | Required | Default | Description |
|---|---|---|---|
MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_MAVEN_{index}_URI | true | The URL of your Maven repository. | |
MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_MAVEN_{index}_USERNAME | false | null | The username used to resolve artifacts. |
MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_MAVEN_{index}_PASSWORD | false | null | The password used to resolve artifacts. |
MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_MAVEN_{index}_PROXY_HOST | false | null | The host of an HTTP proxy used to reach this repository. |
MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_MAVEN_{index}_PROXY_PORT | false | null | The port of an HTTP proxy used to reach this repository. |
MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_MAVEN_{index}_SKIPSSL | false | false | Whether or not to skip SSL/TLS verification for calls from the Connector to this Maven repository. This must be set to true if you use a self-signed SSL/TLS certificate. |
MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_MAVEN_{index}_RELEASES | false | true | Specifies whether or not this repository should be searched for releases. |
MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_MAVEN_{index}_SNAPSHOTS | false | true | Specifies whether or not this repository should be searched for snapshots. |
Example:
docker run \
# ... Existing variables
-e MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_MAVEN_0_URI=https://myartifactory.example.com/artifactory/libs-releases-local \
-e MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_MAVEN_0_USERNAME=admin \
-e MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_MAVEN_0_PASSWORD=password \
# ... Additional variables
Arguments:
| Argument Name | Required | Default | Description |
|---|---|---|---|
--moderne.recipe.marketplace.repositories.maven[{index}].uri | true | The URL of your Maven repository. | |
--moderne.recipe.marketplace.repositories.maven[{index}].username | false | null | The username used to resolve artifacts. |
--moderne.recipe.marketplace.repositories.maven[{index}].password | false | null | The password used to resolve artifacts. |
--moderne.recipe.marketplace.repositories.maven[{index}].proxy.host | false | null | The host of an HTTP proxy used to reach this repository. |
--moderne.recipe.marketplace.repositories.maven[{index}].proxy.port | false | null | The port of an HTTP proxy used to reach this repository. |
--moderne.recipe.marketplace.repositories.maven[{index}].skipSsl | false | false | Whether or not to skip SSL/TLS verification for calls from the Connector to this Maven repository. This must be set to true if you use a self-signed SSL/TLS certificate. |
--moderne.recipe.marketplace.repositories.maven[{index}].releases | false | true | Specifies whether or not this repository should be searched for releases. |
--moderne.recipe.marketplace.repositories.maven[{index}].snapshots | false | true | Specifies whether or not this repository should be searched for snapshots. |
Example:
java -jar connector-{version}.jar \
# ... Existing arguments
--moderne.recipe.marketplace.repositories.maven[0].uri=https://myartifactory.example.com/artifactory/libs-releases-local \
--moderne.recipe.marketplace.repositories.maven[0].username=admin \
--moderne.recipe.marketplace.repositories.maven[0].password=password \
# ... Additional arguments
Recipe marketplace NPM variables
NPM repositories support either basic authentication (username + password) or bearer token authentication (bearerToken), but not both at the same time. You can configure multiple NPM registries by including multiple entries, each with a different {index}.
- OCI Container
- Executable JAR
Environment variables:
| Variable Name | Required | Default | Description |
|---|---|---|---|
MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_NPM_{index}_URI | true | The URL of your NPM registry. | |
MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_NPM_{index}_USERNAME | false | null | The username used to resolve artifacts. Mutually exclusive with BEARERTOKEN. |
MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_NPM_{index}_PASSWORD | false | null | The password used to resolve artifacts. Mutually exclusive with BEARERTOKEN. |
MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_NPM_{index}_BEARERTOKEN | false | null | A bearer token used to resolve artifacts. Mutually exclusive with USERNAME/PASSWORD. |
MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_NPM_{index}_PROXY_HOST | false | null | The host of an HTTP proxy used to reach this registry. |
MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_NPM_{index}_PROXY_PORT | false | null | The port of an HTTP proxy used to reach this registry. |
MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_NPM_{index}_SKIPSSL | false | false | Whether or not to skip SSL/TLS verification for calls from the Connector to this NPM registry. This must be set to true if you use a self-signed SSL/TLS certificate. |
Example:
docker run \
# ... Existing variables
-e MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_NPM_0_URI=https://myartifactory.example.com/artifactory/api/npm/npm-local \
-e MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_NPM_0_BEARERTOKEN=... \
# ... Additional variables
Arguments:
| Argument Name | Required | Default | Description |
|---|---|---|---|
--moderne.recipe.marketplace.repositories.npm[{index}].uri | true | The URL of your NPM registry. | |
--moderne.recipe.marketplace.repositories.npm[{index}].username | false | null | The username used to resolve artifacts. Mutually exclusive with bearerToken. |
--moderne.recipe.marketplace.repositories.npm[{index}].password | false | null | The password used to resolve artifacts. Mutually exclusive with bearerToken. |
--moderne.recipe.marketplace.repositories.npm[{index}].bearerToken | false | null | A bearer token used to resolve artifacts. Mutually exclusive with username/password. |
--moderne.recipe.marketplace.repositories.npm[{index}].proxy.host | false | null | The host of an HTTP proxy used to reach this registry. |
--moderne.recipe.marketplace.repositories.npm[{index}].proxy.port | false | null | The port of an HTTP proxy used to reach this registry. |
--moderne.recipe.marketplace.repositories.npm[{index}].skipSsl | false | false | Whether or not to skip SSL/TLS verification for calls from the Connector to this NPM registry. This must be set to true if you use a self-signed SSL/TLS certificate. |
Example:
java -jar connector-{version}.jar \
# ... Existing arguments
--moderne.recipe.marketplace.repositories.npm[0].uri=https://myartifactory.example.com/artifactory/api/npm/npm-local \
--moderne.recipe.marketplace.repositories.npm[0].bearerToken=... \
# ... Additional arguments
Recipe marketplace NuGet variables
NuGet repositories support either basic authentication (username + password) or bearer token authentication (bearerToken), but not both at the same time. You can configure multiple NuGet feeds by including multiple entries, each with a different {index}.
- OCI Container
- Executable JAR
Environment variables:
| Variable Name | Required | Default | Description |
|---|---|---|---|
MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_NUGET_{index}_URI | true | The URL of your NuGet feed. | |
MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_NUGET_{index}_USERNAME | false | null | The username used to resolve artifacts. Mutually exclusive with BEARERTOKEN. |
MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_NUGET_{index}_PASSWORD | false | null | The password used to resolve artifacts. Mutually exclusive with BEARERTOKEN. |
MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_NUGET_{index}_BEARERTOKEN | false | null | A bearer token used to resolve artifacts. Mutually exclusive with USERNAME/PASSWORD. |
MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_NUGET_{index}_PROXY_HOST | false | null | The host of an HTTP proxy used to reach this feed. |
MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_NUGET_{index}_PROXY_PORT | false | null | The port of an HTTP proxy used to reach this feed. |
MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_NUGET_{index}_SKIPSSL | false | false | Whether or not to skip SSL/TLS verification for calls from the Connector to this NuGet feed. This must be set to true if you use a self-signed SSL/TLS certificate. |
Example:
docker run \
# ... Existing variables
-e MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_NUGET_0_URI=https://myartifactory.example.com/artifactory/api/nuget/nuget-local \
-e MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_NUGET_0_BEARERTOKEN=... \
# ... Additional variables
Arguments:
| Argument Name | Required | Default | Description |
|---|---|---|---|
--moderne.recipe.marketplace.repositories.nuget[{index}].uri | true | The URL of your NuGet feed. | |
--moderne.recipe.marketplace.repositories.nuget[{index}].username | false | null | The username used to resolve artifacts. Mutually exclusive with bearerToken. |
--moderne.recipe.marketplace.repositories.nuget[{index}].password | false | null | The password used to resolve artifacts. Mutually exclusive with bearerToken. |
--moderne.recipe.marketplace.repositories.nuget[{index}].bearerToken | false | null | A bearer token used to resolve artifacts. Mutually exclusive with username/password. |
--moderne.recipe.marketplace.repositories.nuget[{index}].proxy.host | false | null | The host of an HTTP proxy used to reach this feed. |
--moderne.recipe.marketplace.repositories.nuget[{index}].proxy.port | false | null | The port of an HTTP proxy used to reach this feed. |
--moderne.recipe.marketplace.repositories.nuget[{index}].skipSsl | false | false | Whether or not to skip SSL/TLS verification for calls from the Connector to this NuGet feed. This must be set to true if you use a self-signed SSL/TLS certificate. |
Example:
java -jar connector-{version}.jar \
# ... Existing arguments
--moderne.recipe.marketplace.repositories.nuget[0].uri=https://myartifactory.example.com/artifactory/api/nuget/nuget-local \
--moderne.recipe.marketplace.repositories.nuget[0].bearerToken=... \
# ... Additional arguments
Recipe marketplace PyPI variables
You can configure multiple PyPI indexes by including multiple entries, each with a different {index}.
- OCI Container
- Executable JAR
Environment variables:
| Variable Name | Required | Default | Description |
|---|---|---|---|
MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_PYPI_{index}_URI | true | The URL of your PyPI index. | |
MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_PYPI_{index}_USERNAME | false | null | The username used to resolve artifacts. |
MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_PYPI_{index}_PASSWORD | false | null | The password used to resolve artifacts. |
MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_PYPI_{index}_PROXY_HOST | false | null | The host of an HTTP proxy used to reach this index. |
MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_PYPI_{index}_PROXY_PORT | false | null | The port of an HTTP proxy used to reach this index. |
MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_PYPI_{index}_SKIPSSL | false | false | Whether or not to skip SSL/TLS verification for calls from the Connector to this PyPI index. This must be set to true if you use a self-signed SSL/TLS certificate. |
Example:
docker run \
# ... Existing variables
-e MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_PYPI_0_URI=https://myartifactory.example.com/artifactory/api/pypi/pypi-local/simple \
-e MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_PYPI_0_USERNAME=admin \
-e MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_PYPI_0_PASSWORD=password \
# ... Additional variables
Arguments:
| Argument Name | Required | Default | Description |
|---|---|---|---|
--moderne.recipe.marketplace.repositories.pypi[{index}].uri | true | The URL of your PyPI index. | |
--moderne.recipe.marketplace.repositories.pypi[{index}].username | false | null | The username used to resolve artifacts. |
--moderne.recipe.marketplace.repositories.pypi[{index}].password | false | null | The password used to resolve artifacts. |
--moderne.recipe.marketplace.repositories.pypi[{index}].proxy.host | false | null | The host of an HTTP proxy used to reach this index. |
--moderne.recipe.marketplace.repositories.pypi[{index}].proxy.port | false | null | The port of an HTTP proxy used to reach this index. |
--moderne.recipe.marketplace.repositories.pypi[{index}].skipSsl | false | false | Whether or not to skip SSL/TLS verification for calls from the Connector to this PyPI index. This must be set to true if you use a self-signed SSL/TLS certificate. |
Example:
java -jar connector-{version}.jar \
# ... Existing arguments
--moderne.recipe.marketplace.repositories.pypi[0].uri=https://myartifactory.example.com/artifactory/api/pypi/pypi-local/simple \
--moderne.recipe.marketplace.repositories.pypi[0].username=admin \
--moderne.recipe.marketplace.repositories.pypi[0].password=password \
# ... Additional arguments
S3 bucket variables
You can configure multiple S3 buckets by including multiple entries, each with a different {index}.
- OCI Container
- Executable JAR
Environment variables:
| Variable Name | Required | Default | Description |
|---|---|---|---|
MODERNE_ORGANIZATION_SOURCES_S3_{index}_URI | true | The S3 bucket URI. Must start with s3:// (e.g., s3://my-bucket-name). | |
MODERNE_ORGANIZATION_SOURCES_S3_{index}_ENDPOINTURL | false | Custom endpoint URL for S3-compatible services (e.g., http://localhost:9000 for MinIO). Leave empty for standard AWS S3. | |
MODERNE_ORGANIZATION_SOURCES_S3_{index}_REGION | false | The AWS region where the bucket is located (e.g., us-east-1). | |
MODERNE_ORGANIZATION_SOURCES_S3_{index}_ACCESSKEY | false (Required if not using profile or IAM role) | The AWS access key ID for authentication. | |
MODERNE_ORGANIZATION_SOURCES_S3_{index}_SECRETKEY | false (Required if using access key) | The AWS secret key for authentication. | |
MODERNE_ORGANIZATION_SOURCES_S3_{index}_PROFILE | false (Alternative to access key/secret key) | The AWS profile name from your credentials file. | |
MODERNE_ORGANIZATION_SOURCES_S3_{index}_SKIPSSL | true (If using self-signed cert or non-HTTPS endpoint) | false | Specifies whether to skip SSL verification for connections to the S3 endpoint. |
Example:
docker run \
# ... Existing variables
-e MODERNE_ORGANIZATION_SOURCES_S3_0_URI=s3://my-lst-bucket \
-e MODERNE_ORGANIZATION_SOURCES_S3_0_REGION=us-east-1 \
-e MODERNE_ORGANIZATION_SOURCES_S3_0_ACCESSKEY=AKIAIOSFODNN7EXAMPLE \
-e MODERNE_ORGANIZATION_SOURCES_S3_0_SECRETKEY=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY \
# ... Additional variables
Arguments:
| Argument Name | Required | Default | Description |
|---|---|---|---|
--moderne.organization.sources.s3[{index}].uri | true | The S3 bucket URI. Must start with s3:// (e.g., s3://my-bucket-name). | |
--moderne.organization.sources.s3[{index}].endpointUrl | false | Custom endpoint URL for S3-compatible services (e.g., http://localhost:9000 for MinIO). Leave empty for standard AWS S3. | |
--moderne.organization.sources.s3[{index}].region | false | The AWS region where the bucket is located (e.g., us-east-1). | |
--moderne.organization.sources.s3[{index}].accessKey | false (Required if not using profile or IAM role) | The AWS access key ID for authentication. | |
--moderne.organization.sources.s3[{index}].secretKey | false (Required if using access key) | The AWS secret key for authentication. | |
--moderne.organization.sources.s3[{index}].profile | false (Alternative to access key/secret key) | The AWS profile name from your credentials file. | |
--moderne.organization.sources.s3[{index}].skipSsl | true (If using self-signed cert or non-HTTPS endpoint) | false | Specifies whether to skip SSL verification for connections to the S3 endpoint. |
Example:
java -jar connector-{version}.jar \
# ... Existing arguments
--moderne.organization.sources.s3[0].uri=s3://my-lst-bucket \
--moderne.organization.sources.s3[0].region=us-east-1 \
--moderne.organization.sources.s3[0].accessKey=AKIAIOSFODNN7EXAMPLE \
--moderne.organization.sources.s3[0].secretKey=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY \
# ... Additional arguments
Recipe POM cache variables
- OCI Container
- Executable JAR
Environment variables:
| Variable Name | Required | Default | Description |
|---|---|---|---|
MODERNE_CONNECTOR_RECIPE_POMCACHE_TYPE | false | Used to specify what type of cache the POM should use. Acceptable values: IN_MEMORY or REDIS. | |
MODERNE_CONNECTOR_RECIPE_POMCACHE_ENTRYTTLMINUTES | false | 60 | How long entries should live in the POM cache. |
MODERNE_CONNECTOR_RECIPE_POMCACHE_REDIS_HOST | true (If the POM cache type is REDIS) | The URL of the Redis instance. | |
MODERNE_CONNECTOR_RECIPE_POMCACHE_REDIS_PORT | true (If the POM cache type is REDIS) | 6379 | The port number of the Redis instance. |
MODERNE_CONNECTOR_RECIPE_POMCACHE_REDIS_USERNAME | false | The username needed to authenticate to the Redis instance. | |
MODERNE_CONNECTOR_RECIPE_POMCACHE_REDIS_PASSWORD | false | The password needed to authenticate with the Redis instance. | |
MODERNE_CONNECTOR_RECIPE_POMCACHE_REDIS_SSL | false | false | If set to true, then SSL will be enabled for the connection to the Redis instance. |
MODERNE_CONNECTOR_RECIPE_POMCACHE_REDIS_DATABASE | false | 0 | The Redis DB index. |
Example:
docker run \
# ... Existing variables
-e MODERNE_CONNECTOR_RECIPE_POMCACHE_TYPE=REDIS \
-e MODERNE_CONNECTOR_RECIPE_POMCACHE_REDIS_HOST=localhost \
# ... Additional variables
Arguments:
| Argument Name | Required | Default | Description |
|---|---|---|---|
--moderne.connector.recipe.pomCache.type | false | Used to specify what type of cache the POM should use. Acceptable values: IN_MEMORY or REDIS. | |
--moderne.connector.recipe.pomCache.entryTtlMinutes | false | 60 | How long entries should live in the POM cache. |
--moderne.connector.recipe.pomCache.redis.host | true (If the POM cache type is REDIS) | The URL of the Redis instance. | |
--moderne.connector.recipe.pomCache.redis.port | true (If the POM cache type is REDIS) | 6379 | The port number of the Redis instance. |
--moderne.connector.recipe.pomCache.redis.username | false | The username needed to authenticate to the Redis instance. | |
--moderne.connector.recipe.pomCache.redis.password | false | The password needed to authenticate with the Redis instance. | |
--moderne.connector.recipe.pomCache.redis.ssl | false | false | If set to true, then SSL will be enabled for the connection to the Redis instance. |
--moderne.connector.recipe.pomCache.redis.database | false | 0 | The Redis DB index. |
Example:
java -jar connector-{version}.jar \
# ... Existing arguments
--moderne.connector.recipe.pomCache.type=REDIS \
--moderne.connector.recipe.pomCache.redis.host=localhost \
# ... Additional arguments
HTTP proxy variables
- OCI Container
- Executable JAR
Environment variables:
| Variable Name | Required | Default | Description |
|---|---|---|---|
MODERNE_CONNECTOR_APIGATEWAY_PROXY_HOST | false | Host (without scheme) for the proxy server. | |
MODERNE_CONNECTOR_APIGATEWAY_PROXY_PORT | false | Port for the proxy server. |
If you include either a host or port, you must include both.
Example:
docker run \
# ... Existing variables
-e MODERNE_CONNECTOR_APIGATEWAY_PROXY_HOST=proxy.mycompany.com \
-e MODERNE_CONNECTOR_APIGATEWAY_PROXY_PORT=8179 \
# ... Additional variables
Arguments:
| Argument Name | Required | Default | Description |
|---|---|---|---|
--moderne.connector.apiGateway.proxy.host | false | Host (without scheme) for the proxy server. | |
--moderne.connector.apiGateway.proxy.port | false | Port for the proxy server. |
If you include either a host or port, you must include both.
Example:
java -jar connector-{version}.jar \
# ... Existing arguments
--moderne.connector.apiGateway.proxy.host=proxy.mycompany.com \
--moderne.connector.apiGateway.proxy.port=8179 \
# ... Additional arguments
UI customization variables
- OCI Container
- Executable JAR
Environment variables:
| Variable Name | Required | Default | Description |
|---|---|---|---|
MODERNE_UI_MOREHELP_0_LABEL | false | null | Custom label for first link under the 'Need more help?' menu. If populated, the URI property must also be populated. Maximum of 3 help items supported. |
MODERNE_UI_MOREHELP_0_URI | false | null | The URI for the first custom help resource. Must be a fully qualified URI that is accessible to users of the platform. |
MODERNE_UI_MOREHELP_1_LABEL | false | null | Custom label for second link under the 'Need more help?' menu. If populated, the URI property must also be populated. |
MODERNE_UI_MOREHELP_1_URI | false | null | The URI for the second custom help resource. Must be a fully qualified URI that is accessible to users of the platform. |
MODERNE_UI_MOREHELP_2_LABEL | false | null | Custom label for third link under the 'Need more help?' menu. If populated, the URI property must also be populated. |
MODERNE_UI_MOREHELP_2_URI | false | null | The URI for the third custom help resource. Must be a fully qualified URI that is accessible to users of the platform. |
MODERNE_UI_CLIDOWNLOADINSTRUCTIONS_LABEL | false | null | CLI download instructions label to show in the platform UI. Overrides the default display of the CLI tools menu presented in the Moderne platform's user interface. If populated, the URI property must also be populated. |
MODERNE_UI_CLIDOWNLOADINSTRUCTIONS_URI | false | null | The URI of the instructions documentation. Must be a fully qualified URI that is accessible to users of the platform. |
Example:
docker run \
# ... Existing variables
-e MODERNE_UI_MOREHELP_0_LABEL="Getting started" \
-e MODERNE_UI_MOREHELP_0_URI="https://docs.moderne.io/user-documentation/moderne-platform/getting-started" \
-e MODERNE_UI_MOREHELP_1_LABEL="How to guides" \
-e MODERNE_UI_MOREHELP_1_URI="https://docs.moderne.io/user-documentation/moderne-platform/how-to-guides" \
-e MODERNE_UI_CLIDOWNLOADINSTRUCTIONS_LABEL="Download CLI Tools" \
-e MODERNE_UI_CLIDOWNLOADINSTRUCTIONS_URI="https://docs.example.com/moderne-cli-setup" \
# ... Additional variables
Arguments:
| Argument Name | Required | Default | Description |
|---|---|---|---|
--moderne.ui.moreHelp[0].label | false | null | Custom label for first link under the 'Need more help?' menu. If populated, the URI property must also be populated. Maximum of 3 help items supported. |
--moderne.ui.moreHelp[0].uri | false | null | The URI for the first custom help resource. Must be a fully qualified URI that is accessible to users of the platform. |
--moderne.ui.moreHelp[1].label | false | null | Custom label for second link under the 'Need more help?' menu. If populated, the URI property must also be populated. |
--moderne.ui.moreHelp[1].uri | false | null | The URI for the second custom help resource. Must be a fully qualified URI that is accessible to users of the platform. |
--moderne.ui.moreHelp[2].label | false | null | Custom label for third link under the 'Need more help?' menu. If populated, the URI property must also be populated. |
--moderne.ui.moreHelp[2].uri | false | null | The URI for the third custom help resource. Must be a fully qualified URI that is accessible to users of the platform. |
--moderne.ui.cliDownloadInstructions.label | false | null | CLI download instructions label to show in the platform UI. Overrides the default display of the CLI tools menu presented in the Moderne platform's user interface. If populated, the URI property must also be populated. |
--moderne.ui.cliDownloadInstructions.uri | false | null | The URI of the instructions documentation. Must be a fully qualified URI that is accessible to users of the platform. |
Example:
java -jar connector-{version}.jar \
# ... Existing arguments
--moderne.ui.moreHelp[0].label="Getting started" \
--moderne.ui.moreHelp[0].uri="https://docs.moderne.io/user-documentation/moderne-platform/getting-started" \
--moderne.ui.moreHelp[1].label="How to guides" \
--moderne.ui.moreHelp[1].uri="https://docs.moderne.io/user-documentation/moderne-platform/how-to-guides" \
--moderne.ui.cliDownloadInstructions.label="Download CLI Tools" \
--moderne.ui.cliDownloadInstructions.uri="https://docs.example.com/moderne-cli-setup" \
# ... Additional arguments
Generic HTTP tool variables
- OCI Container
- Executable JAR
Environment variables:
| Variable Name | Required | Default | Description |
|---|---|---|---|
MODERNE_CONNECTOR_HTTPTOOL_{index}_URI | true | Fully qualified URI to your HTTP tool. | |
MODERNE_CONNECTOR_HTTPTOOL_{index}_USERNAME | false | Username used to authenticate to HTTP tool. Note: Only one of basic auth (username+password) and bearer token can be used. If username and password are specified, bearerToken must not be provided. | |
MODERNE_CONNECTOR_HTTPTOOL_{index}_PASSWORD | false | Password used to authenticate to HTTP tool. Note: Only one of basic auth (username+password) and bearer token can be used. If username and password are specified, bearerToken must not be provided. | |
MODERNE_CONNECTOR_HTTPTOOL_{index}_BEARERTOKEN | false | Bearer token used to authenticate to HTTP tool. Note: Only one of basic auth (username+password) and bearer token can be used. If bearerToken is specified, username and password must not be provided. | |
MODERNE_CONNECTOR_HTTPTOOL_{index}_SKIPSSL | false | false | Specifies whether or not to skip SSL validation for HTTP connections to this HTTP tool. This must be set to true if you use a self-signed SSL/TLS certificate. |
MODERNE_CONNECTOR_HTTPTOOL_{index}_SKIPVALIDATECONNECTIVITY | false | false | By default, on Connector startup, we will validate that we can connect to this HTTP tool, and fail to start up the Connector if we cannot. Set this to true to skip this validation. |
MODERNE_CONNECTOR_HTTPTOOL_{index}_PROXY_HOST | false | The hostname of a proxy server to use for connections to this HTTP tool. | |
MODERNE_CONNECTOR_HTTPTOOL_{index}_PROXY_PORT | false | The port of the proxy server to use for connections to this HTTP tool. | |
MODERNE_CONNECTOR_HTTPTOOL_{index}_CONNECTTIMEOUT | false | 30s | Timeout for the connection to be established (and the first data received). Specified as a duration (e.g., 30s, 1m). |
MODERNE_CONNECTOR_HTTPTOOL_{index}_READTIMEOUT | false | 60s | Timeout for reading the response body from the HTTP tool. Specified as a duration (e.g., 60s, 5m). |
Example:
docker run \
# ... Existing variables
-e MODERNE_CONNECTOR_HTTPTOOL_0_URI=https://launchdarkly.mycompany.com \
-e MODERNE_CONNECTOR_HTTPTOOL_0_USERNAME=myUser \
-e MODERNE_CONNECTOR_HTTPTOOL_0_PASSWORD=${SECRET_NAME} \
# ... Additional variables
Arguments:
| Argument Name | Required | Default | Description |
|---|---|---|---|
--moderne.connector.httpTool[{index}].uri | true | Fully qualified URI to your HTTP tool. | |
--moderne.connector.httpTool[{index}].username | false | Username used to authenticate to HTTP tool. Note: Only one of basic auth (username+password) and bearer token can be used. If username and password are specified, bearerToken must not be provided. | |
--moderne.connector.httpTool[{index}].password | false | Password used to authenticate to HTTP tool. Note: Only one of basic auth (username+password) and bearer token can be used. If username and password are specified, bearerToken must not be provided. | |
--moderne.connector.httpTool[{index}].bearerToken | false | Bearer token used to authenticate to HTTP tool. Note: Only one of basic auth (username+password) and bearer token can be used. If bearerToken is specified, username and password must not be provided. | |
--moderne.connector.httpTool[{index}].skipSsl | false | false | Specifies whether or not to skip SSL validation for HTTP connections to this HTTP tool. This must be set to true if you use a self-signed SSL/TLS certificate. |
--moderne.connector.httpTool[{index}].skipValidateConnectivity | false | false | By default, on Connector startup, we will validate that we can connect to this HTTP tool, and fail to start up the Connector if we cannot. Set this to true to skip this validation. |
--moderne.connector.httpTool[{index}].proxy.host | false | The hostname of a proxy server to use for connections to this HTTP tool. | |
--moderne.connector.httpTool[{index}].proxy.port | false | The port of the proxy server to use for connections to this HTTP tool. | |
--moderne.connector.httpTool[{index}].connectTimeout | false | 30s | Timeout for the connection to be established (and the first data received). Specified as a duration (e.g., 30s, 1m). |
--moderne.connector.httpTool[{index}].readTimeout | false | 60s | Timeout for reading the response body from the HTTP tool. Specified as a duration (e.g., 60s, 5m). |
Example:
java -jar connector-{version}.jar \
# ... Existing arguments
--moderne.connector.httpTool[0].uri=https://launchdarkly.mycompany.com \
--moderne.connector.httpTool[0].username=myUser \
--moderne.connector.httpTool[0].password=${SECRET_NAME} \
# ... Additional arguments
Moddy LLM variables
Variables for enabling Moddy, Moderne's multi-repo AI agent. Variables are nested under the specific provider you are configuring. Replace {PROVIDER} with one of OPENAI, ANTHROPIC, GEMINI, or MISTRAL (for environment variables) or {provider} with one of openai, anthropic, gemini, or mistral (for JAR arguments).
- OCI Container
- Executable JAR
Environment variables:
| Variable Name | Required | Default | Description |
|---|---|---|---|
MODERNE_MODDY_{PROVIDER}_APIKEY | true | The API key for the specified LLM provider. Replace {PROVIDER} with OPENAI, ANTHROPIC, GEMINI, or MISTRAL. | |
MODERNE_MODDY_{PROVIDER}_MODEL | false | Optional model name override for the LLM provider. | |
MODERNE_MODDY_{PROVIDER}_URI | false | Optional URI override for the LLM API endpoint. If not specified, the default endpoint for the provider is used. Useful for routing requests through a custom API gateway. | |
MODERNE_MODDY_{PROVIDER}_PROXY_HOST | false | The hostname of a proxy server used to reach the LLM API. If specified, PROXY_PORT must also be set. | |
MODERNE_MODDY_{PROVIDER}_PROXY_PORT | false | The port of the proxy server used to reach the LLM API. If specified, PROXY_HOST must also be set. | |
MODERNE_MODDY_ADMINONLY | false | false | If true, only admins will see Moddy in the UI and be able to chat with Moddy. |
Example:
docker run \
# ... Existing variables
-e MODERNE_MODDY_ANTHROPIC_APIKEY=${ANTHROPIC_API_KEY} \
# ... Additional variables
Arguments:
| Argument Name | Required | Default | Description |
|---|---|---|---|
--moderne.moddy.{provider}.apiKey | true | The API key for the specified LLM provider. Replace {provider} with openai, anthropic, gemini, or mistral. | |
--moderne.moddy.{provider}.model | false | Optional model name override for the LLM provider. | |
--moderne.moddy.{provider}.uri | false | Optional URI override for the LLM API endpoint. If not specified, the default endpoint for the provider is used. Useful for routing requests through a custom API gateway. | |
--moderne.moddy.{provider}.proxy.host | false | The hostname of a proxy server used to reach the LLM API. If specified, proxy.port must also be set. | |
--moderne.moddy.{provider}.proxy.port | false | The port of the proxy server used to reach the LLM API. If specified, proxy.host must also be set. | |
--moderne.moddy.adminOnly | false | false | If true, only admins will see Moddy in the UI and be able to chat with Moddy. |
Example:
java -jar connector-{version}.jar \
# ... Existing arguments
--moderne.moddy.anthropic.apiKey=${ANTHROPIC_API_KEY} \
# ... Additional arguments