Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use tox environment for the TICS workflow #129

Merged
merged 3 commits into from
Dec 6, 2024
Merged
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
17 changes: 10 additions & 7 deletions terraform-plans/templates/github/snap_tics.yaml.tftpl
Original file line number Diff line number Diff line change
Expand Up @@ -23,25 +23,28 @@ jobs:
run: |
sudo apt update
python -m pip install --upgrade pip
# tics action requires flake8 and pylint to be installed on the runner
# https://github.com/tiobe/tics-github-action/issues/410
python -m pip install flake8 pylint
# pin tox to the current major version to avoid
# workflows breaking all at once when a new major version is released.
python -m pip install 'tox<5'

# The snap is built already in the check workflow and available as an artifact,
# but we want this TICS workflow to be independent,
# so we can run the workflow periodically or on demand.
# The snap is built already in the check workflow and available as an artifact,
# but we want this TICS workflow to be independent,
# so we can run the workflow periodically or on demand.
- name: Build the snap
id: build
uses: canonical/action-build@v1

- name: Test with tox and produce coverage report
run: tox -e tics
# Create an environment in /tmp for the TICS action to use.
run: tox --workdir /tmp/tox -e tics
jneo8 marked this conversation as resolved.
Show resolved Hide resolved

- name: Run TICS analysis
uses: tiobe/tics-github-action@v3
env:
# TICS action requires all the project's dependencies to be present to run the analysis.
# Add the the tox bin directory to the PATH so that the TICS action can find the tests dependencies.
# Other paths are added to the PATH to make sure that the TICS action can find the required binaries.
samuelallan72 marked this conversation as resolved.
Show resolved Hide resolved
PATH: "/tmp/tox/tics/bin:/snap/bin:/home/runner/.local/bin:/home/runner/.cargo/bin:/bin:/usr/bin:/usr/local/bin:"
samuelallan72 marked this conversation as resolved.
Show resolved Hide resolved
with:
mode: qserver
project: ${project}
Expand Down