Skip to content

sapphire-localnet: Use Mock SGX for spinning up Oasis stack #976

sapphire-localnet: Use Mock SGX for spinning up Oasis stack

sapphire-localnet: Use Mock SGX for spinning up Oasis stack #976

Workflow file for this run

# NOTE: This name appears in GitHub's Checks API and in workflow's status badge.
name: ci-benchmarks
# Trigger the workflow when:
on:
# A push occurs to one of the matched branches.
push:
branches:
- main
- stable/*
# Or when a pull request event occurs for a pull request against one of the
# matched branches.
pull_request:
branches:
- main
- stable/*
# Cancel in-progress jobs on same branch.
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
benchmark-rt:
name: benchmark-rt
runs-on: ubuntu-latest
services:
postgres:
image: postgres
env:
POSTGRES_HOST: 127.0.0.1
POSTGRES_PORT: 5432
POSTGRES_DB: postgres
POSTGRES_USER: postgres
POSTGRES_PASSWORD: postgres
ports:
- 5432:5432
env:
OASIS_CORE_VERSION: "24.0"
OASIS_NODE: ${{ github.workspace }}/oasis_core/oasis-node
OASIS_NET_RUNNER: ${{ github.workspace }}/oasis_core/oasis-net-runner
SAPPHIRE_PARATIME_VERSION: 0.7.3
GATEWAY__CHAIN_ID: 23293
SAPPHIRE_PARATIME: ${{ github.workspace }}/oasis_core/sapphire-paratime
OASIS_NODE_DATADIR: /tmp/oasis-sapphire-benchmarks
OASIS_WEB3_GATEWAY: ${{ github.workspace }}/oasis-web3-gateway
timeout-minutes: 30
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup Go
uses: actions/setup-go@v5
with:
go-version: "1.22.x"
- name: Install prerequisites
run: |
sudo apt update && sudo apt install bubblewrap libseccomp-dev unzip -y
wget "https://github.com/oasisprotocol/oasis-core/releases/download/v${OASIS_CORE_VERSION}/oasis_core_${OASIS_CORE_VERSION}_linux_amd64.tar.gz"
tar xfvz "oasis_core_${OASIS_CORE_VERSION}_linux_amd64.tar.gz"
mkdir -p "$(dirname ${OASIS_NODE})"
mv "oasis_core_${OASIS_CORE_VERSION}_linux_amd64/oasis-node" "${OASIS_NODE}"
mkdir -p "$(dirname ${OASIS_NET_RUNNER})"
mv "oasis_core_${OASIS_CORE_VERSION}_linux_amd64/oasis-net-runner" "${OASIS_NET_RUNNER}"
mkdir -p "$(dirname ${SAPPHIRE_PARATIME})"
wget "https://github.com/oasisprotocol/sapphire-paratime/releases/download/v${SAPPHIRE_PARATIME_VERSION}/localnet-sapphire-paratime.orc" -O "${SAPPHIRE_PARATIME}.orc"
unzip "${SAPPHIRE_PARATIME}.orc"
mv runtime.elf "${SAPPHIRE_PARATIME}"
chmod a+x "${SAPPHIRE_PARATIME}"
go build
cd benchmarks
go build
- name: Run end-to-end benchmarks
working-directory: benchmarks
run: ./run-benchmarks.sh