Skip to content

Commit 88db7a1

Browse files
authored
Merge branch 'master' into tarak/5466-fvm-signature
2 parents dcd8a01 + 4bb600e commit 88db7a1

File tree

576 files changed

+24795
-19701
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

576 files changed

+24795
-19701
lines changed

.github/workflows/bench.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ jobs:
3333
go-version: "^1.17"
3434

3535
- name: Build relic
36-
run: make crypto/relic/build
36+
run: make crypto_setup_gopath
3737

3838
- name: Run benchmark on current branch
3939
run: |

.github/workflows/cd.yml

+2-1
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ on:
44
push:
55
tags:
66
- '*'
7+
- "!daily-*"
78

89
jobs:
910
docker-push:
@@ -17,7 +18,7 @@ jobs:
1718
- name: Checkout repo
1819
uses: actions/checkout@v2
1920
- name: Build relic
20-
run: make crypto/relic/build
21+
run: make crypto_setup_gopath
2122
# Provide Google Service Account credentials to Github Action, allowing interaction with the Google Container Registry
2223
# Logging in as github-actions@dl-flow.iam.gserviceaccount.com
2324
- name: Docker login

.github/workflows/ci.yml

+24-20
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ name: CI
33
on:
44
push:
55
branches:
6-
- master
76
- 'auto-cadence-upgrade/**'
87
- staging
98
- trying
@@ -16,6 +15,9 @@ on:
1615
- 'feature/**'
1716
- 'v[0-9]+.[0-9]+'
1817

18+
env:
19+
GO_VERSION: 1.17
20+
1921
jobs:
2022
golangci:
2123
name: Lint
@@ -24,16 +26,16 @@ jobs:
2426
- name: Setup Go
2527
uses: actions/setup-go@v2
2628
with:
27-
go-version: 1.17
29+
go-version: ${{ env.GO_VERSION }}
2830
- name: Checkout repo
2931
uses: actions/checkout@v2
3032
- name: Build relic
31-
run: make crypto/relic/build
33+
run: make crypto_setup_gopath
3234
- name: Run golangci-lint
3335
uses: golangci/golangci-lint-action@v2
3436
with:
3537
# Required: the version of golangci-lint is required and must be specified without patch version: we always use the latest patch version.
36-
version: v1.41
38+
version: v1.45
3739
args: -v --build-tags relic
3840
# https://github.com/golangci/golangci-lint-action/issues/244
3941
skip-pkg-cache: true
@@ -44,18 +46,12 @@ jobs:
4446
ignore: 'relic'
4547
unit-test:
4648
name: Unit Tests
47-
strategy:
48-
fail-fast: false
49-
matrix:
50-
go-version:
51-
- 1.16
52-
- 1.17
5349
runs-on: ubuntu-latest
5450
steps:
5551
- name: Setup Go
5652
uses: actions/setup-go@v2
5753
with:
58-
go-version: ${{ matrix.go-version }}
54+
go-version: ${{ env.GO_VERSION }}
5955
- name: Checkout repo
6056
uses: actions/checkout@v2
6157
- name: Run tests
@@ -66,11 +62,10 @@ jobs:
6662
uses: nick-invision/retry@v2
6763
with:
6864
timeout_minutes: 25
69-
max_attempts: 2
65+
max_attempts: 3
7066
command: make ci
7167
- name: Upload coverage report
7268
uses: codecov/codecov-action@v1
73-
if: ${{ matrix.go-version == '1.17' }}
7469
with:
7570
file: ./coverage.txt
7671
flags: unittests
@@ -81,28 +76,37 @@ jobs:
8176
strategy:
8277
fail-fast: false
8378
matrix:
84-
go-version:
85-
- 1.16
86-
- 1.17
79+
test-category:
80+
- integration-mvp
81+
- integration-ghost
82+
- integration-network
83+
- integration-epochs
84+
- integration-access
85+
- integration-collection
86+
- integration-consensus
87+
- integration-execution
88+
- integration-verification
89+
env:
90+
TEST_CATEGORY: ${{ matrix.test-category }}
8791
runs-on: ubuntu-latest
8892
steps:
8993
- name: Setup Go
9094
uses: actions/setup-go@v2
9195
with:
92-
go-version: ${{ matrix.go-version}}
96+
go-version: ${{ env.GO_VERSION }}
9397
- name: Checkout repo
9498
uses: actions/checkout@v2
9599
- name: Build relic
96-
run: make crypto/relic/build
100+
run: make crypto_setup_gopath
97101
- name: Docker build
98102
run: make docker-build-flow
99103
- name: Run tests
100104
if: github.actor != 'bors[bot]'
101-
run: make ci-integration
105+
run: ./tools/test_monitor/run-tests.sh
102106
- name: Run tests (Bors)
103107
if: github.actor == 'bors[bot]'
104108
uses: nick-invision/retry@v2
105109
with:
106110
timeout_minutes: 15
107111
max_attempts: 2
108-
command: make ci-integration
112+
command: ./tools/test_monitor/run-tests.sh

.github/workflows/flakiness-summary.yml

