Skip to main content

Configure a Connector with recipe marketplace repositories

This guide explains how to point the Moderne Connector at one or more package registries (Maven, NPM, NuGet, and PyPI) so that recipe artifacts published to those registries become available for deployment to Moderne.

Configuring the Moderne Connector

Recipe marketplace repositories are configured under the moderne.recipe.marketplace.repositories namespace. You can configure multiple repositories of each type by including multiple entries, each with a different {index}.

The variables/arguments in the tables below must be combined with ones found in other steps in the Configuring the Moderne Connector guide.

Defaults and override behavior

If no Maven recipe marketplace repositories are configured, the Moderne Platform falls back to Maven Central (https://repo.maven.apache.org/maven2, releases only) and Sonatype snapshots (https://central.sonatype.com/repository/maven-snapshots/, snapshots only). Once you configure one or more Maven repositories below, only those are searched — the defaults are not merged in, so you will need to list Maven Central and Sonatype snapshots explicitly to keep them. PyPI, NuGet, and NPM have no defaults.

Maven

Environment variables:

Variable NameRequiredDefaultDescription
MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_MAVEN_{index}_URItrueThe URL of your Maven repository.
MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_MAVEN_{index}_USERNAMEfalsenullThe username used to resolve artifacts.
MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_MAVEN_{index}_PASSWORDfalsenullThe password used to resolve artifacts.
MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_MAVEN_{index}_PROXY_HOSTfalsenullThe host of an HTTP proxy used to reach this repository.
MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_MAVEN_{index}_PROXY_PORTfalsenullThe port of an HTTP proxy used to reach this repository.
MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_MAVEN_{index}_SKIPSSLfalsefalseWhether 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}_RELEASESfalsetrueSpecifies whether or not this repository should be searched for releases.
MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_MAVEN_{index}_SNAPSHOTSfalsetrueSpecifies 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

NPM

NPM repositories support either basic authentication (username + password) or bearer token authentication (bearerToken), but not both at the same time.

Environment variables:

Variable NameRequiredDefaultDescription
MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_NPM_{index}_URItrueThe URL of your NPM registry.
MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_NPM_{index}_USERNAMEfalsenullThe username used to resolve artifacts. Mutually exclusive with BEARERTOKEN.
MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_NPM_{index}_PASSWORDfalsenullThe password used to resolve artifacts. Mutually exclusive with BEARERTOKEN.
MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_NPM_{index}_BEARERTOKENfalsenullA bearer token used to resolve artifacts. Mutually exclusive with USERNAME/PASSWORD.
MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_NPM_{index}_PROXY_HOSTfalsenullThe host of an HTTP proxy used to reach this registry.
MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_NPM_{index}_PROXY_PORTfalsenullThe port of an HTTP proxy used to reach this registry.
MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_NPM_{index}_SKIPSSLfalsefalseWhether 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

NuGet

NuGet repositories support either basic authentication (username + password) or bearer token authentication (bearerToken), but not both at the same time.

Environment variables:

Variable NameRequiredDefaultDescription
MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_NUGET_{index}_URItrueThe URL of your NuGet feed.
MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_NUGET_{index}_USERNAMEfalsenullThe username used to resolve artifacts. Mutually exclusive with BEARERTOKEN.
MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_NUGET_{index}_PASSWORDfalsenullThe password used to resolve artifacts. Mutually exclusive with BEARERTOKEN.
MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_NUGET_{index}_BEARERTOKENfalsenullA bearer token used to resolve artifacts. Mutually exclusive with USERNAME/PASSWORD.
MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_NUGET_{index}_PROXY_HOSTfalsenullThe host of an HTTP proxy used to reach this feed.
MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_NUGET_{index}_PROXY_PORTfalsenullThe port of an HTTP proxy used to reach this feed.
MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_NUGET_{index}_SKIPSSLfalsefalseWhether 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

PyPI

Environment variables:

Variable NameRequiredDefaultDescription
MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_PYPI_{index}_URItrueThe URL of your PyPI index.
MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_PYPI_{index}_USERNAMEfalsenullThe username used to resolve artifacts.
MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_PYPI_{index}_PASSWORDfalsenullThe password used to resolve artifacts.
MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_PYPI_{index}_PROXY_HOSTfalsenullThe host of an HTTP proxy used to reach this index.
MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_PYPI_{index}_PROXY_PORTfalsenullThe port of an HTTP proxy used to reach this index.
MODERNE_RECIPE_MARKETPLACE_REPOSITORIES_PYPI_{index}_SKIPSSLfalsefalseWhether 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