-
Notifications
You must be signed in to change notification settings - Fork 0
/
.gitlab-ci.yml
54 lines (50 loc) · 1.64 KB
/
.gitlab-ci.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
image: debian:12
stages: # List of stages for jobs, and their order of execution
- python_checks
- sonar_check
python-lint-job:
stage: python_checks
allow_failure: false
image: python:3.12-bookworm
script:
- pip install pipenv -U --quiet
- apt-get update
- apt-get install python3-wxgtk4.0 libgtk-3-dev -y
- pipenv install --dev
- pipenv run mypy
- pipenv run ruff-ci gitlab
python-test-job:
stage: python_checks
allow_failure: false
image: python:3.12-bookworm
script:
- pip install pipenv -U --quiet
- apt-get update
- apt-get install python3-wxgtk4.0 libgtk-3-dev ffmpeg -y
- pipenv install --dev
- pipenv run test
sonarqube-check:
image:
name: sonarsource/sonar-scanner-cli:latest
entrypoint: [""]
stage: sonar_check
needs:
- python-lint-job
- python-test-job
variables:
SONAR_USER_HOME: "${CI_PROJECT_DIR}/.sonar" # Defines the location of the analysis task cache
GIT_DEPTH: "0" # Tells git to fetch all the branches of the project, required by the analysis task
cache:
key: "${CI_JOB_NAME}"
paths:
- .sonar/cache
script:
# TODO:check if this is even debian / ubuntu or alpine and install ffprobe
- apt-get update
- apt-get install python3.11 --install-recommends python3-wxgtk4.0 libgtk-3-dev ffmpeg -y
- pipenv install --dev
- pipenv run coverage
- sonar-scanner
allow_failure: false
rules:
- if: $CI_COMMIT_BRANCH == 'main' && $CI_RUNNER_EXECUTABLE_ARCH == 'linux/amd64'