weekly_checks #221
This file contains hidden or 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
| # Weekly metadata check | |
| name: weekly_checks | |
| on: | |
| schedule: | |
| - cron: 0 0 * * 0 | |
| workflow_dispatch: | |
| env: | |
| PYCURL_SSL_LIBRARY: openssl | |
| ROBOTTELO_JIRA__API_KEY: ${{ secrets.JIRA_KEY }} | |
| ROBOTTELO_JIRA__EMAIL: ${{ secrets.JIRA_EMAIL }} | |
| jobs: | |
| customerscenario_tags: | |
| name: Add customerscenario tags where due | |
| runs-on: ubuntu-latest | |
| strategy: | |
| matrix: | |
| python-version: [3.14] | |
| env: | |
| UV_CACHE_DIR: /tmp/.uv-cache | |
| UV_SYSTEM_PYTHON: 1 | |
| steps: | |
| - name: Checkout Robottelo | |
| uses: actions/checkout@v7 | |
| - name: Set Up Python-${{ matrix.python-version }} | |
| uses: actions/setup-python@v6 | |
| with: | |
| python-version: ${{ matrix.python-version }} | |
| - name: Set up uv | |
| run: curl -LsSf https://astral.sh/uv/install.sh | sh | |
| - name: Restore uv cache | |
| uses: actions/cache@v6 | |
| with: | |
| path: /tmp/.uv-cache | |
| key: uv-${{ runner.os }}-${{ hashFiles('uv.lock') }} | |
| restore-keys: | | |
| uv-${{ runner.os }}-${{ hashFiles('uv.lock') }} | |
| uv-${{ runner.os }} | |
| - name: Install Dependencies | |
| run: | | |
| sudo apt update | |
| sudo apt-get install -y libgnutls28-dev libcurl4-openssl-dev libssl-dev | |
| # link vs compile time ssl implementations can break the environment when installing requirements | |
| # Uninstall pycurl - its likely not installed, but in case the ubuntu-latest packages change | |
| # Then compile and install it with PYCURL_SSL_LIBRARY set to openssl | |
| uv pip uninstall pycurl | |
| uv pip install --compile --no-cache-dir pycurl | |
| uv pip install -r requirements.txt -r requirements-optional.txt | |
| for conffile in conf/*.yaml.template; do mv -- "$conffile" "${conffile%.yaml.template}.yaml"; done | |
| cp .env.example .env | |
| - name: Minimize uv cache | |
| run: uv cache prune --ci | |
| - name: Repopulate jira status cache | |
| run: | | |
| python scripts/populate_jira_cache.py --fresh tests | |
| - name: Save Jira Status Cache | |
| if: always() | |
| uses: actions/cache/save@v6 | |
| with: | |
| # If the path is changed in the validator or jira.yaml.template, it should be changed here too | |
| path: jira_status_cache.json | |
| key: jira-status-cache-global-${{ github.run_id }} | |
| - name: Check for missing CustomerScenario tags and create a Jira issue if any are found | |
| run: | | |
| python scripts/customer_scenarios.py --jira --create-jira |