-47
This file was deleted.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
name: Flaky Test Monitor Integration Test
2+
3+
# Dry run of Flaky Test Monitor to ensure that nothing has been broken
4+
5+
on:
6+
push:
7+
branches:
8+
- staging
9+
- trying
10+
pull_request:
11+
branches:
12+
- master
13+
14+
env:
15+
GO_VERSION: 1.17
16+
17+
jobs:
18+
generate-flaky-test-summary:
19+
name: Generate Flaky Test Summary
20+
strategy:
21+
fail-fast: false
22+
matrix:
23+
test-category:
24+
- unit
25+
- unit-crypto
26+
- unit-integration
27+
- integration-mvp
28+
- integration-ghost
29+
- integration-network
30+
- integration-epochs
31+
- integration-access
32+
- integration-collection
33+
- integration-consensus
34+
- integration-execution
35+
- integration-verification
36+
env:
37+
TEST_CATEGORY: ${{ matrix.test-category }}
38+
COMMIT_SHA: ${{ github.sha }}
39+
RUN_ID: ${{ github.run_id }}
40+
RESULTS_FILE: test-results
41+
runs-on: ubuntu-latest
42+
steps:
43+
- name: Get job run date
44+
id: job_run_date
45+
run: echo "::set-output name=date::$(TZ=":America/Los_Angeles" date -Iseconds)"
46+
- name: Setup Go
47+
uses: actions/setup-go@v2
48+
with:
49+
go-version: ${{ env.GO_VERSION }}
50+
- name: Checkout repo
51+
uses: actions/checkout@v2
52+
with:
53+
ref: ${{ env.COMMIT_SHA }}
54+
- name: Get commit date
55+
id: commit_date
56+
run: echo "::set-output name=date::$(git show --no-patch --no-notes --pretty='%cI' $COMMIT_SHA)"
57+
- name: Test setup
58+
run: ./tools/test_monitor/test-setup.sh
59+
- name: Run tests
60+
continue-on-error: true
61+
run: ./tools/test_monitor/run-tests.sh > test-output
62+
env:
63+
TEST_FLAKY: true
64+
JSON_OUTPUT: true
65+
- name: Process test results
66+
run: cat test-output | go run tools/test_monitor/level1/process_summary1_results.go
67+
env:
68+
JOB_STARTED: ${{ steps.job_run_date.outputs.date }}
69+
COMMIT_DATE: ${{ steps.commit_date.outputs.date }}
+77
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,77 @@
1+
name: Flaky Test Monitor
2+
3+
on:
4+
schedule:
5+
- cron: '0 */2 * * *' # every 2 hours
6+
push:
7+
branches:
8+
- master
9+
10+
env:
11+
BIGQUERY_DATASET: production_src_flow_test_metrics
12+
BIGQUERY_TABLE: test_results
13+
GO_VERSION: 1.17
14+
15+
jobs:
16+
upload-flaky-test-summary:
17+
name: Upload Flaky Test Summary
18+
strategy:
19+
fail-fast: false
20+
matrix:
21+
test-category:
22+
- unit
23+
- unit-crypto
24+
- unit-integration
25+
- integration-mvp
26+
- integration-ghost
27+
- integration-network
28+
- integration-epochs
29+
- integration-access
30+
- integration-collection
31+
- integration-consensus
32+
- integration-execution
33+
- integration-verification
34+
env:
35+
TEST_CATEGORY: ${{ matrix.test-category }}
36+
COMMIT_SHA: ${{ github.sha }}
37+
RUN_ID: ${{ github.run_id }}
38+
RESULTS_FILE: test-results
39+
runs-on: ubuntu-latest
40+
steps:
41+
- name: Get job run date
42+
id: job_run_date
43+
run: echo "::set-output name=date::$(TZ=":America/Los_Angeles" date -Iseconds)"
44+
- name: Set up Cloud SDK
45+
uses: google-github-actions/setup-gcloud@v0
46+
with:
47+
service_account_key: ${{ secrets.GCP_SA_KEY }}
48+
- name: Setup Go
49+
uses: actions/setup-go@v2
50+
with:
51+
go-version: ${{ env.GO_VERSION }}
52+
- name: Checkout repo
53+
uses: actions/checkout@v2
54+
with:
55+
ref: ${{ env.COMMIT_SHA }}
56+
- name: Get commit date
57+
id: commit_date
58+
run: echo "::set-output name=date::$(git show --no-patch --no-notes --pretty='%cI' $COMMIT_SHA)"
59+
- name: Test setup
60+
run: ./tools/test_monitor/test-setup.sh
61+
- name: Run tests
62+
continue-on-error: true
63+
run: ./tools/test_monitor/run-tests.sh > test-output
64+
env:
65+
TEST_FLAKY: true
66+
JSON_OUTPUT: true
67+
- name: Process test results
68+
run: cat test-output | go run tools/test_monitor/level1/process_summary1_results.go
69+
env:
70+
JOB_STARTED: ${{ steps.job_run_date.outputs.date }}
71+
COMMIT_DATE: ${{ steps.commit_date.outputs.date }}
72+
- name: Upload results to BigQuery
73+
uses: nick-fields/retry@v2
74+
with:
75+
timeout_minutes: 2
76+
max_attempts: 3
77+
command: bq load --source_format=NEWLINE_DELIMITED_JSON $BIGQUERY_DATASET.$BIGQUERY_TABLE $RESULTS_FILE tools/test_monitor/schemas/test_results_schema.json

0 commit comments

Comments
 (0)