name: testnet-cli-macos-intel on: release: types: - published # Allows you to run this workflow manually from the Actions tab workflow_dispatch: pull_request: branches: - dev paths-ignore: - '**.md' concurrency: group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} cancel-in-progress: true jobs: build-project: name: Build Project runs-on: macos-13 steps: - name: Checkout Project uses: actions/checkout@v4.2.2 with: fetch-depth: 0 submodules: recursive - name: install dependencies run: HOMEBREW_NO_AUTO_UPDATE=1 brew install ccache miniupnpc - name: Cache OpenSSL id: cache-openssl uses: actions/cache@v4 with: path: ${{ github.workspace }}/build/openssl key: ${{ runner.os }}-intel-openssl - name: ccache caching uses: actions/cache@v4 with: path: ${{ github.workspace }}/build/ccache key: ccache-testnet-cli-${{ runner.os }}-intel - name: Install boost uses: MarkusJx/install-boost@6d8df42f57de83c5b326b5b83e7b35d650030103 id: install-boost with: boost_version: 1.84.0 boost_install_dir: ${{ github.workspace }}/build/boost_1_84_0 platform_version: 13 toolset: clang - name: Build OpenSSL if: steps.cache-openssl.outputs.cache-hit != 'true' run: | cd build curl -OL https://www.openssl.org/source/openssl-1.1.1w.tar.gz echo "cf3098950cb4d853ad95c0841f1f9c6d3dc102dccfcacd521d93925208b76ac8 openssl-1.1.1w.tar.gz" | shasum -c && tar -xjf openssl-1.1.1w.tar.gz rm openssl-1.1.1w.tar.gz && cd openssl-1.1.1w ./config --prefix=${{ github.workspace }}/build/openssl --openssldir=${{ github.workspace }}/build/openssl shared zlib make && make install && cd .. rm -rf openssl-1.1.1w/ - name: Build Project uses: threeal/cmake-action@v2.1.0 env: BOOST_ROOT: ${{ steps.install-boost.outputs.BOOST_ROOT }} CCACHE_TEMPDIR: ${{ github.workspace }}/build/ccache OPENSSL_ROOT_DIR: ${{ github.workspace }}/build/openssl with: build-dir: build/release build-args: | -j2 --config Release options: | TESTNET=TRUE CMAKE_BUILD_TYPE=Release Boost_INCLUDE_DIR=${{steps.install-boost.outputs.BOOST_ROOT}}/include Boost_LIBRARY_DIRS=${{steps.install-boost.outputs.BOOST_ROOT}}/lib - name: Upload Binaries uses: actions/upload-artifact@v4 with: name: testnet-cli-macos-intel path: | ${{ github.workspace }}/build/release/src/zanod ${{ github.workspace }}/build/release/src/simplewallet ${{ github.workspace }}/build/release/src/connectivity_tool