From 928d34b75f23926b62d5339660cb8db6fe4a7765 Mon Sep 17 00:00:00 2001 From: John Lee Date: Fri, 31 May 2024 12:58:42 -0400 Subject: [PATCH 1/7] Move to GH ACtions --- .github/workflows/bedrock.yml | 93 +++++++++++++++++++++++++++++++++++ .travis.yml | 32 ------------ travis.sh | 2 +- 3 files changed, 94 insertions(+), 33 deletions(-) create mode 100644 .github/workflows/bedrock.yml delete mode 100644 .travis.yml diff --git a/.github/workflows/bedrock.yml b/.github/workflows/bedrock.yml new file mode 100644 index 000000000..8a7285ce1 --- /dev/null +++ b/.github/workflows/bedrock.yml @@ -0,0 +1,93 @@ +name: Auth Test Suite +on: + push: + branches: # this ignores tag pushes, and only looks at branches. + - '**' + release: + types: [published] +concurrency: + group: "${{ github.ref }}" + cancel-in-progress: true +env: + CCACHE_BASEDIR: "/home/runner/.cache/ccache" + # Use mirror.bastion1.sjc if running locally + APT_MIRROR_URL: "apt-mirror.expensify.com:843" + TRAVIS_COMMIT: ${{ github.sha }} + TRAVIS_TAG: ${{ github.ref }} + TRAVIS_BRANCH: ${{ github.ref_name }} + CXX: g++-13 CC=gcc-13 +jobs: + Create_Auth_Binary: + name: "Create Auth Binary" + runs-on: ubuntu-20.04-v64 # The biggest and best for my baby + timeout-minutes: 30 + steps: + + - name: Checkout Auth + uses: actions/checkout@v4.1.0 + + - name: Get Date for cache + id: get-date + run: | + echo "date=$(/bin/date -u "+%Y%m%d")" >> $GITHUB_OUTPUT + shell: bash + + - name: Set up cache + uses: actions/cache@v4.0.0 + with: + path: |- + ${{ env.CCACHE_BASEDIR }} + key: "${{ runner.os }}-compilation-${{ github.ref_name }}-${{ github.sha }}" + restore-keys: | + ${{ runner.os }}-compilation-${{ github.ref_name }}- + ${{ runner.os }}-compilation- + + - name: Setup Mirror Certificates + uses: ./.github/actions/composite/setup-certificate-1p + env: + OP_SERVICE_ACCOUNT_TOKEN: ${{ secrets.OP_SERVICE_ACCOUNT_TOKEN }} + + - name: Install packages + run: | + sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys BA9EF27F + sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 4F4EA0AAE5267A6C + wget -qO - https://package.perforce.com/perforce.pubkey --no-check-certificate | sudo apt-key add - + echo "deb [arch=amd64] https://travis:${{ secrets.TRAVIS_APT_PASSWORD }}@$APT_MIRROR_URL/mirror/ppa.launchpad.net/ubuntu-toolchain-r/test/ubuntu focal main" | sudo tee -a /etc/apt/sources.list + sudo apt-get update -y + sudo -E apt-get -yq --no-install-suggests --no-install-recommends --force-yes install rsyslog cmake gcc-13 g++-13 libsodium-dev libgpgme11-dev libstdc++-13-dev + sudo locale-gen "en_US.UTF-8" + sudo service rsyslog start + + - name: Use updated ccache + run: | + wget https://github.com/ccache/ccache/releases/download/v4.8.3/ccache-4.8.3-linux-x86_64.tar.xz + tar -xf ccache-4.8.3-linux-x86_64.tar.xz + sudo cp ccache-4.8.3-linux-x86_64/ccache /usr/local/bin/ccache + ccache -V + ln -s /usr/local/bin/ccache /usr/local/bin/gcc-13 + ln -s /usr/local/bin/ccache /usr/local/bin/g++-13 + + - name: Setup tmate session + if: runner.debug == '1' + uses: mxschmitt/action-tmate@v3 + timeout-minutes: 60 + with: + limit-access-to-actor: true + + # If tmate was run, we want to mark this step as failed so auth tests don't look like they're passing + - name: Mark failure if debugging + if: runner.debug == '1' + run: exit 1 + + - name: Run tests + run: "./travis.sh" + + - uses: softprops/action-gh-release@de2c0eb89ae2a093876385947365aca7b0e5f844 # v0.1.15 + env: + GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}" + GITHUB_REPOSITORY: "${{ github.repository }}" + with: + files: |- + ./bedrock + if: "${{ startsWith(github.ref, 'refs/tags/') }}" + diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 478e3edb6..000000000 --- a/.travis.yml +++ /dev/null @@ -1,32 +0,0 @@ -env: - global: - - CXX=g++-13 CC=gcc-13 - - secure: gIOAWHsP6BaQgQc/IBEqdcyzMepMQFoKL4BzFwysbTcX3yIT3k5iSHpoCH/+RuHOB8XZl+xOwbOyuV+ujgbb70WB1ycYiQRhYZiX1kdmjodbbqgh9ZbGYajN62sI0JrTin4mGFnTwNJ0g1nuneuqIh0z5bszu+fcbfrqmaYkxO3cKUhyPp1jl7iAFmqkhnnLmXsi0N7d3yn1rLYfEfya9e4LOAC4pKPJUJzrs7vcavRVuFOAL3Lg+DyDsbBHy330SZEERUyX5Jb44nVJ3j9XGrujnPhlwan8wye9vrCrtRhC1lo2cllV9m0oSboJsV9A+bMQ2kgFqjZTMyZyjsQrflYNYhLpiFp3qVCTHpGH7jS6pUOXzRn/T+BUns4/4RJE5EsDzgBOg90oBVNGU++zJjCGMRaOp2LJt7uSCSc8kHEzfgvbcaGI9CPSlZLILVcrifUCNzktbEtQXEJ7SAtsSDI8sbxtBKvL0wExxx8FpKSY4yvRU7xfMhumzU4Ngufz3521MyZkYsOJVE02N/D+jzHRTjGRypatm9QfHeQmRuawT+aZ/Vra9jVTBelFkibshXAiVAm8kkAq4xz9Pml31+nsNUIo9rwfzyPdLAx8qV31EFmf55zggHu0LuEO1mp46y82oPakO6BxVdRtAUnZogagMWflant/KqRlzRsQt/M= -notifications: - email: - on_success: never -script: ./travis.sh -os: linux -dist: focal -group: edge -language: cpp -vm: - size: 2x-large -before_script: - - nproc - - free -m -cache: - - ccache: true -deploy: - provider: releases - edge: - branch: v2.0.3-beta.4 - # `token` is an encrypted oauth token for johnmlee101. See https://docs.travis-ci.com/user/deployment/releases - token: - secure: gIOAWHsP6BaQgQc/IBEqdcyzMepMQFoKL4BzFwysbTcX3yIT3k5iSHpoCH/+RuHOB8XZl+xOwbOyuV+ujgbb70WB1ycYiQRhYZiX1kdmjodbbqgh9ZbGYajN62sI0JrTin4mGFnTwNJ0g1nuneuqIh0z5bszu+fcbfrqmaYkxO3cKUhyPp1jl7iAFmqkhnnLmXsi0N7d3yn1rLYfEfya9e4LOAC4pKPJUJzrs7vcavRVuFOAL3Lg+DyDsbBHy330SZEERUyX5Jb44nVJ3j9XGrujnPhlwan8wye9vrCrtRhC1lo2cllV9m0oSboJsV9A+bMQ2kgFqjZTMyZyjsQrflYNYhLpiFp3qVCTHpGH7jS6pUOXzRn/T+BUns4/4RJE5EsDzgBOg90oBVNGU++zJjCGMRaOp2LJt7uSCSc8kHEzfgvbcaGI9CPSlZLILVcrifUCNzktbEtQXEJ7SAtsSDI8sbxtBKvL0wExxx8FpKSY4yvRU7xfMhumzU4Ngufz3521MyZkYsOJVE02N/D+jzHRTjGRypatm9QfHeQmRuawT+aZ/Vra9jVTBelFkibshXAiVAm8kkAq4xz9Pml31+nsNUIo9rwfzyPdLAx8qV31EFmf55zggHu0LuEO1mp46y82oPakO6BxVdRtAUnZogagMWflant/KqRlzRsQt/M= - file: - - bedrock - skip_cleanup: true - prerelease: true - on: - tags: true diff --git a/travis.sh b/travis.sh index 1ea55a8c8..7d8136189 100755 --- a/travis.sh +++ b/travis.sh @@ -16,7 +16,7 @@ export CCACHE_COMPILERCHECK="mtime" # We have include_file_ctime and include_file_mtime since travis never modifies the header file during execution # and travis shouldn't care about ctime and mtime between new branches. export CCACHE_SLOPPINESS="pch_defines,time_macros,include_file_ctime,include_file_mtime" -export CCACHE_MAXSIZE="5G" +export CCACHE_MAXSIZE="1G" # ccache recommends a compression level of 5 or less for faster compilations. # Compression speeds up the tar and untar of the cache between travis runs. From 9cb2350d19ae51825acfa4669ab8397fd2e3657c Mon Sep 17 00:00:00 2001 From: John Lee Date: Fri, 31 May 2024 13:00:40 -0400 Subject: [PATCH 2/7] Update --- .github/composite/setup-cache/action.yml | 19 +++++++++++++++++++ .../composite/setup-certificate-1p/action.yml | 16 ++++++++++++++++ .github/workflows/bedrock.yml | 6 +++--- 3 files changed, 38 insertions(+), 3 deletions(-) create mode 100644 .github/composite/setup-cache/action.yml create mode 100644 .github/composite/setup-certificate-1p/action.yml diff --git a/.github/composite/setup-cache/action.yml b/.github/composite/setup-cache/action.yml new file mode 100644 index 000000000..ff478ea80 --- /dev/null +++ b/.github/composite/setup-cache/action.yml @@ -0,0 +1,19 @@ +name: Set up Keyed Cache +description: Set up Keyed Cache + +runs: + using: composite + steps: + - name: Get Date for cache keying + id: get-date + run: | + echo "date=$(/bin/date -u "+%Y%m%d")" >> $GITHUB_OUTPUT + shell: bash + + - name: Set up cache + uses: actions/cache@v4.0.0 + with: + path: ${{ env.CCACHE_BASEDIR }} + key: "${{ runner.os }}-${{ env.SCRIPT_NAME }}-${{ steps.get-date.outputs.date }}" + restore-keys: | + ${{ runner.os }}-${{ env.SCRIPT_NAME }}- diff --git a/.github/composite/setup-certificate-1p/action.yml b/.github/composite/setup-certificate-1p/action.yml new file mode 100644 index 000000000..0f7d05e3c --- /dev/null +++ b/.github/composite/setup-certificate-1p/action.yml @@ -0,0 +1,16 @@ +name: Set up mirror certificates +description: Set up mirror certificates + +runs: + using: composite + steps: + - name: Install 1Password CLI + uses: 1password/install-cli-action@v1 + env: + OP_SERVICE_ACCOUNT_TOKEN: ${{ env.OP_SERVICE_ACCOUNT_TOKEN }} + + - name: Update SSL Certificates from 1Password + run: | + op document get --output expensify.ca.crt expensify.ca.crt && sudo cp expensify.ca.crt /usr/local/share/ca-certificates/expensify.ca.crt + sudo update-ca-certificates + shell: bash diff --git a/.github/workflows/bedrock.yml b/.github/workflows/bedrock.yml index 8a7285ce1..78d9eb284 100644 --- a/.github/workflows/bedrock.yml +++ b/.github/workflows/bedrock.yml @@ -17,13 +17,13 @@ env: TRAVIS_BRANCH: ${{ github.ref_name }} CXX: g++-13 CC=gcc-13 jobs: - Create_Auth_Binary: - name: "Create Auth Binary" + Run_Bedrock_Tests: + name: "Create Bedrock and Test" runs-on: ubuntu-20.04-v64 # The biggest and best for my baby timeout-minutes: 30 steps: - - name: Checkout Auth + - name: Checkout Bedrock uses: actions/checkout@v4.1.0 - name: Get Date for cache From 988cc5c69cdefbb4ee91aad8cf3d9008f9e6e71a Mon Sep 17 00:00:00 2001 From: John Lee Date: Fri, 31 May 2024 13:01:38 -0400 Subject: [PATCH 3/7] Update 2 --- .github/{ => actions}/composite/setup-cache/action.yml | 0 .github/{ => actions}/composite/setup-certificate-1p/action.yml | 0 2 files changed, 0 insertions(+), 0 deletions(-) rename .github/{ => actions}/composite/setup-cache/action.yml (100%) rename .github/{ => actions}/composite/setup-certificate-1p/action.yml (100%) diff --git a/.github/composite/setup-cache/action.yml b/.github/actions/composite/setup-cache/action.yml similarity index 100% rename from .github/composite/setup-cache/action.yml rename to .github/actions/composite/setup-cache/action.yml diff --git a/.github/composite/setup-certificate-1p/action.yml b/.github/actions/composite/setup-certificate-1p/action.yml similarity index 100% rename from .github/composite/setup-certificate-1p/action.yml rename to .github/actions/composite/setup-certificate-1p/action.yml From 7df85015a771ae28bb8af4531cdd58162d0ff22a Mon Sep 17 00:00:00 2001 From: John Lee Date: Fri, 31 May 2024 13:10:00 -0400 Subject: [PATCH 4/7] Updates --- travis.sh | 85 ++++++++++++------------------------------------------- 1 file changed, 18 insertions(+), 67 deletions(-) diff --git a/travis.sh b/travis.sh index 7d8136189..92dc0228d 100755 --- a/travis.sh +++ b/travis.sh @@ -7,10 +7,6 @@ export CC=gcc-13 # Add the current working directory to $PATH so that tests can find bedrock. export PATH=$PATH:`pwd` -# Configure ccache settings for travis. -export PATH=/usr/lib/ccache:$PATH -/usr/sbin/update-ccache-symlinks - export CCACHE_COMPILERCHECK="mtime" # We have include_file_ctime and include_file_mtime since travis never modifies the header file during execution @@ -23,82 +19,37 @@ export CCACHE_MAXSIZE="1G" export CCACHE_COMPRESS="true" export CCACHE_COMPRESSLEVEL="1" -travis_time_start() { - travis_timer_id=$(printf %08x $(( RANDOM * RANDOM ))) - travis_start_time=$(travis_nanoseconds) - echo -en "travis_time:start:$travis_timer_id\r${ANSI_CLEAR}" -} - -travis_time_finish() { - local result=$? - travis_end_time=$(travis_nanoseconds) - local duration=$(($travis_end_time-$travis_start_time)) - echo -en "travis_time:end:$travis_timer_id:start=$travis_start_time,finish=$travis_end_time,duration=$duration\r${ANSI_CLEAR}" - return $result -} - -travis_nanoseconds() { - local cmd="date" - local format="+%s%N" - local os=$(uname) - - if hash gdate > /dev/null 2>&1; then - cmd="gdate" # use gdate if available - elif [[ "$os" = Darwin ]]; then - format="+%s000000000" # fallback to second precision on darwin (does not support %N) - fi - - $cmd -u $format -} - -travis_fold() { +mark_fold() { local action=$1 local name=$2 - echo -en "travis_fold:${action}:${name}\r${ANSI_CLEAR}" -} - -travis_fold start install_packages -travis_time_start -if [[ -z "${APT_MIRROR_PASSWORD}" ]]; then - echo "Running on a fork, using public apt mirror" - sudo -E apt-add-repository -y "ppa:ubuntu-toolchain-r/test" -else - echo "Not running a fork, using private apt mirror" - sudo openssl aes-256-cbc -K $encrypted_f9e02b3c1033_key -iv $encrypted_f9e02b3c1033_iv -in expensify.ca.crt.enc -out /usr/local/share/ca-certificates/expensify.ca.crt -d - sudo update-ca-certificates - sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys BA9EF27F - echo "deb [arch=amd64] https://travis:$APT_MIRROR_PASSWORD@apt-mirror.expensify.com:843/mirror/ppa.launchpad.net/ubuntu-toolchain-r/test/ubuntu focal main" | sudo tee -a /etc/apt/sources.list -fi - -sudo apt-get update -y -sudo -E apt-get -yq --no-install-suggests --no-install-recommends $(travis_apt_get_options) install gcc-13 g++-13 + # if action == end, just print out ::endgroup:: + if [[ "$action" == "end" ]]; then + echo ::endgroup:: + return + fi -travis_time_finish -travis_fold end build_bedrock + echo "::group::${name}" +} # don't print out versions until after they are installed ${CC} --version ${CXX} --version -travis_fold start build_bedrock -travis_time_start -make -j32 -travis_time_finish -travis_fold end build_bedrock +mark_fold start build_bedrock +make -j64 +mark_fold end build_bedrock -travis_fold start test_bedrock -travis_time_start +mark_fold start test_bedrock cd test -./test -threads 32 +./test -threads 64 cd .. -travis_time_finish -travis_fold end test_bedrock +mark_fold end test_bedrock -travis_fold start test_bedrock_cluster -travis_time_start +mark_fold start test_bedrock_cluster cd test/clustertest ./clustertest -threads 8 cd ../.. -travis_time_finish -travis_fold end test_bedrock_cluster +mark_fold end test_bedrock_cluster + +strip bedrock From 664d805595f23072226f46e1e6da49fa664b0fb9 Mon Sep 17 00:00:00 2001 From: John Lee Date: Fri, 31 May 2024 13:19:32 -0400 Subject: [PATCH 5/7] Quick fixes --- .../actions/composite/setup-cache/action.yml | 19 ------- .github/workflows/bedrock.yml | 9 +-- travis.sh | 55 ------------------- 3 files changed, 3 insertions(+), 80 deletions(-) delete mode 100644 .github/actions/composite/setup-cache/action.yml delete mode 100755 travis.sh diff --git a/.github/actions/composite/setup-cache/action.yml b/.github/actions/composite/setup-cache/action.yml deleted file mode 100644 index ff478ea80..000000000 --- a/.github/actions/composite/setup-cache/action.yml +++ /dev/null @@ -1,19 +0,0 @@ -name: Set up Keyed Cache -description: Set up Keyed Cache - -runs: - using: composite - steps: - - name: Get Date for cache keying - id: get-date - run: | - echo "date=$(/bin/date -u "+%Y%m%d")" >> $GITHUB_OUTPUT - shell: bash - - - name: Set up cache - uses: actions/cache@v4.0.0 - with: - path: ${{ env.CCACHE_BASEDIR }} - key: "${{ runner.os }}-${{ env.SCRIPT_NAME }}-${{ steps.get-date.outputs.date }}" - restore-keys: | - ${{ runner.os }}-${{ env.SCRIPT_NAME }}- diff --git a/.github/workflows/bedrock.yml b/.github/workflows/bedrock.yml index 78d9eb284..a2f2e85de 100644 --- a/.github/workflows/bedrock.yml +++ b/.github/workflows/bedrock.yml @@ -1,4 +1,4 @@ -name: Auth Test Suite +name: Bedrock Test Suite on: push: branches: # this ignores tag pushes, and only looks at branches. @@ -12,9 +12,6 @@ env: CCACHE_BASEDIR: "/home/runner/.cache/ccache" # Use mirror.bastion1.sjc if running locally APT_MIRROR_URL: "apt-mirror.expensify.com:843" - TRAVIS_COMMIT: ${{ github.sha }} - TRAVIS_TAG: ${{ github.ref }} - TRAVIS_BRANCH: ${{ github.ref_name }} CXX: g++-13 CC=gcc-13 jobs: Run_Bedrock_Tests: @@ -74,13 +71,13 @@ jobs: with: limit-access-to-actor: true - # If tmate was run, we want to mark this step as failed so auth tests don't look like they're passing + # If tmate was run, we want to mark this step as failed so bedrock tests don't look like they're passing - name: Mark failure if debugging if: runner.debug == '1' run: exit 1 - name: Run tests - run: "./travis.sh" + run: "./ci_tests.sh" - uses: softprops/action-gh-release@de2c0eb89ae2a093876385947365aca7b0e5f844 # v0.1.15 env: diff --git a/travis.sh b/travis.sh deleted file mode 100755 index 92dc0228d..000000000 --- a/travis.sh +++ /dev/null @@ -1,55 +0,0 @@ -#!/bin/bash -set -e - -export CXX=g++-13 -export CC=gcc-13 - -# Add the current working directory to $PATH so that tests can find bedrock. -export PATH=$PATH:`pwd` - -export CCACHE_COMPILERCHECK="mtime" - -# We have include_file_ctime and include_file_mtime since travis never modifies the header file during execution -# and travis shouldn't care about ctime and mtime between new branches. -export CCACHE_SLOPPINESS="pch_defines,time_macros,include_file_ctime,include_file_mtime" -export CCACHE_MAXSIZE="1G" - -# ccache recommends a compression level of 5 or less for faster compilations. -# Compression speeds up the tar and untar of the cache between travis runs. -export CCACHE_COMPRESS="true" -export CCACHE_COMPRESSLEVEL="1" - -mark_fold() { - local action=$1 - local name=$2 - - # if action == end, just print out ::endgroup:: - if [[ "$action" == "end" ]]; then - echo ::endgroup:: - return - fi - - echo "::group::${name}" -} - -# don't print out versions until after they are installed -${CC} --version -${CXX} --version - -mark_fold start build_bedrock -make -j64 -mark_fold end build_bedrock - -mark_fold start test_bedrock -cd test -./test -threads 64 -cd .. -mark_fold end test_bedrock - -mark_fold start test_bedrock_cluster -cd test/clustertest -./clustertest -threads 8 -cd ../.. -mark_fold end test_bedrock_cluster - -strip bedrock From ebf5a2d4bf3b98e05cdf47a522df370977eee1f1 Mon Sep 17 00:00:00 2001 From: John Lee Date: Fri, 31 May 2024 13:20:06 -0400 Subject: [PATCH 6/7] forgot to add test files --- ci_tests.sh | 55 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100755 ci_tests.sh diff --git a/ci_tests.sh b/ci_tests.sh new file mode 100755 index 000000000..e0e8cd8f5 --- /dev/null +++ b/ci_tests.sh @@ -0,0 +1,55 @@ +#!/bin/bash +set -e + +export CXX=g++-13 +export CC=gcc-13 + +# Add the current working directory to $PATH so that tests can find bedrock. +export PATH=$PATH:`pwd` + +export CCACHE_COMPILERCHECK="mtime" + +# We have include_file_ctime and include_file_mtime since travis never modifies the header file during execution +# and gh actions shouldn't care about ctime and mtime between new branches. +export CCACHE_SLOPPINESS="pch_defines,time_macros,include_file_ctime,include_file_mtime" +export CCACHE_MAXSIZE="1G" + +# ccache recommends a compression level of 5 or less for faster compilations. +# Compression speeds up the tar and untar of the cache between travis runs. +export CCACHE_COMPRESS="true" +export CCACHE_COMPRESSLEVEL="1" + +mark_fold() { + local action=$1 + local name=$2 + + # if action == end, just print out ::endgroup:: + if [[ "$action" == "end" ]]; then + echo ::endgroup:: + return + fi + + echo "::group::${name}" +} + +# don't print out versions until after they are installed +${CC} --version +${CXX} --version + +mark_fold start build_bedrock +make -j64 +mark_fold end build_bedrock + +mark_fold start test_bedrock +cd test +./test -threads 64 +cd .. +mark_fold end test_bedrock + +mark_fold start test_bedrock_cluster +cd test/clustertest +./clustertest -threads 8 +cd ../.. +mark_fold end test_bedrock_cluster + +strip bedrock From 9903b8881bfba56932f9cdcfe407105d8950df37 Mon Sep 17 00:00:00 2001 From: John Lee Date: Fri, 31 May 2024 13:41:06 -0400 Subject: [PATCH 7/7] Update to pre-release --- .github/workflows/bedrock.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/bedrock.yml b/.github/workflows/bedrock.yml index a2f2e85de..1375a444b 100644 --- a/.github/workflows/bedrock.yml +++ b/.github/workflows/bedrock.yml @@ -4,7 +4,7 @@ on: branches: # this ignores tag pushes, and only looks at branches. - '**' release: - types: [published] + types: [prereleased] concurrency: group: "${{ github.ref }}" cancel-in-progress: true @@ -12,7 +12,6 @@ env: CCACHE_BASEDIR: "/home/runner/.cache/ccache" # Use mirror.bastion1.sjc if running locally APT_MIRROR_URL: "apt-mirror.expensify.com:843" - CXX: g++-13 CC=gcc-13 jobs: Run_Bedrock_Tests: name: "Create Bedrock and Test" @@ -71,7 +70,7 @@ jobs: with: limit-access-to-actor: true - # If tmate was run, we want to mark this step as failed so bedrock tests don't look like they're passing + # If tmate was run, we want to mark this step as failed so bedrock tests don't look like they're passing - name: Mark failure if debugging if: runner.debug == '1' run: exit 1 @@ -79,12 +78,13 @@ jobs: - name: Run tests run: "./ci_tests.sh" - - uses: softprops/action-gh-release@de2c0eb89ae2a093876385947365aca7b0e5f844 # v0.1.15 + - name: Upload bedrock binary to release + if: "${{ startsWith(github.ref, 'refs/tags/') }}" + uses: softprops/action-gh-release@de2c0eb89ae2a093876385947365aca7b0e5f844 # v0.1.15 env: GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}" GITHUB_REPOSITORY: "${{ github.repository }}" with: files: |- ./bedrock - if: "${{ startsWith(github.ref, 'refs/tags/') }}"