-
Notifications
You must be signed in to change notification settings - Fork 268
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: initial Earthly CI #5069
Merged
Merged
feat: initial Earthly CI #5069
Changes from all commits
Commits
Show all changes
202 commits
Select commit
Hold shift + click to select a range
a03cdc6
Add noir pull
ludamad 6d8c7ce
feat(earthly): beginnings
ludamad 812d86d
revert
ludamad 07ab202
cool stuff
ludamad 4ba38e6
Try to take it live
ludamad ef7d5ee
yaml syntax
ludamad 543aed5
yaml syntax
ludamad f0987a7
yaml syntax
ludamad 9680a38
yaml syntax
ludamad 5ea5e46
check it out
ludamad 0da6e28
test
ludamad f790c7f
allow passing complex commands to runscript
ludamad a0986ed
earthly on spot
ludamad 7aef782
earthly on spot
ludamad 0e5d167
earthly on spot
ludamad 9f0ab9d
fix
ludamad 7a72211
tests
ludamad 29f4cd1
run
ludamad 5426698
oldest doh in the book
ludamad 6a4d4a6
earthly fix
ludamad cbd9254
earthly fix
ludamad b1ac8b8
hijack charlies buildhost
ludamad 8eeb7d6
command fix
ludamad 6d0e60f
yeah thats it
ludamad 50ac702
independence
ludamad efe5848
ssh test
ludamad 26ce920
attempt working
ludamad ea00fe7
test workings [ci debug]
ludamad dfa4759
update
ludamad 8eed54d
fix url syntax
ludamad 1d5fbc9
sudo etc hosts
ludamad 8c4d162
ok one last try
ludamad b7bed2b
cache
ludamad 67f82d4
buildkit setting in wrapper
ludamad 7741413
can still be docker?
ludamad 85d8d8a
ci bench
ludamad 126bb69
fix
ludamad 9b66094
fixes
ludamad 215138e
build
ludamad 81ec27c
script
ludamad 210918e
srs_db
ludamad 3892ae6
fix
ludamad 038677d
cache
ludamad f74b7a6
minimal srs db download
ludamad a1a6e15
try minimal circleci
ludamad 9e92ce6
Woops
ludamad 0145093
Caching fixes
ludamad 6c89430
incremental build fixup
ludamad 06517a7
build fix
ludamad 1d7e6d9
New utilities
ludamad 7f287d7
caching
ludamad 8a3bb36
builds
ludamad b76eaa4
fix wasm build
ludamad 5e05070
refactoring passes
ludamad 904f24d
ts earthfile
ludamad 5c819ba
source remote_initializse
ludamad 354b172
indecision
ludamad 4bacfe5
noir earthfilication
ludamad 7e7c322
Noir down
ludamad 2bca080
avm transpiler working
ludamad f047b71
todos
ludamad a462ebd
versioning
ludamad 71aafdd
versioning
ludamad f43486b
flesh out yarn project
ludamad db36e87
benches
ludamad 441ca22
fix yarn-project
ludamad 65f4ce5
fix yarn-project
ludamad a1b5d9f
Update
ludamad ac5dc92
earthly build fix
ludamad 9fb615b
fixes
ludamad 54f9d6b
benching sequential order
ludamad 5be25cf
wasm benches
ludamad 5d3b708
dont use spot
ludamad 3559c71
try inline cache
ludamad 98d98a2
Files
ludamad 27e99f2
more earthly
ludamad 129f269
working build-ci
ludamad 65e82f5
more earthly ci
ludamad f66acac
more earthly ci
ludamad 324b852
test earthly
ludamad a77e97c
try just DOCKER_HOST
ludamad 6b57f7a
fix docker host
ludamad a7f8a7b
fix docker host
ludamad 07364c9
Fix runner
ludamad db5b221
checkout
ludamad 9474cf9
Attempt to make wasm build. wip
charlielye e0a6b70
Registry stuff
ludamad cd73bdc
de-templatize
ludamad d5e6374
earthly helper script
ludamad 19b6ad6
e2e sandbox example
ludamad 7a0f755
add e2e earthfile
ludamad 0448e45
end-to-end tests
ludamad 9f25bc7
end-to-end tests
ludamad 2ce4d38
e2e
ludamad b7af582
work on end to end and caching
ludamad bba6708
Maybe ditch this. stash.
ludamad a947c84
Attempts
ludamad 0774fdb
progress on end-to-end, next: fixing @aztec/accounts
ludamad fd9fa87
earthly
ludamad 6bb6aae
no circleci jobs
ludamad d21e781
add ci
ludamad 6d570e5
Merge remote-tracking branch 'origin/master' into feat/earthly
ludamad e26c2bd
fix conditions
ludamad 099b37c
try set term
ludamad 5f039a0
Fix failure mode
ludamad 956e46c
fix noir build
ludamad 7bd1a08
split out earthly-timed
ludamad 03fbb46
split out earthly-timed
ludamad 933ceaa
earthly-timed fix
ludamad a2ac99b
fix
ludamad ea4daac
proper filtering in noir-projects
ludamad ca36d43
dont cache earthly
ludamad 7be588b
Update
ludamad 5977737
fix concurrency
ludamad b1af007
submodule recursive
ludamad 70658eb
fix timed
ludamad d3bb94e
fix artifacts being baked in
ludamad e97f960
try better ignore scheme, ln to .gitignore
ludamad 8f197ab
try better ignore scheme, ln to .gitignore
ludamad ab923de
git ignore removal
ludamad e48ccd3
fix multiplatform
ludamad b505019
feat: Cl/earthly host build (#5195)
charlielye b23e948
download-again
ludamad 930c3ff
Merge remote-tracking branch 'origin/master' into feat/earthly
ludamad 92281ae
fix path
ludamad 320c525
attempt to run just 1 e2e test.
charlielye c153500
cached foundry
ludamad f6cf37b
less to build in yarn project
ludamad 612c81c
Fix granularity
ludamad 13a45c2
Try again at pattern
ludamad b6349e6
fix end to end
ludamad c18a22a
more intricate caching
ludamad 41d186a
more intricate caching
ludamad 1b09df1
Almost working
ludamad 7ab2ce1
Test pipeline
ludamad c9ce994
fix build
ludamad 0998438
try simple
ludamad bca1239
flow
ludamad cd1d122
test
ludamad 12622ac
alt option
ludamad 36a5b23
Update
ludamad 5631270
fix ci
ludamad 9584efa
env
ludamad d561b81
fix shell type
ludamad a938128
drop -ci
ludamad 110ace1
foundry
ludamad dcc430a
groov
ludamad 6e4caa3
revert
ludamad 247eaf8
Login to dockerhub in CI
ludamad 7e00998
fix dockerhub login
ludamad 77b5059
fix intended ci target
ludamad ec644bc
fix intended ci target
ludamad 5bb3e00
mem stats
ludamad 58e93a1
Merge remote-tracking branch 'origin/master' into feat/earthly
ludamad b5da55f
reinstate ci
ludamad 8f22d1d
conditional fix
ludamad 99ae65b
Fix image
ludamad bcb300d
try fix
ludamad 23150b1
jiggle
ludamad ff95655
fix versions
ludamad 71f8a9b
fix versions
ludamad 33375cb
Merge remote-tracking branch 'origin/master' into ad/try-fix-acir
ludamad c943564
Merge remote-tracking branch 'origin/ad/try-fix-acir' into feat/earthly
ludamad 564c1c4
Update
ludamad 6ccf4f0
compiler dependency
ludamad 785a774
compiler dependency
ludamad 0f30090
Merge branch 'master' into feat/earthly
ludamad 7e53c48
fix ignition calls
ludamad 6bade04
Merge remote-tracking branch 'origin/feat/earthly' into feat/earthly
ludamad 17504d5
Merge remote-tracking branch 'origin/master' into feat/earthly
ludamad 98ab25f
matrix
ludamad bedf8ec
exec stats not working anyway
ludamad 2c0b824
try and prevent settings issues
ludamad ec6e3de
firing off ci
ludamad da8815c
is bootstrapping necessary?
ludamad 97c2ea3
concurrenct ci run 1
ludamad 09286de
concurrenct ci run 2
ludamad 5f65543
concurrenct ci run 3
ludamad fc09036
concurrenct ci run 4
ludamad 82cf2da
concurrenct ci run 5
ludamad 52824d0
concurrenct ci run 6
ludamad e926af3
concurrenct ci run 7
ludamad 280de10
concurrenct ci run 8
ludamad aa0c805
concurrenct ci run 9
ludamad 4c4cd8c
concurrenct ci run 10
ludamad 0dd5f7b
concurrenct ci run 11
ludamad 58c6327
concurrenct ci run 12
ludamad f8448b0
concurrenct ci run 13
ludamad 7da0a93
concurrenct ci run 14
ludamad 3d9030c
concurrenct ci run 15
ludamad be1b16c
concurrenct ci run 16
ludamad 0320040
fix concurrency of gate action
ludamad 71afc70
updates
ludamad d42cbcf
fix exit code
ludamad 58fc121
clean
ludamad c571769
shorter
ludamad 4de72a2
fix arm runner
ludamad c90a91b
Maybe not
ludamad a52e956
push down grep v
ludamad 49198b0
status in foundry
ludamad e45563d
fix spam
ludamad f39c2f8
try fix
ludamad File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,46 @@ | ||
name: Run CI with Earthly | ||
on: | ||
push: | ||
branches: | ||
- master | ||
pull_request: {} | ||
workflow_dispatch: {} | ||
|
||
jobs: | ||
ci: | ||
runs-on: ubuntu-latest | ||
# run ci for both x86_64 and arm64 | ||
strategy: {matrix: {environment: [x86, arm]}} | ||
# cancel if reran on same PR if exists, otherwise if on same commit | ||
concurrency: | ||
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}-${{ matrix.environment }} | ||
cancel-in-progress: true | ||
steps: | ||
- name: Checkout | ||
uses: actions/checkout@v4 | ||
with: | ||
ref: ${{ github.event.pull_request.head.sha }} | ||
submodules: recursive | ||
|
||
- name: Setup | ||
run: | | ||
mkdir -p ~/.ssh | ||
echo DOCKER_HOST=ssh://build-instance-${{ matrix.environment }}.aztecprotocol.com >> $GITHUB_ENV | ||
echo ${{ secrets.DOCKERHUB_PASSWORD}} | docker login -u aztecprotocolci --password-stdin | ||
echo ${{ secrets.BUILD_INSTANCE_SSH_KEY }} | base64 -d > ~/.ssh/build_instance_key | ||
chmod 600 ~/.ssh/build_instance_key | ||
cat > ~/.ssh/config <<EOF | ||
IdentityFile ~/.ssh/build_instance_key | ||
StrictHostKeyChecking no | ||
User ubuntu | ||
EOF | ||
|
||
# Turn on if updating our custom built WASM-enabled clang (wasi-sdk), foundry or other base images | ||
#- name: Ensure Base Images | ||
# run: | | ||
# scripts/earthly --push ./foundry/+build | ||
# Uncomment the following line if needed for the arm environment | ||
# scripts/earthly --push ./barretenberg/cpp/+build-wasi-sdk | ||
|
||
- name: CI | ||
run: scripts/earthly +build-ci-small |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,31 @@ | ||
VERSION 0.8 | ||
FROM ubuntu:lunar | ||
|
||
build-ci: | ||
BUILD ./avm-transpiler/+build | ||
BUILD ./barretenberg/cpp/+build-release | ||
BUILD ./barretenberg/cpp/+preset-wasm | ||
BUILD ./barretenberg/cpp/+build-gcc | ||
BUILD ./barretenberg/cpp/+build-fuzzing | ||
BUILD ./barretenberg/cpp/+build-clang-assert | ||
BUILD ./barretenberg/cpp/+test-clang-format | ||
BUILD ./barretenberg/cpp/+test-clang-format | ||
BUILD ./boxes/+build | ||
BUILD ./noir/+packages | ||
BUILD ./noir/+nargo | ||
BUILD ./noir-projects/+build | ||
BUILD ./yarn-project/+build | ||
BUILD +test-end-to-end | ||
|
||
build-ci-small: | ||
BUILD ./yarn-project/end-to-end/+e2e-escrow-contract | ||
|
||
build: | ||
# yarn-project has the entry point to Aztec | ||
BUILD ./yarn-project/+build | ||
|
||
test-end-to-end: | ||
BUILD ./yarn-project/end-to-end/+test-all | ||
|
||
bench: | ||
RUN echo hi |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
VERSION 0.8 | ||
IMPORT ../noir AS noir | ||
# we rely on noir source, which this image has | ||
FROM noir+nargo | ||
|
||
# move noir contents to /build/noir | ||
RUN mv /build /noir && mkdir /build && mv /noir /build | ||
# work in avm-transpiler | ||
WORKDIR /build/avm-transpiler | ||
|
||
RUN apt-get update && apt-get install -y git | ||
|
||
COPY --keep-ts --dir scripts src Cargo.lock Cargo.toml rust-toolchain.toml . | ||
|
||
build: | ||
RUN ./scripts/bootstrap_native.sh | ||
SAVE ARTIFACT target/release/avm-transpiler avm-transpiler | ||
|
||
run: | ||
#TODO needed? | ||
FROM ubuntu:focal | ||
COPY +build/avm-transpiler /build/avm-transpiler | ||
ENTRYPOINT ["sh", "-c"] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -206,11 +206,11 @@ | |
} | ||
}, | ||
{ | ||
"name": "op-count-track", | ||
"name": "op-count", | ||
"displayName": "Release build with operation counts", | ||
"description": "Build with op counting", | ||
"inherits": "clang16", | ||
"binaryDir": "build-op-count-track", | ||
"binaryDir": "build-op-count", | ||
"environment": { | ||
"CXXFLAGS": "-DBB_USE_OP_COUNT -DBB_USE_OP_COUNT_TRACK_ONLY" | ||
} | ||
|
@@ -256,7 +256,7 @@ | |
"generator": "Ninja", | ||
"toolchainFile": "cmake/toolchains/wasm32-wasi.cmake", | ||
"environment": { | ||
"WASI_SDK_PREFIX": "${sourceDir}/src/wasi-sdk-20.0", | ||
"WASI_SDK_PREFIX": "${sourceDir}/src/wasi-sdk", | ||
"CC": "$env{WASI_SDK_PREFIX}/bin/clang", | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Bundled: small changes to presets |
||
"CXX": "$env{WASI_SDK_PREFIX}/bin/clang++", | ||
"AR": "$env{WASI_SDK_PREFIX}/bin/llvm-ar", | ||
|
@@ -289,7 +289,6 @@ | |
"inherits": "wasm", | ||
"binaryDir": "build-wasm-threads", | ||
"environment": { | ||
"WASI_SDK_PREFIX": "${sourceDir}/src/wasi-sdk-20.0+threads", | ||
"CMAKE_BUILD_TYPE": "Release" | ||
}, | ||
"cacheVariables": { | ||
|
@@ -355,9 +354,9 @@ | |
"configurePreset": "op-count-time" | ||
}, | ||
{ | ||
"name": "op-count-track", | ||
"name": "op-count", | ||
"inherits": "default", | ||
"configurePreset": "op-count-track" | ||
"configurePreset": "op-count" | ||
}, | ||
{ | ||
"name": "clang16-dbg", | ||
|
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
missing dep