Skip to content

Commit c2358b7

Browse files
authored
docs: what the CI does (#2175)
1 parent 69ce526 commit c2358b7

File tree

1 file changed

+47
-0
lines changed

1 file changed

+47
-0
lines changed

.github/workflows/README.md

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
## CI/CD
2+
3+
There are 4 main stages that run on GitHub actions:
4+
5+
* Linting
6+
* Pack
7+
* Test
8+
* Release
9+
10+
There are some other stages that run for every push on the main branches:
11+
12+
* [Snapshoty](./snapshoty.yml)
13+
14+
### Scenarios
15+
16+
* Tests should be triggered on branch, tag and PR basis.
17+
* Commits that are only affecting the docs files should not trigger any test or similar stages that are not required.
18+
* Pull Requests that are only affecting the docs files should not trigger any test or similar stages that are not required.
19+
* Automated release in the CI gets triggered when a tag release is created.
20+
* **This is not the case yet**, but if Github secrets are required then Pull Requests from forked repositories won't run any build accessing those secrets. If needed, then create a feature branch.
21+
22+
### How to interact with the CI?
23+
24+
#### On a PR basis
25+
26+
Once a PR has been opened then there are two different ways you can trigger builds in the CI:
27+
28+
1. Commit based
29+
1. UI based, any Elasticians can force a build through the GitHub UI
30+
31+
#### Branches
32+
33+
Every time there is a merge to main or any release branches the whole workflow will compile and test every entry in the compatibility matrix for Linux and Windows.
34+
35+
### Release process
36+
37+
This process has been fully automated and it gets triggered when a tag release has been created.
38+
The tag release follows the naming convention: `v.<major>.<minor>.<patch>`, where `<major>`, `<minor>` and `<patch>`.
39+
40+
### OpenTelemetry
41+
42+
There is a GitHub workflow in charge to populate what the workflow run in terms of jobs and steps. Those details can be seen in [here](https://ela.st/oblt-ci-cd-stats) (**NOTE**: only available for Elasticians).
43+
44+
## Bump automation
45+
46+
[updatecli](https://www.updatecli.io/) is the tool we use to automatically update the specs
47+
the [APM agents](./updatecli.yml) use.

0 commit comments

Comments
 (0)