diff --git a/docs/_docs/install/compose.md b/docs/_docs/install/compose.md new file mode 100644 index 00000000..ea880541 --- /dev/null +++ b/docs/_docs/install/compose.md @@ -0,0 +1,49 @@ +--- +title: Docker Compose +permalink: /docs/install/compose/ +redirect_from: /docs/index.html +--- + +
+Kubernetes is recommended to host your Swingletree installation. Docker Compose can be used to quickly set up a Swingletree instance for evaluation purposes. +
+ +This section covers the installation of an on-premise Swingletree using `docker-compose` + + +#### Custom CA + +In case you need to use a custom certificate authority mount the certificate in `pem` format into the containers and define the environment variable `NODE_EXTRA_CA_CERTS` with the absolute path of the file inside the container. + +```yaml +# docker-compose.yml +[ ... ] + # example for scotty + scotty: + container_name: scotty + env_file: + - ./compose.env + environment: + NODE_EXTRA_CA_CERTS: /opt/cert/ca.pem # reference extra ca certs file to nodejs + image: docker.pkg.github.com/swingletree-oss/scotty/scotty:VERSION + restart: always + volumes: + - ./swingletree.conf.yaml:/opt/scotty/swingletree.conf.yaml + - ./ca.pem:/opt/cert/ca.pem # mount certificate + expose: + - "3000" +[ ... ] +``` + +#### GitHub Packages Docker Registry + +Some registries (like GitHub packages) allow only authenticated users to pull images. You will need to authenticate via `docker login docker.pkg.github.com` +before pulling images. See [GitHub Packages Docs](https://docs.github.com/en/packages/using-github-packages-with-your-projects-ecosystem/configuring-docker-for-use-with-github-packages) +in case you require more information. + +### Deploying Swingletree + +Clone the [Swingletree Management Repository][mgmt] and switch to the directory `compose`. You will find +a `README.md` describing the next steps for the version you checked out. + +[mgmt]: https://github.com/swingletree-oss/swingletree/ diff --git a/docs/_docs/install/prepare.md b/docs/_docs/install/prepare.md index 4fa03d1b..3ce817fe 100644 --- a/docs/_docs/install/prepare.md +++ b/docs/_docs/install/prepare.md @@ -6,26 +6,38 @@ redirect_from: /docs/index.html This section covers the preparation steps to perform before installing Swingletree. +### SCM Provider: GitHub + +In case you chose GitHub as your SCM provider perform following steps + Create Swingletree GitHub App * Retrieve GitHub App Id * Retrieve GitHub App private key file * Set permissions (See section below) -### GitHub Application +#### GitHub Application In case you want to run your own Swingletree you will need to create a GitHub App on Github.com (or your GitHub Enterprise instance). Follow the instructions on this [GitHub Guide][create-gh-app] to create one. -#### Permissions +##### Permissions When creating your GitHub App you will need to specify the permissions required by the App. If the permissions are not granted, Swingletree will not be able to operate properly. * Read and Write access are required for `Checks` * Read access is required for `Single File`, set `Path` to `.swingletree.yml` -#### GitHub App Private Key +##### GitHub App Private Key You will notice that a private key file named `gh-app.pem` (by default) is required on startup. Swingletree needs this file to authenticate with GitHub. After you have created your GitHub App, you can generate and download the key from the App configuration page. [create-gh-app]: https://developer.github.com/apps/building-github-apps/creating-a-github-app/ + + + +### SCM Provider: Gitea + +In case you chose Gitea as your SCM provider perform following steps: + +1. Create an API token diff --git a/docs/_docs/install/prerequisites.md b/docs/_docs/install/prerequisites.md index bda3d2d9..d68b29fe 100644 --- a/docs/_docs/install/prerequisites.md +++ b/docs/_docs/install/prerequisites.md @@ -9,7 +9,9 @@ Swingletree needs a Redis Database for caching purposes. SonarQube offers a bran obtain information about the quality of branches in relation to the `master` branch. * Redis Database (provided with k8s installation) -* GitHub or GitHub Enterprise +* One of the supported SCM Providers + * GitHub or GitHub Enterprise + * Gitea If you intend to use ElasticSearch to store your analysis reports you will need diff --git a/docs/index.html b/docs/index.html index 72712250..777d18b3 100644 --- a/docs/index.html +++ b/docs/index.html @@ -19,7 +19,7 @@
-
+
@@ -29,27 +29,25 @@
GitHub Integration

- No need to jump between tools to see what failed your Quality Gate. Swingletree uses the GitHub - Checks API to annotate findings in your commits and pull requests. Supports GitHub Enterprise. + Swingletree uses the GitHub Checks API to annotate findings in your commits and pull requests. Supports GitHub Enterprise.

-
+
- +
-
Auditable
+
Gitea Integration

- Swingletree stores the results of received build reports in GitHub and - ElasticSearch. + Provides integration to Gitea using the Gitea Commit Status API.

-
+
@@ -59,8 +57,7 @@
Auditable
Keep track

- Swingletree persists each received report to ElasticSearch. View build information via the Swingletree - webinterface or use Grafana/Kibana to process the stored data into neat graphs. + View build information via the Swingletree webinterface or use Grafana/Kibana to process the stored data into neat graphs.

@@ -68,7 +65,22 @@
Keep track
-
+
+
+ + + + +
+
+
Auditable
+

+ Swingletree stores the results of received build reports in GitHub and + ElasticSearch. +

+
+
+
@@ -83,7 +95,7 @@
Extendable

-
+
diff --git a/docs/showcase.html b/docs/showcase.html index 6a8b9434..527cfaab 100644 --- a/docs/showcase.html +++ b/docs/showcase.html @@ -62,7 +62,7 @@

Code Annotations

-

Check Runs

+

GitHub Check Runs

Posting and deleting analysis results as comments into the Pull Request conversation clutters the discussion and may lead to misunderstandings due to automated deletions. @@ -72,6 +72,27 @@

Check Runs

+ +

GitHub Code Annotations

+

+ Swingletree annotates the code inside the Pull Request with the SonarQube findings. Developers do not + have to leave GitHub. +

+ +

+ +

+ +
+ +

Gitea Commit Status

+

+ Swingletree can integrate with Gitea to annotate commits using the Gitea Commit Status API. The results + are visible in the commits and Pull Requests +

+

+ +

\ No newline at end of file