Skip to content

Workflow file for this run

name: Playwright Tests
on:
push:
branches: [main, master, feat/tests/test-init]
tags: [releases*]
pull_request:
branches: [main, master]
tags: [releases*]
workflow_dispatch:
env:
codex_version: v0.1.6
circuit_version: v0.1.6
jobs:
tests:
timeout-minutes: 60
runs-on: ubuntu-latest
steps:
- name: Run Codex node
run: |
# Download
version=${{ env.codex_version }}
platform=$(echo `uname -s` | awk '{print tolower($0)}')
architecture=$([[ `uname -m` == 'x86_64' ]] && echo amd64 || echo arm64)
curl -LO https://github.com/codex-storage/nim-codex/releases/download/${version}/codex-${version}-${platform}-${architecture}.tar.gz
curl -LO https://github.com/codex-storage/nim-codex/releases/download/${version}/codex-${version}-${platform}-${architecture}.tar.gz.sha256
sha256sum -c codex-${version}-${platform}-${architecture}.tar.gz.sha256
[[ $? -eq 0 ]] && { echo "Checksum is OK"; } || { echo "Checksum failed"; exit 1; }
tar -zxvf codex-${version}-${platform}-${architecture}.tar.gz
sudo apt update && sudo apt install libgomp1
# Create circuit files folder
mkdir -p datadir/circuits
chmod -R 700 datadir
chmod -R 700 datadir/circuits
# Download circuit files
curl -OL https://github.com/codex-storage/nim-codex/releases/download/${circuit_version}/cirdl-${circuit_version}-${platform}-${architecture}.tar.gz
tar -xvf cirdl-${circuit_version}-${platform}-${architecture}.tar.gz
./cirdl-${circuit_version}-${platform}-${architecture} \
datadir/circuits \
https://rpc.testnet.codex.storage \
0xfE822Df439d987849a90B64a4C0e26a297DBD47F
# Get an eth address
response=$(curl -s https://key.codex.storage)
awk -F ': ' '/private/ {print $2}' <<<"${response}" > eth.key
awk -F ': ' '/address/ {print $2}' <<<"${response}" > eth.address
chmod 600 eth.key
ETH_ADDRESS=$(cat eth.address)
# Run
./codex-${version}-${platform}-${architecture} --data-dir=datadir --api-cors-origin="*" persistence --eth-provider=https://rpc.testnet.codex.storage --eth-private-key=./eth.key --marketplace-address=0xfE822Df439d987849a90B64a4C0e26a297DBD47F prover --circuit-dir=/datadir/circuits &
- name: Check Codex API
run: |
curl --max-time 5 --fail localhost:8080/api/codex/v1/debug/info -w "\n"
[[ $? -eq 0 ]] && { echo "Codex node is up"; } || { echo "Please check Codex node"; exit 1; }
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: lts/*
- name: Install dependencies
if: false
run: npm ci
- name: Install Playwright Browsers
if: false
run: npx playwright install --with-deps
- name: Run Playwright tests
if: false
run: npx playwright test
- uses: actions/upload-artifact@v4
if: false
# if: ${{ !cancelled() }}
with:
name: playwright-report
path: playwright-report/
retention-days: 30