mirror of
https://github.com/jlengrand/moderne-docs.git
synced 2026-03-10 08:31:21 +00:00
GitBook: [#89] No subject
This commit is contained in:
@@ -13,6 +13,7 @@
|
||||
* [Importing external recipes](how-to/importing-external-recipes.md)
|
||||
* [Terraform Cloud integration](how-to/terraform-cloud-integration.md)
|
||||
* [On-premise agent](how-to/on-premise-agent/README.md)
|
||||
* [Standard configuration](how-to/on-premise-agent/standard-configuration.md)
|
||||
* [Configure an agent with Bitbucket access](how-to/on-premise-agent/configure-bitbucket-to-agent.md)
|
||||
* [Configure an agent with GitHub](how-to/on-premise-agent/configure-an-agent-with-github.md)
|
||||
* [Configure an agent with Artifactory access](how-to/on-premise-agent/configure-an-agent-with-artifactory-access.md)
|
||||
|
||||
@@ -1,68 +1,2 @@
|
||||
---
|
||||
description: How to run the Moderne on-premise agent
|
||||
---
|
||||
|
||||
# On-premise agent
|
||||
|
||||
The Moderne on-premise agent securely connects the Moderne SaaS to customers' environments. It's delivered as an OCI image and can be run using any OCI runtime (e.g., Docker, Podman).
|
||||
|
||||
The purpose of the Moderne on-premise agent is to encrypt and ship AST artifacts from artifact repositories (e.g., Artifactory) to the Moderne SaaS, provide the symmetric key to be used for decryption, and forward requests from the Moderne SaaS to your version control system (e.g., Github).
|
||||
|
||||
## Getting Started
|
||||
|
||||
### Run the agent container
|
||||
|
||||
The Moderne on-premise agent is available as an OCI image or as a spring-boot executable jar artifact. Contact Moderne to obtain access. Moderne will provide access details appropriate for your chosen platform. In example commands below we will refer to this as `${MODERNE_AGENT_IMAGE_NAME}.` The latest one will be displayed in the "Agent" section of [the releases page](https://docs.moderne.io/releases/releases).
|
||||
|
||||
{% tabs %}
|
||||
{% tab title="OCI Container" %}
|
||||
The agent container requires several environment variables:
|
||||
|
||||
* `MODERNE_AGENT_API_GATEWAY_RSOCKET_URI` - URI used to connect to the Moderne API, provided by Moderne
|
||||
* `MODERNE_AGENT_TOKEN` - Moderne SaaS agent connection token, provided by Moderne
|
||||
* `MODERNE_AGENT_CRYPTO_SYMMETRICKEY` - 256 bit AES encryption key, hex encoded
|
||||
* example OpenSSL command to generate: `openssl enc -aes-256-cbc -k secret -P` (use key from the output)
|
||||
|
||||
Example using Docker (note that agent token and symmetric key are random examples)
|
||||
|
||||
```
|
||||
docker run \
|
||||
-e MODERNE_AGENT_API_GATEWAY_RSOCKET_URI=https://api.tenant.moderne.io/rsocket \
|
||||
-e MODERNE_AGENT_TOKEN=W43qp4h952T4w2qV \
|
||||
-e MODERNE_AGENT_CRYPTO_SYMMETRICKEY=546A576E5A7234753778217A25432A462D4A614E645267556B58703273357638 \
|
||||
${MODERNE_AGENT_IMAGE_NAME}
|
||||
```
|
||||
{% endtab %}
|
||||
|
||||
{% tab title="Executable JAR" %}
|
||||
The agent application requires several arguments:
|
||||
|
||||
* `--moderne.agent.apiGatewayRsocketUri` - URI used to connect to the Moderne API, provided by Moderne
|
||||
* `--moderne.agent.token` - Moderne SaaS agent connection token, provided by Moderne
|
||||
* `--moderne.agent.crypto.symmetricKey` - 256 bit AES encryption key, hex encoded
|
||||
* example openssl command to generate: `openssl enc -aes-256-cbc -k secret -P` (use key from the output)
|
||||
|
||||
Note: system properties can be used in place of arguments. As an example, use `-Dmoderne.agent.token={token_value}` as an argument instead of `--moderne.agent.token={token_value}` as an argument.
|
||||
|
||||
Example (note that agent token and symmetric key are random examples)
|
||||
|
||||
```
|
||||
java -jar moderne-agent-{version}.jar \
|
||||
--moderne.agent.api-gateway-roscket-uri==https://api.tenant.moderne.io/rsocket \
|
||||
--moderne.agent.token=W43qp4h952T4w2qV \
|
||||
--moderne.agent.crypto.symmetricKey=546A576E5A7234753778217A25432A462D4A614E645267556B58703273357638
|
||||
```
|
||||
{% endtab %}
|
||||
{% endtabs %}
|
||||
|
||||
### Upgrading Agent Version
|
||||
|
||||
{% tabs %}
|
||||
{% tab title="OCI Container" %}
|
||||
To upgrade your version of the OCI container, just follow the instructions above, but change `${MODERNE_AGENT_IMAGE_NAME}` to the latest release of Agent on [the releases page](../../releases/releases.md).
|
||||
{% endtab %}
|
||||
|
||||
{% tab title="Executable JAR" %}
|
||||
To update your version of the Executable JAR, change the numbered version of {agent} in the instructions above to the latest on [the releases page](../../releases/releases.md).
|
||||
{% endtab %}
|
||||
{% endtabs %}
|
||||
|
||||
@@ -9,6 +9,8 @@ This guide will walk you through configuring the Moderne on-premise agent connec
|
||||
|
||||
* Username and password for an Artifactory user that is allowed to issue the relevant AQL queries that will be configured
|
||||
|
||||
Please note that the commands and options below omit standard options documented at [standard-configuration.md](standard-configuration.md "mention"). You will need to merge the standard options into the commands documented below, which is indicated via ellipses.
|
||||
|
||||
{% tabs %}
|
||||
{% tab title="OCI Container" %}
|
||||
The following arguments must be provided in addition to the arguments provided in [.](./ "mention"). 
|
||||
|
||||
@@ -29,6 +29,8 @@ This guide will walk you through configuring a new OAuth Application in GitHub
|
||||
|
||||
#### Step 2 - Configure the Moderne Agent arguments
|
||||
|
||||
Please note that the commands and options below omit standard options documented at [standard-configuration.md](standard-configuration.md "mention"). You will need to merge the standard options into the commands documented below, which is indicated via ellipses.
|
||||
|
||||
{% tabs %}
|
||||
{% tab title="OCI Container" %}
|
||||
The following arguments must be provided in addition to the arguments provided in [.](./ "mention"). You can configure multiple GitHub OAuth Apps by including multiple entries with different indices. The Client ID and secret of each index must match up with the host for that index.
|
||||
@@ -39,7 +41,7 @@ The following arguments must be provided in addition to the arguments provided i
|
||||
|
||||
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 include the following optional configuration:
|
||||
|
||||
* `moderne_agent_github[{index}]_oauth_includePrivateRepos=true`
|
||||
* MODERNE\_AGENT\_GITHUB\_{index}\_OAUTH\_INCLUDEPRIVATEREPOS`=true`
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -68,6 +68,8 @@ Quickly get a single-line instance of your private key with the key header/foote
|
||||
|
||||
## Argument configuration
|
||||
|
||||
Please note that the commands and options below omit standard options documented at [standard-configuration.md](standard-configuration.md "mention"). You will need to merge the standard options into the commands documented below, which is indicated via ellipses.
|
||||
|
||||
{% tabs %}
|
||||
{% tab title="OCI Container" %}
|
||||
The following arguments must be provided in addition to the arguments provided in [.](./ "mention"). You can configure multiple bitbuckets by including multiple entries with different indices. The private key of each index must match up with the host for that index.
|
||||
|
||||
70
how-to/on-premise-agent/standard-configuration.md
Normal file
70
how-to/on-premise-agent/standard-configuration.md
Normal file
@@ -0,0 +1,70 @@
|
||||
# Standard configuration
|
||||
|
||||
The Moderne on-premise agent securely connects the Moderne SaaS to customers' environments. It's delivered as an OCI image and can be run using any OCI runtime (e.g., Docker, Podman).
|
||||
|
||||
The purpose of the Moderne on-premise agent is to encrypt and ship AST artifacts from artifact repositories (e.g., Artifactory) to the Moderne SaaS, provide the symmetric key to be used for decryption, and forward requests from the Moderne SaaS to your version control system (e.g., Github).
|
||||
|
||||
### Run the agent container
|
||||
|
||||
The Moderne on-premise agent is available as an OCI image or as a spring-boot executable jar artifact. Contact Moderne to obtain access. Moderne will provide access details appropriate for your chosen platform. In example commands below we will refer to this as `${MODERNE_AGENT_IMAGE_NAME}.` The latest one will be displayed in the "Agent" section of [the releases page](https://docs.moderne.io/releases/releases). Please note that additional integration-specific configuration is required, and consult the other subpages of [.](./ "mention").
|
||||
|
||||
{% tabs %}
|
||||
{% tab title="OCI Container" %}
|
||||
Authenticate:
|
||||
|
||||
```
|
||||
docker login -u moderne-tenant -p <ACR password, provided by Moderne> moderne.azurecr.io
|
||||
```
|
||||
|
||||
|
||||
|
||||
The agent container requires several environment variables:
|
||||
|
||||
* `MODERNE_AGENT_API_GATEWAY_RSOCKET_URI` - URI used to connect to the Moderne API, provided by Moderne
|
||||
* `MODERNE_AGENT_TOKEN` - Moderne SaaS agent connection token, provided by Moderne
|
||||
* `MODERNE_AGENT_CRYPTO_SYMMETRICKEY` - 256 bit AES encryption key, hex encoded
|
||||
* example OpenSSL command to generate: `openssl enc -aes-256-cbc -k secret -P` (use key from the output)
|
||||
|
||||
Example using Docker (note that agent token and symmetric key are random examples)
|
||||
|
||||
```
|
||||
docker run \
|
||||
-e MODERNE_AGENT_API_GATEWAY_RSOCKET_URI=https://api.tenant.moderne.io/rsocket \
|
||||
-e MODERNE_AGENT_TOKEN=W43qp4h952T4w2qV \
|
||||
-e MODERNE_AGENT_CRYPTO_SYMMETRICKEY=546A576E5A7234753778217A25432A462D4A614E645267556B58703273357638 \
|
||||
${MODERNE_AGENT_IMAGE_NAME}
|
||||
```
|
||||
{% endtab %}
|
||||
|
||||
{% tab title="Executable JAR" %}
|
||||
The agent application requires several arguments:
|
||||
|
||||
* `--moderne.agent.apiGatewayRsocketUri` - URI used to connect to the Moderne API, provided by Moderne
|
||||
* `--moderne.agent.token` - Moderne SaaS agent connection token, provided by Moderne
|
||||
* `--moderne.agent.crypto.symmetricKey` - 256 bit AES encryption key, hex encoded
|
||||
* example openssl command to generate: `openssl enc -aes-256-cbc -k secret -P` (use key from the output)
|
||||
|
||||
Note: system properties can be used in place of arguments. As an example, use `-Dmoderne.agent.token={token_value}` as an argument instead of `--moderne.agent.token={token_value}` as an argument.
|
||||
|
||||
Example (note that agent token and symmetric key are random examples)
|
||||
|
||||
```
|
||||
java -jar moderne-agent-{version}.jar \
|
||||
--moderne.agent.api-gateway-roscket-uri==https://api.tenant.moderne.io/rsocket \
|
||||
--moderne.agent.token=W43qp4h952T4w2qV \
|
||||
--moderne.agent.crypto.symmetricKey=546A576E5A7234753778217A25432A462D4A614E645267556B58703273357638
|
||||
```
|
||||
{% endtab %}
|
||||
{% endtabs %}
|
||||
|
||||
### Upgrading Agent Version
|
||||
|
||||
{% tabs %}
|
||||
{% tab title="OCI Container" %}
|
||||
To upgrade your version of the OCI container, just follow the instructions above, but change `${MODERNE_AGENT_IMAGE_NAME}` to the latest release of Agent on [the releases page](../../releases/releases.md).
|
||||
{% endtab %}
|
||||
|
||||
{% tab title="Executable JAR" %}
|
||||
To update your version of the Executable JAR, change the numbered version of {agent} in the instructions above to the latest on [the releases page](../../releases/releases.md).
|
||||
{% endtab %}
|
||||
{% endtabs %}
|
||||
@@ -1,7 +1,7 @@
|
||||
# Versions of plugins and agent
|
||||
|
||||
| Component | Current version |
|
||||
| --------------------------- | ------------------------------------------ |
|
||||
| Moderne Maven build plugin | 0.13.0 |
|
||||
| Moderne Gradle build plugin | 0.16.0 |
|
||||
| Agent | `moderne-dev/moderne/moderne-agent:0.65.0` |
|
||||
| Component | Current version |
|
||||
| --------------------------- | ----------------------------------------------------------- |
|
||||
| Moderne Maven build plugin | 0.13.0 |
|
||||
| Moderne Gradle build plugin | 0.16.0 |
|
||||
| Agent | moderne.azurecr.io/moderne-dev/moderne/moderne-agent:0.65.0 |
|
||||
|
||||
Reference in New Issue
Block a user