From d0c2232df2ff4c4f2aeb52215e38b55b7eecf0c9 Mon Sep 17 00:00:00 2001
From: "Saralegui Vallejo, Unai" <unai.saralegui@tecnalia.com>
Date: Tue, 11 May 2021 12:12:06 +0200
Subject: [PATCH] add pylint job for code checking

---
 python-packages/base.yml       | 19 +++++++++++++++++++
 python-packages/pylint.yml     | 10 ++++++++++
 python-packages/virtualenv.yml | 21 ++++++---------------
 3 files changed, 35 insertions(+), 15 deletions(-)
 create mode 100644 python-packages/base.yml
 create mode 100644 python-packages/pylint.yml

diff --git a/python-packages/base.yml b/python-packages/base.yml
new file mode 100644
index 0000000..81ec4cf
--- /dev/null
+++ b/python-packages/base.yml
@@ -0,0 +1,19 @@
+variables:
+  PIP_CACHE_DIR: "$CI_PROJECT_DIR/.cache/pip"
+  VIRTUALENV_NAME: "venv"
+
+cache:
+  paths:
+    - .cache/pip
+    - $VIRTUALENV_NAME/
+
+base:
+  stage: base
+  image: $ACR_URL/python:3.8
+  tags:
+    - docker
+  script:
+    - pip install virtualenv  # install virtualenv to create a virtual environment to install required packages
+    - virtualenv $VIRTUALENV_NAME  # create a virtualenvironment
+    - source $VIRTUALENV_NAME/bin/activate  # activate the virtualenvironment
+    - python -V  # print python version for debugging
\ No newline at end of file
diff --git a/python-packages/pylint.yml b/python-packages/pylint.yml
new file mode 100644
index 0000000..2942bdb
--- /dev/null
+++ b/python-packages/pylint.yml
@@ -0,0 +1,10 @@
+#defines the job in Static Analysis
+pylint:
+  stage: code_analysis
+  image: $ACR_URL/python:3.8
+  tags:
+    - docker
+  script:
+    - source $VIRTUALENV_NAME/bin/activate
+    - pip install pylint
+    - pylint -d C0301 $MODULE_FOLDER
diff --git a/python-packages/virtualenv.yml b/python-packages/virtualenv.yml
index 872be8e..c91691e 100644
--- a/python-packages/virtualenv.yml
+++ b/python-packages/virtualenv.yml
@@ -1,21 +1,12 @@
-variables:
-  PIP_CACHE_DIR: "$CI_PROJECT_DIR/.cache/pip"
-  VIRTUALENV_NAME: "venv"
-
-cache:
-  paths:
-    - .cache/pip
-    - $VIRTUALENV_NAME/
-
 virtualenv:
-  stage: virtualenv
+  stage: dependencies
   image: $ACR_URL/python:3.8
   tags:
     - docker
-
+  only:
+    refs:
+    # run only when new tag is published or changes pushed to master
+    - tags
+    - master
   script:
-    - pip install virtualenv  # install virtualenv to create a virtual environment to install required packages
-    - virtualenv $VIRTUALENV_NAME  # create a virtualenvironment
-    - source $VIRTUALENV_NAME/bin/activate  # activate the virtualenvironment
-    - python -V  # print python version for debugging
     - pip install -r requirements.txt  --extra-index-url $ACR_PYPI_INDEX_URL # install required packages look also in artifactory
-- 
GitLab