Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CID-2910: Proxy support #55

Merged
merged 10 commits into from
Dec 2, 2024
49 changes: 47 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

The SAP LeanIX agent discovers self-built software in self-hosted GitHub Enterprise setups and communicates this information to an SAP LeanIX workspace.

## Prerequisites and Installation
## Prerequisites, Installation, and Troubleshooting

### Prerequisites

Expand All @@ -28,6 +28,7 @@ The SAP LeanIX agent discovers self-built software in self-hosted GitHub Enterpr
- `GITHUB_APP_ID`: The ID of your GitHub App.
- `PEM_FILE`: The path to your GitHub App's PEM file inside the Docker container.
- `WEBHOOK_SECRET`: The secret used to validate incoming webhook events from GitHub. (Optional, but recommended. [Needs to be set in the GitHub App settings first](https://docs.github.com/en/enterprise-server@3.8/webhooks/using-webhooks/validating-webhook-deliveries).)
- `JAVA_OPTS`: Java options for the agent. Use this to set proxy settings if required.

5. **Start the agent**: To start the agent, run the following Docker command. Replace the variables in angle brackets with your actual values.

Expand All @@ -38,7 +39,7 @@ The SAP LeanIX agent discovers self-built software in self-hosted GitHub Enterpr
-e GITHUB_APP_ID=<github_app_id> \
-e PEM_FILE=/privateKey.pem \
-e WEBHOOK_SECRET=<webhook_secret> \
leanix-github-agent
ghcr.io/leanix/leanix-github-agent:dev
```

This command starts the agent and exposes it on port 8000. The agent starts scanning your organizations and repositories.
Expand All @@ -49,6 +50,50 @@ The SAP LeanIX agent discovers self-built software in self-hosted GitHub Enterpr

**Note**: The Docker image for the agent is currently unavailable. It will become available for download once a new version is released. Please check the [Releases](https://github.com/leanix/leanix-github-agent/releases) page for updates.

### Troubleshooting

#### Using over a http proxy system

Add the following properties on the command:
mohamedlajmileanix marked this conversation as resolved.
Show resolved Hide resolved

```console
docker run
...
-e JAVA_OPTS="-Dhttp.proxyHost=<HTTP_HOST> -Dhttp.proxyPort=<HTTP_PORT> -Dhttps.proxyHost=<HTTPS_HOST> -Dhttps.proxyPort=<HTTPS_PORT>" \
ghcr.io/leanix/leanix-github-agent:dev
```
> Note: Basic authentication is not currently supported.
mohamedlajmileanix marked this conversation as resolved.
Show resolved Hide resolved

#### Using over SSL Intercepting proxy
mohamedlajmileanix marked this conversation as resolved.
Show resolved Hide resolved

Build your own docker image adding the certificate:
mohamedlajmileanix marked this conversation as resolved.
Show resolved Hide resolved

```console
FROM ghcr.io/leanix/leanix-github-agent:dev


USER root

RUN apk update && apk add ca-certificates && rm -rf /var/cache/apk/*
COPY YOUR-CERTIFICATE-HERE /usr/local/share/ca-certificates/YOUR-CERTIFICATE-HERE
RUN update-ca-certificates
RUN keytool -import -trustcacerts -keystore $JAVA_HOME/lib/security/cacerts -storepass changeit -noprompt -alias YOUR-CERTIFICATE-HERE -file /usr/local/share/ca-certificates/YOUR-CERTIFICATE-HERE

```

> Note: You should add an additional COPY and the final RUN for each certificate you need to insert into the image.
mohamedlajmileanix marked this conversation as resolved.
Show resolved Hide resolved

#### Using amd64 images on Apple M1

Just run the container by providing the following command:
mohamedlajmileanix marked this conversation as resolved.
Show resolved Hide resolved

```console

docker run --platform linux/amd64 \
...
ghcr.io/leanix/leanix-github-agent:dev
```

## Support and Feedback

We welcome your feedback, feature suggestions, and bug reports via [GitHub issues](https://github.com/leanix/leanix-github-agent/issues).
Expand Down
Loading