Skip to content

Commit dd91ab5

Browse files
authored
Merge pull request #1450 from cw-Guo/feat/pipeline-docs
feat: improve pipelines and add documents
2 parents 6187276 + 7af8b6e commit dd91ab5

File tree

2 files changed

+83
-54
lines changed

2 files changed

+83
-54
lines changed

.github/workflows/bump-fluent-bit-version.yaml

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -15,11 +15,6 @@ jobs:
1515
- name: Checkout code
1616
uses: actions/checkout@v4
1717

18-
- name: Set up Git
19-
run: |
20-
git config user.name "GitHub Actions Bot"
21-
git config user.email "[email protected]"
22-
2318
- name: Validate version format
2419
run: |
2520
if ! [[ ${{ github.event.inputs.version }} =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
@@ -88,6 +83,7 @@ jobs:
8883
- Updated VERSION file
8984
- Updated manifest files
9085
- Updated values.yaml in Helm chart"
86+
signoff: true
9187
title: "Bump fluent-bit to ${{ github.event.inputs.version }}"
9288
body: |
9389
This PR updates the version to ${{ github.event.inputs.version }} in the following files:
@@ -104,5 +100,5 @@ jobs:
104100
branch: bump-fb-to-${{ github.event.inputs.version }}
105101
base: master
106102
labels: |
107-
version-bump
103+
dependencies
108104
fluent-bit

RELEASE.md

Lines changed: 81 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -4,47 +4,47 @@ This page describes the release process and the currently planned schedule for u
44

55
## Release schedule
66

7-
| release series | date (year-month-day) | release shepherd |
8-
|----------------|------------------------|---------------------------------------|
9-
| v0.1.0 | 2020-02-17 | Guangzhe Huang (GitHub: @huanggze) |
10-
| v0.2.0 | 2020-08-27 | Guangzhe Huang (GitHub: @huanggze) |
11-
| v0.3.0 | 2020-11-10 | Guangzhe Huang (GitHub: @huanggze) |
12-
| v0.4.0 | 2021-04-01 | Wanjun Lei (GitHub: @wanjunlei) |
13-
| v0.5.0 | 2021-04-14 | Wanjun Lei (GitHub: @wanjunlei) |
14-
| v0.6.0 | 2021-06-03 | Wanjun Lei (GitHub: @wanjunlei) |
15-
| v0.6.1 | 2021-06-11 | Benjamin Huo (GitHub: @benjaminhuo) |
16-
| v0.6.2 | 2021-06-11 | Benjamin Huo (GitHub: @benjaminhuo) |
17-
| v0.7.0 | 2021-06-29 | Wanjun Lei (GitHub: @wanjunlei) |
18-
| v0.7.1 | 2021-07-09 | Wanjun Lei (GitHub: @wanjunlei) |
19-
| v0.8.0 | 2021-07-23 | Wanjun Lei (GitHub: @wanjunlei) |
20-
| v0.9.0 | 2021-08-13 | Wanjun Lei (GitHub: @wanjunlei) |
21-
| v0.10.0 | 2021-08-20 | Wanjun Lei (GitHub: @wanjunlei) |
22-
| v0.11.0 | 2021-09-01 | Wanjun Lei (GitHub: @wanjunlei) |
23-
| v0.12.0 | 2021-09-13 | Wanjun Lei (GitHub: @wanjunlei) |
24-
| v0.13.0 | 2022-03-14 | Elon Cheng (GitHub: @wenchajun) |
25-
| v1.0.0 | 2022-03-25 | Elon Cheng (GitHub: @wenchajun) |
26-
| v1.0.1 | 2022-05-12 | Elon Cheng (GitHub: @wenchajun) |
27-
| v1.0.2 | 2022-05-17 | Elon Cheng (GitHub: @wenchajun) |
28-
| v1.1.0 | 2022-06-15 | Elon Cheng (GitHub: @wenchajun) |
29-
| v1.5.0 | 2022-09-24 | Elon Cheng (GitHub: @wenchajun) |
30-
| v1.5.1 | 2022-09-30 | Elon Cheng (GitHub: @wenchajun) |
31-
| v1.6.0 | 2022-10-25 | Elon Cheng (GitHub: @wenchajun) |
32-
| v1.6.1 | 2022-10-31 | Elon Cheng (GitHub: @wenchajun) |
33-
| v1.7.0 | 2022-11-23 | Elon Cheng (GitHub: @wenchajun) |
34-
| v2.0.0 | 2023-02-03 | Elon Cheng (GitHub: @wenchajun) |
35-
| v2.0.1 | 2023-02-08 | Elon Cheng (GitHub: @wenchajun) |
36-
| v2.1.0 | 2023-03-13 | Elon Cheng (GitHub: @wenchajun) |
37-
| v2.2.0 | 2023-04-07 | Elon Cheng (GitHub: @wenchajun) |
38-
| v2.3.0 | 2023-06-05 | Elon Cheng (GitHub: @wenchajun) |
39-
| v2.4.0 | 2023-07-19 | Elon Cheng (GitHub: @wenchajun) |
40-
| v2.5.0 | 2023-09-13 | Elon Cheng (GitHub: @wenchajun) |
41-
| v2.6.0 | 2023-11-22 | Elon Cheng (GitHub: @wenchajun) |
42-
| v2.7.0 | 2023-12-19 | Anthony Treuillier (GitHub: @antrema) |
43-
| v2.8.0 | 2024-04-22 | Zhang Peng (GitHub: @Gentleelephant) |
44-
| v2.9.0 | 2024-06-13 | Elon Cheng (GitHub: @wenchajun) |
45-
| v3.0.0 | 2024-07-09 | Elon Cheng (GitHub: @wenchajun) |
46-
| v3.1.0 | 2024-08-14 | Zhang Peng (GitHub: @Gentleelephant) |
47-
| v3.2.0 | 2024-09-21 | Chengwei Guo (GitHub: @cw-Guo) |
7+
| release series | date (year-month-day) | release shepherd |
8+
| -------------- | --------------------- | ------------------------------------- |
9+
| v0.1.0 | 2020-02-17 | Guangzhe Huang (GitHub: @huanggze) |
10+
| v0.2.0 | 2020-08-27 | Guangzhe Huang (GitHub: @huanggze) |
11+
| v0.3.0 | 2020-11-10 | Guangzhe Huang (GitHub: @huanggze) |
12+
| v0.4.0 | 2021-04-01 | Wanjun Lei (GitHub: @wanjunlei) |
13+
| v0.5.0 | 2021-04-14 | Wanjun Lei (GitHub: @wanjunlei) |
14+
| v0.6.0 | 2021-06-03 | Wanjun Lei (GitHub: @wanjunlei) |
15+
| v0.6.1 | 2021-06-11 | Benjamin Huo (GitHub: @benjaminhuo) |
16+
| v0.6.2 | 2021-06-11 | Benjamin Huo (GitHub: @benjaminhuo) |
17+
| v0.7.0 | 2021-06-29 | Wanjun Lei (GitHub: @wanjunlei) |
18+
| v0.7.1 | 2021-07-09 | Wanjun Lei (GitHub: @wanjunlei) |
19+
| v0.8.0 | 2021-07-23 | Wanjun Lei (GitHub: @wanjunlei) |
20+
| v0.9.0 | 2021-08-13 | Wanjun Lei (GitHub: @wanjunlei) |
21+
| v0.10.0 | 2021-08-20 | Wanjun Lei (GitHub: @wanjunlei) |
22+
| v0.11.0 | 2021-09-01 | Wanjun Lei (GitHub: @wanjunlei) |
23+
| v0.12.0 | 2021-09-13 | Wanjun Lei (GitHub: @wanjunlei) |
24+
| v0.13.0 | 2022-03-14 | Elon Cheng (GitHub: @wenchajun) |
25+
| v1.0.0 | 2022-03-25 | Elon Cheng (GitHub: @wenchajun) |
26+
| v1.0.1 | 2022-05-12 | Elon Cheng (GitHub: @wenchajun) |
27+
| v1.0.2 | 2022-05-17 | Elon Cheng (GitHub: @wenchajun) |
28+
| v1.1.0 | 2022-06-15 | Elon Cheng (GitHub: @wenchajun) |
29+
| v1.5.0 | 2022-09-24 | Elon Cheng (GitHub: @wenchajun) |
30+
| v1.5.1 | 2022-09-30 | Elon Cheng (GitHub: @wenchajun) |
31+
| v1.6.0 | 2022-10-25 | Elon Cheng (GitHub: @wenchajun) |
32+
| v1.6.1 | 2022-10-31 | Elon Cheng (GitHub: @wenchajun) |
33+
| v1.7.0 | 2022-11-23 | Elon Cheng (GitHub: @wenchajun) |
34+
| v2.0.0 | 2023-02-03 | Elon Cheng (GitHub: @wenchajun) |
35+
| v2.0.1 | 2023-02-08 | Elon Cheng (GitHub: @wenchajun) |
36+
| v2.1.0 | 2023-03-13 | Elon Cheng (GitHub: @wenchajun) |
37+
| v2.2.0 | 2023-04-07 | Elon Cheng (GitHub: @wenchajun) |
38+
| v2.3.0 | 2023-06-05 | Elon Cheng (GitHub: @wenchajun) |
39+
| v2.4.0 | 2023-07-19 | Elon Cheng (GitHub: @wenchajun) |
40+
| v2.5.0 | 2023-09-13 | Elon Cheng (GitHub: @wenchajun) |
41+
| v2.6.0 | 2023-11-22 | Elon Cheng (GitHub: @wenchajun) |
42+
| v2.7.0 | 2023-12-19 | Anthony Treuillier (GitHub: @antrema) |
43+
| v2.8.0 | 2024-04-22 | Zhang Peng (GitHub: @Gentleelephant) |
44+
| v2.9.0 | 2024-06-13 | Elon Cheng (GitHub: @wenchajun) |
45+
| v3.0.0 | 2024-07-09 | Elon Cheng (GitHub: @wenchajun) |
46+
| v3.1.0 | 2024-08-14 | Zhang Peng (GitHub: @Gentleelephant) |
47+
| v3.2.0 | 2024-09-21 | Chengwei Guo (GitHub: @cw-Guo) |
4848

4949
# How to cut a new release
5050

@@ -68,10 +68,10 @@ For a new major or minor release, work from the `main` branch. For a patch relea
6868

6969
Add an entry for the new version to the `CHANGELOG.md` file. Entries in the `CHANGELOG.md` should be in this order:
7070

71-
* `[CHANGE]`
72-
* `[FEATURE]`
73-
* `[ENHANCEMENT]`
74-
* `[BUGFIX]`
71+
- `[CHANGE]`
72+
- `[FEATURE]`
73+
- `[ENHANCEMENT]`
74+
- `[BUGFIX]`
7575

7676
Create a PR for the changes to be reviewed.
7777

@@ -83,6 +83,7 @@ From now on, all work happens on the `release-<major>.<minor>` branch.
8383
Bump the version in the `VERSION` file in the root of the repository.
8484

8585
Regenerate setup.yaml based on latest code and then commit the changed bundle.yaml to the `release-<major>.<minor>` branch:
86+
8687
```bash
8788
make manifests
8889
git add ./
@@ -108,6 +109,7 @@ tag="$(< VERSION)"
108109
git tag -a "${tag}" -m "${tag}"
109110
git push origin "${tag}"
110111
```
112+
111113
Commit all the changes.
112114

113115
Finally, create a new release:
@@ -121,7 +123,38 @@ For patch releases, cherry-pick the commits from the release branch into the mas
121123

122124
### Publish updated Helm chart
123125

124-
This repo includes a "development" chart in the [charts/](./charts/fluent-operator/) directory. For each release, this chart must be published to the [fluent/helm-charts](https://github.com/fluent/helm-charts/tree/main/charts/fluent-operator/) repository which is where Fluent Operators install the chart from. This is currently a manual process. Follow these instructions to update and publish the chart:
126+
This repo includes a "development" chart in the [charts/](./charts/fluent-operator/) directory. For each release, this chart must be published to the [fluent/helm-charts](https://github.com/fluent/helm-charts/tree/main/charts/fluent-operator/) repository which is where Fluent Operators install the chart from. This is currently a manual process. Follow these instructions to update and publish the chart:
127+
128+
- Bump `version` and `appVersion` in the [charts/fluet-operator/Chart.yaml](./charts/fluent-operator/Chart.yaml) file in this repo
129+
- Manually "sync" (copy, open a PR) the local [chart](./charts/fluent-operator) to [fluent/helm-charts](https://github.com/fluent/helm-charts/tree/main/charts/fluent-operator/)
130+
131+
# Automations
132+
133+
## Bump fluent-bit version
134+
135+
To bump the fluent-bit version, you can run the [pipeline](https://github.com/fluent/fluent-operator/actions/workflows/bump-fluent-bit-version.yaml), by simply providing a x.y.z version number. You can check the [fluent-bit releases](https://github.com/fluent/fluent-bit/releases) to get the version number.
136+
137+
Or you can run the following command. Note that we need to remove the leading 'v'.
138+
139+
```bash
140+
curl --silent "https://api.github.com/repos/fluent/fluent-bit/releases/latest" |
141+
grep '"tag_name":' |
142+
sed -E 's/.*"([^"]+)".*/\1/'
143+
```
144+
145+
The pipeline will use sed to replace the outdated fluent-bit version with the wanted one. A list of files can be found below:
146+
147+
- cmd/fluent-watcher/fluentbit/VERSION
148+
- config/samples/fluentbit_v1alpha2_fluentbit.yaml
149+
- docs/best-practice/forwarding-logs-via-http/deploy/fluentbit-fluentBit.yaml
150+
- manifests/kubeedge/fluentbit-fluentbit-edge.yaml
151+
- manifests/logging-stack/fluentbit-fluentBit.yaml
152+
- manifests/quick-start/fluentbit.yaml
153+
- manifests/regex-parser/fluentbit-fluentBit.yaml
154+
- charts/fluent-operator/values.yaml
155+
156+
After the pipeline finishes, we just need to review and merge the pull requests.
157+
158+
## Build the fluent-watcher image for fluent-bit
125159

126-
* Bump `version` and `appVersion` in the [charts/fluet-operator/Chart.yaml](./charts/fluent-operator/Chart.yaml) file in this repo
127-
* Manually "sync" (copy, open a PR) the local [chart](./charts/fluent-operator) to [fluent/helm-charts](https://github.com/fluent/helm-charts/tree/main/charts/fluent-operator/)
160+
This [pipeline](https://github.com/fluent/fluent-operator/actions/workflows/build-fb-image.yaml) is used to build the image. It will read the version number from `cmd/fluent-watcher/fluentbit/VERSION`, which can be update automatically via the [pipeline](#bump-fluent-bit-version).

0 commit comments

Comments
 (0)