Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
77 changes: 77 additions & 0 deletions .github/workflows/integrations.yml
Original file line number Diff line number Diff line change
Expand Up @@ -203,3 +203,80 @@ jobs:
env:
CMAKE_PREFIX_PATH: ${{ github.workspace }}/dist
CMAKE_TOOLCHAIN_FILE: ${{ github.workspace }}/.conan/conan_paths.cmake

ayon-integration:
name: Ayon resolver on ${{ matrix.config.os }}
runs-on: ${{ matrix.config.os }}
strategy:
fail-fast: false
matrix:
config:
- os: windows-2019
site-packages: Lib/site-packages
- os: ubuntu-20.04
site-packages: lib/python3.9/site-packages
- os: macos-11
# MacOS toolchain doesn't search /usr/local by default:
# https://gitlab.kitware.com/cmake/cmake/-/issues/19120
# The CMake FindPython module's Python::Python target (used in
# OpenAssetIO-Test-CMake) transitively adds linker flags to
# system libs, which fail due to this issue.
preamble: export LDFLAGS="-L/usr/local/lib"
site-packages: lib/python3.9/site-packages
defaults:
run:
shell: bash

steps:
- uses: actions/checkout@v4

- name: Bootstrap
uses: ./.github/bootstrap_platform

- name: Build OpenAssetIO (setup.py)
run: |
${{ matrix.config.preamble }}
python -m pip install src/openassetio-python
env:
CMAKE_TOOLCHAIN_FILE: ${{ github.workspace }}/.conan/conan_paths.cmake

- name: Checkout Ayon
uses: actions/checkout@v4
with:
repository: elliotcmorris/ayon-openassetio-manager-plugin
token: ${{ secrets.GITHUB_TOKEN }}
path: ${{ github.workspace }}/ynput/ayon-openassetio-manager-plugin

- name: Install and configure Poetry
run: |
cd ${{ github.workspace }}/ynput/ayon-openassetio-manager-plugin
mkdir -p ${{ github.workspace }}/ynput/ayon-openassetio-manager-plugin/.poetry
export POETRY_HOME="${{ github.workspace }}/ynput/ayon-openassetio-manager-plugin/.poetry"
curl -sSL https://install.python-poetry.org/ | python -
"${POETRY_HOME}/bin/poetry" config virtualenvs.in-project true --local
"${POETRY_HOME}/bin/poetry" config virtualenvs.create true --local
"${POETRY_HOME}/bin/poetry" install --no-root $poetry_verbosity --ansi

- name: Configure Ayon Site
run: >
curl --header "x-ayon-site-id: oaio-tests"
--header "x-ayon-platform: linux"
--header "x-ayon-hostname: phobos"
--header "x-api-key: ${{ secrets.AYON_API_KEY }}"
--header "x-as-user: service"
--header "x-ayon-version: 1.0.0-rc.2+DEVELOP" http://127.0.0.1:5000/api/info

- name: Run Ayon tests
run: |
cd ${{ github.workspace }}/ynput/ayon-openassetio-manager-plugin
.poetry/bin/poetry run pytest -v
env:
AYON_SERVER_URL: https://openassetio.ayon.dev
AYON_API_KEY: ${{ secrets.AYON_API_KEY }}
OPENASSETIO_PLUGIN_PATH: ${{ github.workspace }}/ynput/ayon-openassetio-manager-plugin/AyonOpenAssetIOManager
OPENASSETIO_DEFAULT_CONFIG: ${{ github.workspace }}/ynput/ayon-openassetio-manager-plugin/pyproject.toml