1818 fail-fast : false
1919 matrix :
2020 os : [ubuntu, macos]
21- toolchain : [stable, nightly, 0.1.0, 0.1.1, 0.2.0, 0.3.0]
21+ toolchain : [stable, nightly, 0.1.0, 0.1.1, 0.2.0, 0.3.0, 0.4.1 ]
2222 timeout-minutes : 45
2323 steps :
2424 - name : Parse toolchain
@@ -41,19 +41,64 @@ jobs:
4141 echo "${HOME}/.nargo/bin" >> $GITHUB_PATH
4242 env :
4343 INSTALL_URL : https://raw.githubusercontent.com/${{ github.repository }}/${{ github.head_ref || github.ref_name }}/install
44+ NOIRUP_BIN_URL : https://raw.githubusercontent.com/${{ github.repository }}/${{ github.head_ref || github.ref_name }}/noirup
4445 - name : Install nargo with noirup
4546 run : noirup ${{steps.parse.outputs.toolchain}}
4647 - name : Check nargo installation
4748 run : nargo --version
4849
50+ install-source :
51+ name : Noir ${{matrix.version}} (from source) on ${{matrix.os == 'ubuntu' && 'Linux' || matrix.os == 'macos' && 'macOS' || matrix.os == 'windows' && 'Windows' || '???'}}
52+ runs-on : ${{matrix.os}}-latest
53+ strategy :
54+ fail-fast : false
55+ matrix :
56+ os : [ubuntu, macos]
57+ # Installing from source can technically target any commit.
58+ # However, we only guarantee that noirup will build release commits.
59+ version : [0.1.0, 0.1.1, 0.2.0, 0.3.0, 0.4.1]
60+ timeout-minutes : 45
61+ steps :
62+ - name : Install noirup
63+ run : |
64+ curl -L $INSTALL_URL | bash
65+ echo "${HOME}/.nargo/bin" >> $GITHUB_PATH
66+ env :
67+ INSTALL_URL : https://raw.githubusercontent.com/${{ github.repository }}/${{ github.head_ref || github.ref_name }}/install
68+ NOIRUP_BIN_URL : https://raw.githubusercontent.com/${{ github.repository }}/${{ github.head_ref || github.ref_name }}/noirup
69+
70+ - uses : actions/cache@v3
71+ with :
72+ path : |
73+ ~/.cargo/bin/
74+ ~/.cargo/registry/index/
75+ ~/.cargo/registry/cache/
76+ ~/.cargo/git/db/
77+ key : ${{ runner.os }}-cargo-${{ matrix.version }}
78+
79+ - name : Install Barretenberg dependencies
80+ if : matrix.os == 'ubuntu'
81+ run : sudo apt update && sudo apt install clang lld cmake libomp-dev
82+
83+ - name : Install Barretenberg dependencies
84+ if : matrix.os == 'macos'
85+ run : brew install cmake llvm libomp
86+
87+ - name : Install nargo from source with noirup
88+ run : noirup $toolchain
89+ env :
90+ toolchain : -b tags/v${{matrix.version}}
91+ - name : Check nargo installation
92+ run : nargo --version
93+
4994 install-action :
5095 name : Noir ${{matrix.toolchain}} (GH action) on ${{matrix.os == 'ubuntu' && 'Linux' || matrix.os == 'macos' && 'macOS' || matrix.os == 'windows' && 'Windows' || '???'}}
5196 runs-on : ${{matrix.os}}-latest
5297 strategy :
5398 fail-fast : false
5499 matrix :
55100 os : [ubuntu, macos]
56- toolchain : [stable, nightly, 0.1.0, 0.1.1, 0.2.0, 0.3.0]
101+ toolchain : [stable, nightly, 0.1.0, 0.1.1, 0.2.0, 0.3.0, 0.4.1 ]
57102 timeout-minutes : 45
58103 steps :
59104 - uses : actions/checkout@v3
0 commit comments