Skip to content

GenVM full

GenVM full #28

Workflow file for this run

name: GenVM full
on:
merge_group:
defaults:
run:
shell: bash -x {0}
env:
GCS_BUCKET: "gh-af"
jobs:
initial:
uses: ./.github/workflows/initial-template.yaml
secrets: inherit
### MODULE TESTS
module-test-cargo:
needs: [initial]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Get source
uses: ./.github/actions/get-src
with:
install_also: --rust
- name: configure and run codegen
run: |
cd "$GITHUB_WORKSPACE" && ./tools/ya-build/ya-build config && \
ninja -v -C build tags/codegen
- name: check format
run: |
./build-scripts/cargo-fmt.sh && \
git diff -U1 --exit-code
- name: cargo test
run: |
./build-scripts/cargo-test.sh
env:
OPENAIKEY: ${{ secrets.OPENAIKEY }}
HEURISTKEY: ${{ secrets.HEURISTKEY }}
ANTHROPICKEY: ${{ secrets.ANTHROPICKEY }}
XAIKEY: ${{ secrets.XAIKEY }}
GEMINIKEY: ${{ secrets.GEMINIKEY }}
module-test-python:
needs: [initial]
runs-on: ubuntu-latest
steps:
- run: sudo apt-get install -y python3-poetry
- uses: actions/checkout@v4
with:
lfs: true
- uses: actions/setup-python@v5
with:
python-version: '3.12'
cache: poetry
- name: Get source
uses: ./.github/actions/get-src
with:
load_submodules: "false"
- name: install dependencies
run: |
python3.12 -m pip install poetry && \
pushd runners/genlayer-py-std && \
poetry install && \
popd
- name: pytest
run: |
pushd runners/genlayer-py-std && \
poetry run pytest -n auto && \
popd
### RUNNERS
build-runners:
needs: [initial]
uses: ./.github/workflows/genvm-build-runners.yaml
secrets: inherit
### GENVMS build
build-genvm-debug-ubuntu-latest:
needs: [initial]
uses: ./.github/workflows/genvm-build-template.yaml
with:
runs_on: ubuntu-latest
preloads: ""
install_also: ""
secrets: inherit
build-genvm-release-ubuntu-latest:
needs: [initial]
uses: ./.github/workflows/genvm-build-template.yaml
with:
runs_on: ubuntu-latest
preloads: --preload .ci/release-conf.rb
install_also: ""
secrets: inherit
# build-genvm-release-macos-latest:
# needs: [pre-commit]
# uses: ./.github/workflows/genvm-build-template.yaml
# with:
# runs_on: macos-latest
# preloads: --preload .ci/release-conf.rb
# install_also: ""
# secrets: inherit
### GENVMS test
test-genvm-debug-ubuntu-latest:
needs: [build-runners, build-genvm-debug-ubuntu-latest]
uses: ./.github/workflows/genvm-test-template.yaml
with:
runs_on: ubuntu-latest
genvm_artifact_name: ${{ needs.build-genvm-debug-ubuntu-latest.outputs.artifact_name }}
genvm_artifact_url: ${{ needs.build-genvm-debug-ubuntu-latest.outputs.artifact_url }}
runners_artifact_name: ${{ needs.build-runners.outputs.artifact_name }}
runners_artifact_url: ${{ needs.build-runners.outputs.artifact_url }}
secrets: inherit
test-genvm-release-ubuntu-latest:
needs: [build-runners, build-genvm-release-ubuntu-latest]
uses: ./.github/workflows/genvm-test-template.yaml
with:
runs_on: ubuntu-latest
genvm_artifact_name: ${{ needs.build-genvm-release-ubuntu-latest.outputs.artifact_name }}
genvm_artifact_url: ${{ needs.build-genvm-release-ubuntu-latest.outputs.artifact_url }}
runners_artifact_name: ${{ needs.build-runners.outputs.artifact_name }}
runners_artifact_url: ${{ needs.build-runners.outputs.artifact_url }}
secrets: inherit
# test-genvm-release-macos-ubuntu-latest:
# needs: [build-runners, build-genvm-release-macos-latest]
# uses: ./.github/workflows/genvm-test-template.yaml
# with:
# runs_on: macos-latest
# genvm_artifact_name: ${{ needs.build-genvm-release-macos-latest.outputs.artifact_name }}
# genvm_artifact_url: ${{ needs.build-genvm-release-macos-latest.outputs.artifact_url }}
# runners_artifact_name: ${{ needs.build-runners.outputs.artifact_name }}
# runners_artifact_url: ${{ needs.build-runners.outputs.artifact_url }}
# secrets: inherit
### END
validate-end:
runs-on: ubuntu-latest
if: ${{ always() }}
needs:
- initial
- build-runners
- build-genvm-debug-ubuntu-latest
- build-genvm-release-ubuntu-latest
# - build-genvm-release-macos-latest
- test-genvm-debug-ubuntu-latest
- test-genvm-release-ubuntu-latest
# - test-genvm-release-macos-ubuntu-latest
- module-test-python
- module-test-cargo
steps:
- run: |
echo ${{ join(needs.*.result, ' ') }} | grep -vP 'failure|cancelled'