Skip to content

Commit

Permalink
Merge branch 'master' into sync-noir
Browse files Browse the repository at this point in the history
* master: (25 commits)
  fix: Enable client proof tests (#6249)
  chore: update cspell for abi demonomorphizer (#6258)
  feat(aztec-nr): add 'with_gas()' function to avm call interface (#6256)
  git subrepo push --branch=master noir-projects/aztec-nr
  git_subrepo.sh: Fix parent in .gitrepo file. [skip ci]
  chore: replace relative paths to noir-protocol-circuits
  git subrepo push --branch=master barretenberg
  fix: Pw/update merge check (#6201)
  chore(master): Release 0.37.1 (#6148)
  fix: Cl/split out e2e tests (#6242)
  feat: Typings generator with generics (#6235)
  chore(ci): fix restarts with fresh spot, acir test fixes, non-mandatory benches (#6226)
  chore: misc AVM migration prep changes (#6253)
  feat!: AES blackbox (#6016)
  chore(docs): Fix some typos in specs of private kernel initial (#6224)
  chore(aztec-macros): avm function return types are auto tagged as `pub` (#6250)
  chore(aztec-nr): create a 'with_selector' version of `emit_unencrypted_log` in avm context (#6248)
  fix: registering PublicDataWitness in JsonRpcServer (#6243)
  feat: Sync from noir (#6234)
  feat(avm-simulator): consider previous pending nullifiers across enqueued calls (#6188)
  ...
  • Loading branch information
TomAFrench committed May 8, 2024
2 parents c308b6c + 6d3a800 commit 142a364
Show file tree
Hide file tree
Showing 155 changed files with 2,674 additions and 1,242 deletions.
97 changes: 69 additions & 28 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -52,11 +52,14 @@ jobs:
run: earthly-ci ./yarn-project+export-e2e-test-images
# We base our e2e list used in e2e-x86 off the targets in ./yarn-project/end-to-end
# (Note ARM uses just 2 tests as a smoketest)
- name: Create list of end-to-end jobs
- name: Create list of non-bench end-to-end jobs
id: e2e_list
run: echo "list=$(earthly ls ./yarn-project/end-to-end | grep -v '+base' | sed 's/+//' | jq -R . | jq -cs .)" >> $GITHUB_OUTPUT
run: echo "list=$(earthly ls ./yarn-project/end-to-end | grep -v '+base' | grep -v '+bench' | sed 's/+//' | jq -R . | jq -cs .)" >> $GITHUB_OUTPUT
- name: Create list of bench end-to-end jobs
id: bench_list
run: echo "list=$(earthly ls ./yarn-project/end-to-end | grep '+bench' | sed 's/+//' | jq -R . | jq -cs .)" >> $GITHUB_OUTPUT

# all the end-to-end integration tests for aztec
# all the non-bench end-to-end integration tests for aztec
e2e:
needs: build
runs-on: ${{ inputs.username || github.actor }}-x86
Expand All @@ -81,6 +84,31 @@ jobs:
--no-output \
+${{ matrix.test }} --skip_build=true

# all the benchmarking end-to-end integration tests for aztec (not required to merge)
bench-e2e:
needs: build
runs-on: ${{ inputs.username || github.actor }}-x86
strategy:
fail-fast: false
matrix:
test: ${{ fromJson( needs.build.outputs.bench_list )}}
steps:
- uses: actions/checkout@v4
with: { ref: "${{ github.event.pull_request.head.sha }}" }
- uses: ./.github/ci-setup-action
with:
dockerhub_password: "${{ secrets.DOCKERHUB_PASSWORD }}"
# must be globally unique for build x runner
concurrency_key: e2e-${{ inputs.username || github.actor }}-x86-${{ matrix.test }}
- name: Test
working-directory: ./yarn-project/end-to-end/
timeout-minutes: 25
run: earthly-ci -P \
--secret AWS_ACCESS_KEY_ID=${{ secrets.AWS_ACCESS_KEY_ID }} \
--secret AWS_SECRET_ACCESS_KEY=${{ secrets.AWS_SECRET_ACCESS_KEY }} \
--no-output \
+${{ matrix.test }} --skip_build=true

# bench-summary:
# needs: e2e
# runs-on: ${{ inputs.username || github.actor }}-x86
Expand Down Expand Up @@ -112,7 +140,7 @@ jobs:
# barretenberg (prover) native and AVM (public VM) tests
# only ran on x86 for resource reasons (memory intensive)
bb-native-tests:
needs: build
needs: setup
runs-on: ${{ inputs.username || github.actor }}-x86
steps:
- {
Expand Down Expand Up @@ -244,6 +272,22 @@ jobs:
timeout-minutes: 25
run: earthly-ci --no-output ./yarn-project/+prover-client-test

client-proof-tests:
needs: build
runs-on: ${{ github.actor }}-x86
steps:
- {
uses: actions/checkout@v4,
with: { ref: "${{ github.event.pull_request.head.sha }}" },
}
- uses: ./.github/ci-setup-action
with:
dockerhub_password: "${{ secrets.DOCKERHUB_PASSWORD }}"
concurrency_key: client-proof-tests-${{ github.actor }}-x86
- name: "Client Proof Tests"
timeout-minutes: 25
run: earthly-ci --no-output ./yarn-project/+run-e2e --test=client_prover_integration/client_prover_integration.test.ts

build-acir-tests:
needs: build
runs-on: ${{ github.actor }}-x86
Expand Down Expand Up @@ -419,30 +463,6 @@ jobs:

merge-check:
runs-on: ubuntu-latest
needs:
- e2e
- bb-native-tests
- bb-bench
- yarn-project-formatting
- yarn-project-test
- prover-client-test
- noir-packages-test
- noir-test
if: always()
steps:
- run: |
echo "e2e status: ${{ needs.e2e.result }}"
echo "bb-native-tests status: ${{ needs.bb-native-tests.result }}"
echo "bb-bench status: ${{ needs.bb-bench.result }}"
echo "yarn-project-formatting status: ${{ needs.yarn-project-formatting.result }}"
echo "yarn-project-test status: ${{ needs.yarn-project-test.result }}"
if [[ "${{ needs.e2e.result }}" != 'success' || "${{ needs.bb-native-tests.result }}" != 'success' || "${{ needs.bb-bench.result }}" != 'success' || "${{ needs.yarn-project-formatting.result }}" != 'success' || "${{ needs.yarn-project-test.result }}" != 'success' ]]; then
echo "Pull request merging not allowed due to failures."
exit 1
fi
echo "Pull request merging now allowed."
notify:
needs:
[
e2e,
Expand All @@ -451,7 +471,28 @@ jobs:
yarn-project-formatting,
yarn-project-test,
prover-client-test,
bb-js-test,
barretenberg-acir-tests-bb-js,
barretenberg-acir-tests-bb,
barretenberg-acir-tests-sol,
noir-test,
noir-packages-test,
client-proof-tests,
]
if: always()
steps:
- run: |
failed=${{ contains(needs.*.result, 'failure') }}
if $failed
then
echo "At least one job failed, merging not allowed."
exit 1
fi
echo "All jobs succeeded, merge allowed."
notify:
needs:
- merge-check
runs-on: ubuntu-latest
if: ${{ github.ref == 'refs/heads/master' && failure() }}
steps:
Expand Down
4 changes: 3 additions & 1 deletion .github/workflows/setup-runner.yml
Original file line number Diff line number Diff line change
Expand Up @@ -147,4 +147,6 @@ jobs:
fi
- name: Run Earthly Bootstrap
run: earthly bootstrap
run: |
earthly bootstrap
touch /run/.earthly-bootstrap # Used in `earthly-ci` wrapper to check that earthly has been bootstrapped ok
2 changes: 1 addition & 1 deletion .github/workflows/start-spot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ jobs:
with:
runner_label: ${{ inputs.username || github.actor }}-x86
ebs_cache_size_gb: 256
runner_concurrency: 20
runner_concurrency: 50
subaction: ${{ inputs.action }}
# Use instance types with low interruption rate in us-east-2 https://aws.amazon.com/ec2/spot/instance-advisor/
ec2_instance_type: r6in.32xlarge r6a.32xlarge i4i.32xlarge r7iz.32xlarge
Expand Down
8 changes: 4 additions & 4 deletions .release-please-manifest.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
".": "0.37.0",
".": "0.38.0",
"yarn-project/cli": "0.35.1",
"yarn-project/aztec": "0.37.0",
"barretenberg": "0.37.0",
"barretenberg/ts": "0.37.0"
"yarn-project/aztec": "0.38.0",
"barretenberg": "0.38.0",
"barretenberg/ts": "0.38.0"
}
Loading

0 comments on commit 142a364

Please sign in to comment.