name: Upload Release Asset on: push: tags: - 'v*' # "e.g. v0.4" workflow_dispatch: jobs: build-and-upload: strategy: matrix: env: - { NPROC: 2 } platform: [ubuntu-latest, macos-latest] runs-on: ${{ matrix.platform }} env: ${{ matrix.env }} timeout-minutes: 60 name: ${{ matrix.platform }} - ${{ matrix.env.NPROC }} processes steps: - name: Checkout code uses: actions/checkout@v2 # We need to do this because of how github cache works # I am not sure we can move the cache file, so if we do not do this # make update breaks because the cached compiler is there where the submodules # are meant to go. - name: Submodules run: | git submodule update --init --recursive - name: Cache nim uses: actions/cache@v1 with: path: vendor/nimbus-build-system/vendor/Nim/bin key: ${{ runner.os }}-${{ matrix.env.NPROC }}-nim-${{ hashFiles('.gitmodules') }} - name: Install dependencies run: | make -j${NPROC} NIMFLAGS="--parallelBuild:${NPROC}" V=1 update make -j${NPROC} NIMFLAGS="--parallelBuild:${NPROC}" LOG_LEVEL=TRACE wakunode1 make -j${NPROC} NIMFLAGS="--parallelBuild:${NPROC}" LOG_LEVEL=TRACE wakunode2 make -j${NPROC} NIMFLAGS="--parallelBuild:${NPROC}" LOG_LEVEL=TRACE chat2 tar -cvzf nim-waku-${{ matrix.platform }}.tar.gz ./build/ - name: Upload asset uses: actions/upload-artifact@v2.2.3 with: name: nim-waku-${{ matrix.platform }}.tar.gz path: nim-waku-${{ matrix.platform }}.tar.gz if-no-files-found: error