Skip to content

Commit c5094ff

Browse files
committed
docs: slightly buffed (but incomplete) server setup docs
1 parent af9efbf commit c5094ff

File tree

1 file changed

+28
-1
lines changed

1 file changed

+28
-1
lines changed

README.md

+28-1
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
- [deb, rpm and apk packages](#deb-rpm-and-apk-packages)
1919
- [go install](#go-install)
2020
- [Usage](#usage)
21+
- [Webhook Server](#webhook-server)
2122
- [GitLab-CI pipeline](#gitlab-ci-pipeline)
2223
- [Commands](#commands)
2324
- [`evaluate`](#evaluate)
@@ -113,9 +114,35 @@ go install github.com/jippi/scm-engine/cmd@latest
113114

114115
## Usage
115116

117+
### Webhook Server
118+
119+
Using `scm-engine` as a webhook server allows for richer feature set compared to [GitLab CI pipeline](#gitlab-ci-pipeline) mode
120+
121+
- `+` Reacting to comments
122+
- `+` Access to webhook event data in scripts via `webhook_event.*` (see [server docs](#server) for more information)
123+
- `+` A single `scm-engine` instance (and single token) for your GitLab project, group, or instance depending on where you configure the webhook.
124+
- `+` Each Project still have their own `.scm-engine.yml` file, it's downloaded via the API when the server is processing a webhook event.
125+
- `+` A single "bot" identity across your projects.
126+
- `+` Turn key once configured; if a project want to use `scm-engine` they just need to create the `.scm-engine.yml` file in their project.
127+
- `+` Real-time reactions to changes
128+
- `-` No intuitive access to [`evaluation` logs](#evaluate) within GitLab (you can see them in the server logs or in the webhook failure log)
129+
130+
**Setup**:
131+
132+
1. Deploy `scm-engine` within your infrastructure in an environment that can communicate egress/ingress with GitLab. ([see `server`](#server))
133+
1. Configure your `webhook` at Project, Group, or Server level to hit the `/gitlab` endpoint on the `scm-engine` server endpoint. ([see `server`](#server))
134+
116135
### GitLab-CI pipeline
117136

118-
Using scm-engine within a GitLab CI pipeline is straight forward.
137+
Using `scm-engine` within a GitLab CI pipeline is straight forward - every time a CI pipeline runs, `scm-engine` will [evaluate](#evaluate) the Merge Request.
138+
139+
- `+` Simple & quick installation.
140+
- `+` Limited access token permissions.
141+
- `+` Easy access to [`evaluation` logs](#evaluate) within the GitLab CI job.
142+
- `-` Can't react to comments; only works within a CI pipeline.
143+
- `-` Higher latency for reacting to changes depending on how fast CI jobs run (and where in the pipeline it runs).
144+
145+
**Setup**:
119146

120147
1. Add a `.scm-engine.yml` file in the root of your project.
121148
1. Create a [CI/CD Variable](https://docs.gitlab.com/ee/ci/variables/#for-a-group)

0 commit comments

Comments
 (0)