diff --git a/.gitea/workflows/ci.yml b/.gitea/workflows/ci.yml index 76c09cb..590c97b 100644 --- a/.gitea/workflows/ci.yml +++ b/.gitea/workflows/ci.yml @@ -1,4 +1,4 @@ -name: CI for debye_bec +name: CI for Debye_bec on: push: pull_request: @@ -39,59 +39,36 @@ jobs: env: QTWEBENGINE_DISABLE_SANDBOX: 1 QT_QPA_PLATFORM: "offscreen" - steps: - - name: Setup Python - uses: actions/setup-python@v5 - with: - python-version: "${{ inputs.PYTHON_VERSION || '3.11' }}" - - - name: Checkout BEC Core + - name: Checkout shared action repository uses: actions/checkout@v4 with: - repository: bec/bec - ref: "${{ inputs.BEC_CORE_BRANCH || 'main' }}" - path: ./bec + repository: bec/bec_shared_actions + ref: main + path: bec_shared_actions - - name: Checkout Ophyd Devices - uses: actions/checkout@v4 + - name: Checkout Plugin and BEC Repositories + uses: bec/bec_shared_actions/checkout_repositories@main + # uses: ./bec_shared_actions with: - repository: bec/ophyd_devices - ref: "${{ inputs.OPHYD_DEVICES_BRANCH || 'main' }}" - path: ./ophyd_devices - - - name: Checkout BEC Widgets - uses: actions/checkout@v4 + BEC_WIDGETS_BRANCH: "${{ github.event.inputs.BEC_WIDGETS_BRANCH || 'main' }}" + BEC_CORE_BRANCH: "${{ github.event.inputs.BEC_CORE_BRANCH || 'main' }}" + OPHYD_DEVICES_BRANCH: "${{ github.event.inputs.OPHYD_DEVICES_BRANCH || 'main' }}" + BEC_PLUGIN_REPO_BRANCH: "${{ github.event_name == 'workflow_dispatch' && (github.event.inputs.BEC_PLUGIN_REPO_BRANCH || 'main') || github.head_ref || github.ref_name }}" + PLUGIN_REPO_NAME: "${{ github.event.repository.name }}" + + - name: Install external APT packages + uses: bec/bec_shared_actions/install_apt_packages@main with: - repository: bec/bec_widgets - ref: "${{ inputs.BEC_WIDGETS_BRANCH || 'main' }}" - path: ./bec_widgets - - - name: Checkout BEC Plugin Repository - uses: actions/checkout@v4 - with: - repository: bec/debye_bec - ref: "${{ inputs.BEC_PLUGIN_REPO_BRANCH || github.head_ref || github.sha }}" - path: ./debye_bec - - - name: Install dependencies - shell: bash - run: | - sudo apt-get update - sudo apt-get install -y libgl1 libegl1 x11-utils libxkbcommon-x11-0 libdbus-1-3 xvfb - sudo apt-get -y install libnss3 libxdamage1 libasound2t64 libatomic1 libxcursor1 + APT_PACKAGES: "libgl1 libegl1 x11-utils libxkbcommon-x11-0 libdbus-1-3 xvfb libnss3 libxdamage1 libasound2t64 libatomic1 libxcursor1" - name: Install Python dependencies - shell: bash - run: | - pip install uv - uv pip install --system -e ./ophyd_devices - uv pip install --system -e ./bec/bec_lib[dev] - uv pip install --system -e ./bec/bec_ipython_client - uv pip install --system -e ./bec/bec_server[dev] - uv pip install --system -e ./bec_widgets[dev,pyside6] - uv pip install --system -e ./debye_bec + uses: bec/bec_shared_actions/install_python_env@main + with: + PYTHON_VERSION: "${{ github.event.inputs.PYTHON_VERSION || '3.11' }}" + PLUGIN_REPO_NAME: "${{ github.event.repository.name }}" - - name: Run Pytest with Coverage - id: coverage - run: pytest --random-order --cov=./debye_bec --cov-config=./debye_bec/pyproject.toml --cov-branch --cov-report=xml --no-cov-on-fail ./debye_bec/tests/ || test $? -eq 5 + - name: Run pytest for Plugin + uses: bec/bec_shared_actions/run_pytest_for_plugin@main + with: + PLUGIN_REPO_NAME: "${{ github.event.repository.name }}" \ No newline at end of file