daily installation tests #1471
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
# https://raw.githubusercontent.com/actions/python-versions/main/versions-manifest.json | |
name: daily installation tests | |
on: | |
schedule: | |
- cron: "0 6 * * *" | |
push: | |
branches: | |
- master | |
paths: | |
- ".github/workflows/pip.yaml" | |
pull_request: | |
branches: | |
- master | |
paths: | |
- ".github/workflows/pip.yaml" | |
jobs: | |
install_and_check: | |
runs-on: ${{ matrix.os }} | |
timeout-minutes: 30 | |
strategy: | |
fail-fast: false | |
matrix: | |
os: ["ubuntu-20.04"] # seems like ubuntu-latest can be unstable, 20.04 has most support | |
python-version: [3.8.1, 3.9.13, 3.10.11] | |
pip-version: [22.1.2, 23.0.1, 24.2] | |
# test the latest template on macos and windows, and other pip versions and pythons on ubuntu for speed | |
# adding macos and windows to the matrix adds a bunch of running and delay because of mac and windows | |
# runners being slower to allocate | |
include: | |
- os: macos-13 | |
python-version: "3.10.11" | |
pip-version: "24.2" | |
- os: windows-latest | |
python-version: "3.10.11" # Python 3.10.14 has windows runner issues | |
pip-version: "24.2" | |
steps: | |
- name: Set up Python ${{ matrix.python-version }} | |
uses: actions/setup-python@v5 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Set pip version | |
run: python -m pip install --force-reinstall pip==${{matrix.pip-version}} wheel | |
- name: install rpafw | |
run: | | |
python -m pip install rpaframework robotframework-browser rpaframework-aws rpaframework-google rpaframework-assistant rpaframework-hubspot rpaframework-openai rpaframework-pdf rpaframework-recognition rpaframework-windows | |
- name: test install is correct | |
run: | | |
python -m pip check | |
python -c "import RPA" | |
# TODO: run whole test suite here | |
- name: create pip freeze file | |
run: | | |
# show freeze file in CI log | |
python -m pip freeze | |
python -m pip freeze > requirements.txt | |
- name: check freeze file | |
run: | | |
python -m pip install pip-audit==2.7.3 | |
python -m pip_audit --no-deps -r requirements.txt | |
# Only run scans for latest template version from https://github.com/robocorp/template-standard/blob/master/conda.yaml | |
if: ${{ matrix.python-version == '3.10.11' && matrix.pip-version == '24.2' }} | |
- uses: actions/upload-artifact@v3 # v4 has issue with artifact already existing | |
if: ${{ success() || failure() }} | |
with: | |
name: pip_freeze_${{ matrix.python-version }}_${{ matrix.pip-version }}.txt | |
path: requirements.txt |