Skip to content
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Commit 5d87896

Browse files
authoredMar 28, 2023
Update CI and root docs on main for v0.38 release (celestiaorg#597)
* ci: Add nightly E2E workflow for v0.38.x Signed-off-by: Thane Thomson <[email protected]> * Update Mergify config for v0.38.x Signed-off-by: Thane Thomson <[email protected]> * Update Dependabot config for v0.38.x Signed-off-by: Thane Thomson <[email protected]> * Update RELEASES.md to include OpenAPI and docs site instructions Signed-off-by: Thane Thomson <[email protected]> * Update README for v0.38.x and fix test/linter URLs Signed-off-by: Thane Thomson <[email protected]> * Fix typo Signed-off-by: Thane Thomson <[email protected]> --------- Signed-off-by: Thane Thomson <[email protected]>
1 parent 3d5b946 commit 5d87896

File tree

5 files changed

+134
-6
lines changed

5 files changed

+134
-6
lines changed
 

‎.github/dependabot.yml

+22
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,16 @@ updates:
1010
- dependencies
1111
- automerge
1212

13+
- package-ecosystem: github-actions
14+
directory: "/"
15+
schedule:
16+
interval: weekly
17+
target-branch: "v0.38.x"
18+
open-pull-requests-limit: 10
19+
labels:
20+
- dependencies
21+
- automerge
22+
1323
- package-ecosystem: github-actions
1424
directory: "/"
1525
schedule:
@@ -44,6 +54,18 @@ updates:
4454
- dependencies
4555
- automerge
4656

57+
- package-ecosystem: gomod
58+
directory: "/"
59+
schedule:
60+
interval: daily
61+
target-branch: "v0.38.x"
62+
# Only allow automated security-related dependency updates on release
63+
# branches.
64+
open-pull-requests-limit: 0
65+
labels:
66+
- dependencies
67+
- automerge
68+
4769
- package-ecosystem: gomod
4870
directory: "/"
4971
schedule:

‎.github/mergify.yml

+8
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,14 @@ pull_request_rules:
1717
{{ title }} (#{{ number }})
1818
1919
{{ body }}
20+
- name: backport patches to v0.38.x branch
21+
conditions:
22+
- base=main
23+
- label=backport-to-v0.38.x
24+
actions:
25+
backport:
26+
branches:
27+
- v0.38.x
2028
- name: backport patches to v0.37.x branch
2129
conditions:
2230
- base=main

‎.github/workflows/e2e-nightly-38x.yml

+77
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,77 @@
1+
# Runs randomly generated E2E testnets nightly on the v0.38.x branch.
2+
3+
# !! This file should be kept in sync with the e2e-nightly-main.yml file,
4+
# modulo changes to the version labels.
5+
6+
name: e2e-nightly-38x
7+
on:
8+
schedule:
9+
- cron: '0 2 * * *'
10+
11+
jobs:
12+
e2e-nightly-test:
13+
# Run parallel jobs for the listed testnet groups (must match the
14+
# ./build/generator -g flag)
15+
strategy:
16+
fail-fast: false
17+
matrix:
18+
group: ['00', '01', '02', '03', "04"]
19+
runs-on: ubuntu-latest
20+
timeout-minutes: 60
21+
steps:
22+
- uses: actions/setup-go@v4
23+
with:
24+
go-version: '1.20'
25+
26+
- uses: actions/checkout@v3
27+
with:
28+
ref: 'v0.38.x'
29+
30+
- name: Capture git repo info
31+
id: git-info
32+
run: |
33+
echo "branch=`git branch --show-current`" >> $GITHUB_OUTPUT
34+
35+
- name: Build
36+
working-directory: test/e2e
37+
# Run make jobs in parallel, since we can't run steps in parallel.
38+
run: make -j2 docker generator runner tests
39+
40+
- name: Generate testnets
41+
working-directory: test/e2e
42+
# When changing -g, also change the matrix groups above
43+
run: ./build/generator -g 5 -d networks/nightly/ -p
44+
45+
- name: Run ${{ matrix.p2p }} p2p testnets
46+
working-directory: test/e2e
47+
run: ./run-multiple.sh networks/nightly/*-group${{ matrix.group }}-*.toml
48+
49+
outputs:
50+
git-branch: ${{ steps.git-info.outputs.branch }}
51+
52+
e2e-nightly-fail:
53+
needs: e2e-nightly-test
54+
if: ${{ failure() }}
55+
runs-on: ubuntu-latest
56+
steps:
57+
- name: Notify Slack on failure
58+
uses: slackapi/slack-github-action@v1.23.0
59+
env:
60+
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
61+
SLACK_WEBHOOK_TYPE: INCOMING_WEBHOOK
62+
BRANCH: ${{ needs.e2e-nightly-test.outputs.git-branch }}
63+
RUN_URL: "${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}"
64+
COMMITS_URL: "${{ github.server_url }}/${{ github.repository }}/commits/${{ needs.e2e-nightly-test.outputs.git-branch }}"
65+
with:
66+
payload: |
67+
{
68+
"blocks": [
69+
{
70+
"type": "section",
71+
"text": {
72+
"type": "mrkdwn",
73+
"text": ":skull: Nightly E2E tests for `${{ env.BRANCH }}` failed. See the <${{ env.RUN_URL }}|run details> and the <${{ env.COMMITS_URL }}|latest commits> possibly related to the failure."
74+
}
75+
}
76+
]
77+
}

‎README.md

+18-6
Original file line numberDiff line numberDiff line change
@@ -10,11 +10,12 @@
1010
[![License][license-badge]][license-url]
1111
[![Sourcegraph][sg-badge]][sg-url]
1212

13-
| Branch | Tests | Linting |
14-
|---------|------------------------------------------|---------------------------------------|
15-
| main | [![Tests][tests-badge]][tests-url] | [![Lint][lint-badge]][lint-url] |
16-
| v0.37.x | [![Tests][tests-badge-v037x]][tests-url] | [![Lint][lint-badge-v037x]][lint-url] |
17-
| v0.34.x | [![Tests][tests-badge-v034x]][tests-url] | [![Lint][lint-badge-v034x]][lint-url] |
13+
| Branch | Tests | Linting |
14+
|---------|------------------------------------------------|---------------------------------------------|
15+
| main | [![Tests][tests-badge]][tests-url] | [![Lint][lint-badge]][lint-url] |
16+
| v0.38.x | [![Tests][tests-badge-v038x]][tests-url-v038x] | [![Lint][lint-badge-v038x]][lint-url-v038x] |
17+
| v0.37.x | [![Tests][tests-badge-v037x]][tests-url-v037x] | [![Lint][lint-badge-v037x]][lint-url-v037x] |
18+
| v0.34.x | [![Tests][tests-badge-v034x]][tests-url-v034x] | [![Lint][lint-badge-v034x]][lint-url-v034x] |
1819

1920
CometBFT is a Byzantine Fault Tolerant (BFT) middleware that takes a
2021
state transition machine - written in any programming language - and securely
@@ -61,6 +62,7 @@ looking for, see [our security policy](SECURITY.md).
6162
| CometBFT version | Requirement | Notes |
6263
|------------------|-------------|-------------------|
6364
| main | Go version | Go 1.20 or higher |
65+
| v0.38.x | Go version | Go 1.20 or higher |
6466
| v0.37.x | Go version | Go 1.20 or higher |
6567
| v0.34.x | Go version | Go 1.19 or higher |
6668

@@ -120,6 +122,8 @@ CometBFT up-to-date. Upgrading instructions can be found in
120122

121123
Currently supported versions include:
122124

125+
- v0.38.x: CometBFT v0.38 introduces ABCI 2.0, which implements the entirety of
126+
ABCI++
123127
- v0.37.x: CometBFT v0.37 introduces ABCI 1.0, which is the first major step
124128
towards the full ABCI++ implementation in ABCI 2.0
125129
- v0.34.x: The CometBFT v0.34 series is compatible with the Tendermint Core
@@ -145,7 +149,7 @@ Currently supported versions include:
145149
### Research
146150

147151
Below are links to the original Tendermint consensus algorithm and relevant
148-
whitepapers which CosmosBFT will continue to build on.
152+
whitepapers which CometBFT will continue to build on.
149153

150154
- [The latest gossip on BFT consensus](https://arxiv.org/abs/1807.04938)
151155
- [Master's Thesis on Tendermint](https://atrium.lib.uoguelph.ca/xmlui/handle/10214/9769)
@@ -177,11 +181,19 @@ maintains [cometbft.com](https://cometbft.com).
177181
[sg-badge]: https://sourcegraph.com/github.com/cometbft/cometbft/-/badge.svg
178182
[sg-url]: https://sourcegraph.com/github.com/cometbft/cometbft?badge
179183
[tests-url]: https://github.com/cometbft/cometbft/actions/workflows/tests.yml
184+
[tests-url-v038x]: https://github.com/cometbft/cometbft/actions/workflows/tests.yml?query=branch%3Av0.38.x
185+
[tests-url-v037x]: https://github.com/cometbft/cometbft/actions/workflows/tests.yml?query=branch%3Av0.37.x
186+
[tests-url-v034x]: https://github.com/cometbft/cometbft/actions/workflows/tests.yml?query=branch%3Av0.34.x
180187
[tests-badge]: https://github.com/cometbft/cometbft/actions/workflows/tests.yml/badge.svg?branch=main
188+
[tests-badge-v038x]: https://github.com/cometbft/cometbft/actions/workflows/tests.yml/badge.svg?branch=v0.38.x
181189
[tests-badge-v037x]: https://github.com/cometbft/cometbft/actions/workflows/tests.yml/badge.svg?branch=v0.37.x
182190
[tests-badge-v034x]: https://github.com/cometbft/cometbft/actions/workflows/tests.yml/badge.svg?branch=v0.34.x
183191
[lint-badge]: https://github.com/cometbft/cometbft/actions/workflows/lint.yml/badge.svg?branch=main
184192
[lint-badge-v034x]: https://github.com/cometbft/cometbft/actions/workflows/lint.yml/badge.svg?branch=v0.34.x
185193
[lint-badge-v037x]: https://github.com/cometbft/cometbft/actions/workflows/lint.yml/badge.svg?branch=v0.37.x
194+
[lint-badge-v038x]: https://github.com/cometbft/cometbft/actions/workflows/lint.yml/badge.svg?branch=v0.38.x
186195
[lint-url]: https://github.com/cometbft/cometbft/actions/workflows/lint.yml
196+
[lint-url-v034x]: https://github.com/cometbft/cometbft/actions/workflows/lint.yml?query=branch%3Av0.34.x
197+
[lint-url-v037x]: https://github.com/cometbft/cometbft/actions/workflows/lint.yml?query=branch%3Av0.37.x
198+
[lint-url-v038x]: https://github.com/cometbft/cometbft/actions/workflows/lint.yml?query=branch%3Av0.38.x
187199
[tm-core]: https://github.com/tendermint/tendermint

‎RELEASES.md

+9
Original file line numberDiff line numberDiff line change
@@ -93,6 +93,15 @@ the 0.38.x line.
9393
Be sure to merge this PR before making other changes on the newly-created
9494
backport branch.
9595

96+
5. Ensure that the RPC docs' `version` field in `rpc/openapi/openapi.yaml` has
97+
been updated from `main` to the backport branch version.
98+
99+
6. Prepare the [CometBFT documentation
100+
repository](https://github.com/cometbft/cometbft-docs) to build the release
101+
branch's version by updating the
102+
[VERSIONS](https://github.com/cometbft/cometbft-docs/blob/main/VERSIONS)
103+
file.
104+
96105
After doing these steps, go back to `main` and do the following:
97106

98107
1. Create a new workflow to run e2e nightlies for the new backport branch. (See

0 commit comments

Comments
 (0)
Please sign in to comment.