Skip to content

Commit 687da3e

Browse files
committed
Reuse build in nightly
1 parent 6e95d44 commit 687da3e

File tree

5 files changed

+65
-101
lines changed

5 files changed

+65
-101
lines changed

.github/workflows/build.yml

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -47,27 +47,27 @@ jobs:
4747
matrix:
4848
include:
4949
- os: heavy
50-
container: '{ "image": "rippleci/clio_ci:latest" }'
51-
build_type: Release
5250
conan_profile: gcc
51+
build_type: Release
52+
container: '{ "image": "rippleci/clio_ci:latest" }'
5353
code_coverage: false
5454
static: true
5555
- os: heavy
56-
container: '{ "image": "rippleci/clio_ci:latest" }'
57-
build_type: Debug
5856
conan_profile: gcc
57+
build_type: Debug
58+
container: '{ "image": "rippleci/clio_ci:latest" }'
5959
code_coverage: true
6060
static: true
6161
- os: heavy
62-
container: '{ "image": "rippleci/clio_ci:latest" }'
63-
build_type: Release
6462
conan_profile: clang
63+
build_type: Release
64+
container: '{ "image": "rippleci/clio_ci:latest" }'
6565
code_coverage: false
6666
static: true
6767
- os: heavy
68-
container: '{ "image": "rippleci/clio_ci:latest" }'
69-
build_type: Debug
7068
conan_profile: clang
69+
build_type: Debug
70+
container: '{ "image": "rippleci/clio_ci:latest" }'
7171
code_coverage: false
7272
static: true
7373
- os: macos15
@@ -94,20 +94,20 @@ jobs:
9494
matrix:
9595
include:
9696
- os: heavy
97-
container:
98-
image: rippleci/clio_ci:latest
9997
conan_profile: gcc
10098
build_type: Release
101-
- os: heavy
10299
container:
103100
image: rippleci/clio_ci:latest
101+
- os: heavy
104102
conan_profile: clang
105103
build_type: Release
106-
- os: heavy
107104
container:
108105
image: rippleci/clio_ci:latest
106+
- os: heavy
109107
conan_profile: clang
110108
build_type: Debug
109+
container:
110+
image: rippleci/clio_ci:latest
111111
- os: macos15
112112
conan_profile: apple_clang_16
113113
build_type: Release

.github/workflows/clang-tidy.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
name: Clang-tidy check
22
on:
33
schedule:
4-
- cron: "0 6 * * 1-5"
4+
- cron: "0 9 * * 1-5"
55
workflow_dispatch:
66
pull_request:
77
branches: [develop]

.github/workflows/nightly.yml

Lines changed: 20 additions & 61 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
name: Nightly release
22
on:
33
schedule:
4-
- cron: '0 5 * * 1-5'
4+
- cron: '0 8 * * 1-5'
55
workflow_dispatch:
66
pull_request:
77
paths:
@@ -21,68 +21,23 @@ jobs:
2121
- os: heavy
2222
build_type: Release
2323
static: true
24-
container:
25-
image: rippleci/clio_ci:latest
24+
container: '{ "image": "rippleci/clio_ci:latest" }'
2625
- os: heavy
2726
build_type: Debug
2827
static: true
29-
container:
30-
image: rippleci/clio_ci:latest
31-
runs-on: [self-hosted, "${{ matrix.os }}"]
32-
container: ${{ matrix.container }}
33-
34-
steps:
35-
- name: Clean workdir
36-
if: ${{ runner.os == 'macOS' }}
37-
uses: kuznetsss/workspace-cleanup@1.0
38-
39-
- uses: actions/checkout@v4
40-
with:
41-
fetch-depth: 0
42-
43-
- name: Prepare runner
44-
uses: ./.github/actions/prepare_runner
45-
with:
46-
disable_ccache: true
47-
48-
- name: Setup conan
49-
uses: ./.github/actions/setup_conan
50-
id: conan
51-
with:
52-
conan_profile: gcc
53-
54-
- name: Run conan and cmake
55-
uses: ./.github/actions/generate
56-
with:
57-
conan_profile: ${{ steps.conan.outputs.conan_profile }}
58-
conan_cache_hit: ${{ steps.restore_cache.outputs.conan_cache_hit }}
59-
build_type: ${{ matrix.build_type }}
60-
static: ${{ matrix.static }}
61-
62-
- name: Build Clio
63-
uses: ./.github/actions/build_clio
64-
65-
- name: Strip tests
66-
run: strip build/clio_tests && strip build/clio_integration_tests
67-
68-
- name: Upload clio_tests
69-
uses: actions/upload-artifact@v4
70-
with:
71-
name: clio_tests_${{ runner.os }}_${{ matrix.build_type }}
72-
path: build/clio_*tests
73-
74-
- name: Compress clio_server
75-
shell: bash
76-
run: |
77-
cd build
78-
tar czf ./clio_server_${{ runner.os }}_${{ matrix.build_type }}.tar.gz ./clio_server
79-
80-
- name: Upload clio_server
81-
uses: actions/upload-artifact@v4
82-
with:
83-
name: clio_server_${{ runner.os }}_${{ matrix.build_type }}
84-
path: build/clio_server_${{ runner.os }}_${{ matrix.build_type }}.tar.gz
85-
28+
container: '{ "image": "rippleci/clio_ci:latest" }'
29+
uses: ./.github/workflows/reusable_build.yml
30+
with:
31+
runs_on: ${{ matrix.os }}
32+
container: ${{ matrix.container }}
33+
conan_profile: gcc
34+
build_type: ${{ matrix.build_type }}
35+
code_coverage: false
36+
static: ${{ matrix.static }}
37+
unit_tests: true
38+
integration_tests: true
39+
clio_server: true
40+
disable_ccache: true
8641

