Test hybrid public #8
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Test hybrid public | |
on: | |
schedule: | |
- cron: '0 0 * * *' | |
workflow_dispatch: | |
inputs: | |
empty: | |
description: 'Empty option' | |
required: true | |
default: 'Not used' | |
jobs: | |
test: | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
- id: 0 | |
- id: 1 | |
- id: 2 | |
timeout-minutes: 20 | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install Poetry | |
run: curl -sSL https://install.python-poetry.org | python3 - --version 1.8.2 | |
- name: Download and install binaries | |
run: | | |
/bin/bash download_binaries.sh | |
- name: Install binaries | |
run: | | |
sudo mkdir -p /usr/lib/yagna | |
sudo mv golem/downloaded/plugins /usr/lib/yagna/plugins | |
sudo mv golem/downloaded/* /usr/bin/ | |
- name: Test binaries | |
run: | | |
yagna --version | |
ya-provider --version | |
ya-provider exe-unit list --json | |
env: | |
YA_CONSENT_INTERNAL: "allow" | |
YA_CONSENT_EXTERNAL: "allow" | |
- name: Prepare runtime | |
run: | | |
python advanced/prepare_runtime.py --mode hybrid | |
- name: Run requestor | |
run: | | |
cd golem/requestor | |
cat .env | |
yagna service run& | |
sleep 4 | |
env > yagnadir/env.log | |
- name: Run provider | |
run: | | |
sudo chown $USER /dev/kvm | |
cd golem/provider_0 | |
cat .env | |
golemsp setup --no-interactive | |
yagna service run& | |
sleep 6 | |
ya-provider run& | |
sleep 4 | |
env > yagnadir/env.log | |
env > providerdir/env.log | |
env: | |
YA_CONSENT_INTERNAL: "allow" | |
YA_CONSENT_EXTERNAL: "allow" | |
- name: Test yagna provider payment response | |
run: | | |
cd golem/provider_0 | |
yagna version show | |
yagna payment status | |
- name: Test yagna requestor payment response | |
run: | | |
yagna version show | |
yagna payment status | |
- name: Requestor app-key list | |
run: | | |
cd golem/requestor | |
yagna app-key list | |
- name: Run jsexecutor example | |
run: | | |
cd examples/jsexecutor | |
npm install | |
npm run run | |
- name: Prepare yapapi test | |
run: | | |
git clone https://github.com/golemfactory/yapapi.git | |
cd yapapi | |
poetry install | |
poetry run python examples/blender/blender.py --payment-network holesky | |
env: | |
YAGNA_APPKEY: 66iiOdkvV29 | |
- name: Stop requestor | |
if: always() | |
run: | | |
cd golem/requestor | |
yagna service shutdown | |
- name: Stop provider | |
if: always() | |
run: | | |
cd golem/provider_0 | |
yagna service shutdown | |
- name: Prepare logs | |
if: always() | |
run: | | |
# remove image cache from upload | |
rm -r golem/provider_0/providerdir/exe-unit/cache | |
tar --zstd -cf data_${{ matrix.id }}.tar.zst golem/requestor/yagnadir golem/provider_0/providerdir golem/provider_0/yagnadir | |
- name: Upload logs | |
if: always() | |
uses: actions/upload-artifact@v4 | |
with: | |
name: data_${{ matrix.id }}.tar.zst | |
path: data_${{ matrix.id }}.tar.zst | |