8742
run_tests:
8843
needs: build
@@ -122,13 +77,17 @@ jobs:
12277

12378
- uses: actions/download-artifact@v4
12479
with:
125-
name: clio_tests_${{ runner.os }}_${{ matrix.build_type }}
80+
name: clio_tests_${{ runner.os }}_${{ matrix.build_type }}_${{ matrix.conan_profile }}
12681

12782
- name: Run clio_tests
12883
run: |
12984
chmod +x ./clio_tests
13085
./clio_tests
13186
87+
- uses: actions/download-artifact@v4
88+
with:
89+
name: clio_integration_tests_${{ runner.os }}_${{ matrix.build_type }}_${{ matrix.conan_profile }}
90+
13291
# To be enabled back once docker in mac runner arrives
13392
# https://github.com/XRPLF/clio/issues/1400
13493
- name: Run clio_integration_tests

.github/workflows/reusable_build.yml

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,12 @@ on:
88
type: string
99
default: heavy
1010

11+
container:
12+
description: "The container object as a JSON string (leave empty to run natively)"
13+
required: true
14+
type: string
15+
default: ""
16+
1117
conan_profile:
1218
description: Conan profile to use
1319
required: true
@@ -18,12 +24,6 @@ on:
1824
required: true
1925
type: string
2026

21-
container:
22-
description: "The container object as a JSON string (leave empty to run natively)"
23-
required: true
24-
type: string
25-
default: ""
26-
2727
disable_ccache:
2828
description: Whether ccache should be disabled
2929
required: false
@@ -141,7 +141,7 @@ jobs:
141141
cat /tmp/ccache.stats
142142
143143
- name: Strip unit_tests
144-
if: ${{ inputs.unit_tests && !inputs.code_coverage }}
144+
if: ${{ inputs.unit_tests && !inputs.code_coverage && inputs.sanitizer == 'false' }}
145145
run: strip build/clio_tests
146146

147147
- name: Strip integration_tests

.github/workflows/sanitizers.yml

Lines changed: 25 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
name: Run tests with sanitizers
22
on:
3+
schedule:
4+
- cron: "0 4 * * 1-5"
35
workflow_dispatch:
46
pull_request:
57
paths:
@@ -14,13 +16,13 @@ jobs:
1416
include:
1517
- sanitizer: tsan
1618
compiler: gcc
17-
# - sanitizer: asan
18-
# compiler: gcc
19-
# - sanitizer: ubsan
19+
- sanitizer: asan
20+
compiler: gcc
21+
# - sanitizer: ubsan # todo: enable when heavy runners are available
2022
# compiler: gcc
2123
uses: ./.github/workflows/reusable_build.yml
2224
with:
23-
runs_on: ubuntu-latest # todo change to heavy
25+
runs_on: ubuntu-latest # todo: change to heavy
2426
container: '{ "image": "rippleci/clio_ci:latest" }'
2527
disable_ccache: true
2628
conan_profile: ${{ matrix.compiler }}.${{ matrix.sanitizer }}
@@ -43,11 +45,11 @@ jobs:
4345
include:
4446
- sanitizer: tsan
4547
compiler: gcc
46-
# - sanitizer: asan
47-
# compiler: gcc
48-
# - sanitizer: ubsan
48+
- sanitizer: asan
49+
compiler: gcc
50+
# - sanitizer: ubsan # todo: enable when heavy runners are available
4951
# compiler: gcc
50-
runs-on: ubuntu-latest # todo change to heavy
52+
runs-on: ubuntu-latest # todo: change to heavy
5153
container:
5254
image: rippleci/clio_ci:latest
5355
permissions:
@@ -87,16 +89,19 @@ jobs:
8789
path: .sanitizer-report/*
8890
include-hidden-files: true
8991

90-
- name: Create an issue
91-
if: ${{ steps.check_report.outputs.found_report == 'true' }}
92-
uses: ./.github/actions/create_issue
93-
env:
94-
GH_TOKEN: ${{ github.token }}
95-
with:
96-
labels: 'bug'
97-
title: '[${{ matrix.sanitizer }}/${{ matrix.compiler }}] reported issues'
98-
body: >
99-
Clio tests failed one or more sanitizer checks when built with ${{ matrix.compiler }}`.
92+
#
93+
# todo: enable when we have fixed all currently existing issues from sanitizers
94+
#
95+
# - name: Create an issue
96+
# if: ${{ steps.check_report.outputs.found_report == 'true' }}
97+
# uses: ./.github/actions/create_issue
98+
# env:
99+
# GH_TOKEN: ${{ github.token }}
100+
# with:
101+
# labels: 'bug'
102+
# title: '[${{ matrix.sanitizer }}/${{ matrix.compiler }}] reported issues'
103+
# body: >
104+
# Clio tests failed one or more sanitizer checks when built with ${{ matrix.compiler }}`.
100105

101-
Workflow: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}/
102-
Reports are available as artifacts.
106+
# Workflow: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}/
107+
# Reports are available as artifacts.

0 commit comments

Comments
 (0)