diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 06f1aa7980da28a3e93fba69eb93e704d4f1c5cf..5cd270169ff595aa442b2fabed634f14482cea41 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,4 +1,3 @@
-
 variables:
   PYTHON_VERSION: "3.6.13"
 
@@ -7,21 +6,24 @@ stages:
   - test
   - package
 
+workflow:
+  rules:
+    - if: $CI_PIPELINE_SOURCE == "schedule"
+    - if: $CI_PIPELINE_SOURCE == "web"
+    - if: $CI_COMMIT_TAG
+    
 .build:
   stage: build
   script:
-    - yum -y install zlib-devel bzip2-devel openssl-devel readline-devel ncurses-devel sqlite-devel gdbm-devel db4-devel expat-devel libpcap-devel xz-devel pcre-devel libffi-devel tk-devel
-    - curl -s https://www.python.org/ftp/python/${PYTHON_VERSION}/Python-${PYTHON_VERSION}.tar.xz | tar -xJf -
-    - cd Python-${PYTHON_VERSION}
-    - ./configure --prefix=${PYTHON_ROOT}
-    - make -j 4
-    - make install        
-    - ln -s python3 ${PYTHON_ROOT}/bin/python
-    - rm -rf Python-${PYTHON_VERSION}
+    - conan config init
+    - conan profile update settings.compiler.libcxx=libstdc++11 default
+    - conan create . python/${PYTHON_VERSION}@soleil/stable --build -c tools.system.package_manager:mode=install -c tools.system.package_manager:tool=yum -c tools.system.package_manager:sudo=True
+    - conan install python/${PYTHON_VERSION}@soleil/stable --install-folder ${PYTHON_ROOT}
     # Upgrade pip
+    - unset PYTHONPATH
     - ${PYTHON_ROOT}/bin/pip3 install -q --no-cache-dir --upgrade pip
     # Fix python shebang to make it independent of install path
-    - grep -I -r -l  "^#\!${PYTHON_ROOT}/bin/python.*$" ${PYTHON_ROOT} | xargs sed -i '1c\#\!/usr/bin/env python'
+    - grep -I -r -l  "^#\!.*/bin/python.*$" ${PYTHON_ROOT}  | xargs sed -i '1c\#\!/usr/bin/env python'
     # Clean pycache
     - find ${PYTHON_ROOT} -iname __pycache__ -print0 | xargs -0 rm -rf
   artifacts:
@@ -41,98 +43,50 @@ stages:
     - zip -r --symlinks ../${NAME}.zip *
     - 'curl --header "JOB-TOKEN: $CI_JOB_TOKEN" --upload-file ../${NAME}.zip "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/python/${PYTHON_VERSION}/"'
 
-linux-el6-x86_64:
-  extends: [".build"]
-  image: gitlab-registry.synchrotron-soleil.fr/software-control-system/containers/dev-docker-tools/dev-el6-gcc44
-  variables:
-    NAME: "python-${PYTHON_VERSION}-linux-el6-x86_64"
-    PYTHON_ROOT: "${CI_PROJECT_DIR}/${NAME}"
-
-test-el6-x86_64:
-  extends: [".test"]
-  image: gitlab-registry.synchrotron-soleil.fr/software-control-system/containers/dev-docker-tools/dev-el6-gcc44
-  variables:
-    NAME: "python-${PYTHON_VERSION}-linux-el6-x86_64"
-  needs:
-    - linux-el6-x86_64
-
-package-el6-x86_64:
-  extends: [".package"]
-  image: gitlab-registry.synchrotron-soleil.fr/software-control-system/containers/dev-docker-tools/dev-el6-gcc44
-  variables:
-    NAME: "python-${PYTHON_VERSION}-linux-el6-x86_64"
-  needs:
-    - linux-el6-x86_64
-    - test-el6-x86_64
-
-linux-el6-i686:
-  extends: [".build"]
-  image: gitlab-registry.synchrotron-soleil.fr/software-control-system/containers/dev-docker-tools/dev-el6-gcc44-x86
-  variables:
-    NAME: "python-${PYTHON_VERSION}-${CI_JOB_NAME}"
-    PYTHON_ROOT: "${CI_PROJECT_DIR}/${NAME}"
-
-test-el6-i686:
-  extends: [".test"]
-  image: gitlab-registry.synchrotron-soleil.fr/software-control-system/containers/dev-docker-tools/dev-el6-gcc44-x86
-  variables:
-    NAME: "python-${PYTHON_VERSION}-linux-el6-i686"
-  needs:
-    - linux-el6-i686
-
-package-el6-i686:
-  extends: [".package"]
-  image: gitlab-registry.synchrotron-soleil.fr/software-control-system/containers/dev-docker-tools/dev-el6-gcc44-x86
-  variables:
-    NAME: "python-${PYTHON_VERSION}-linux-el6-i686"
-  needs:
-    - linux-el6-i686
-    - test-el6-i686
-
-linux-el7-x86_64:
+linux-x86_64:
   extends: [".build"]
-  image: gitlab-registry.synchrotron-soleil.fr/software-control-system/containers/dev-docker-tools/dev-el7-gcc48
+  image: gitlab-registry.synchrotron-soleil.fr/software-control-system/containers/conan-docker-tools/conan-el6-gcc91
   variables:
-    NAME: "python-${PYTHON_VERSION}-linux-el7-x86_64"
+    NAME: "python-${PYTHON_VERSION}-linux-x86_64"
     PYTHON_ROOT: "${CI_PROJECT_DIR}/${NAME}"
 
-test-el7-x86_64:
+test-x86_64:
   extends: [".test"]
-  image: gitlab-registry.synchrotron-soleil.fr/software-control-system/containers/dev-docker-tools/dev-el7-gcc48
+  image: gitlab-registry.synchrotron-soleil.fr/software-control-system/containers/conan-docker-tools/conan-el6-gcc91
   variables:
-    NAME: "python-${PYTHON_VERSION}-linux-el7-x86_64"
+    NAME: "python-${PYTHON_VERSION}-linux-x86_64"
   needs:
-    - linux-el7-x86_64
+    - linux-x86_64
 
-package-el7-x86_64:
+package-x86_64:
   extends: [".package"]
-  image: gitlab-registry.synchrotron-soleil.fr/software-control-system/containers/dev-docker-tools/dev-el7-gcc48
+  image: gitlab-registry.synchrotron-soleil.fr/software-control-system/containers/conan-docker-tools/conan-el6-gcc91
   variables:
-    NAME: "python-${PYTHON_VERSION}-linux-el7-x86_64"
+    NAME: "python-${PYTHON_VERSION}-linux-x86_64"
   needs:
-    - linux-el7-x86_64
-    - test-el7-x86_64
+    - linux-x86_64
+    - test-x86_64
 
-linux-el7-i686:
+linux-i686:
   extends: [".build"]
-  image: gitlab-registry.synchrotron-soleil.fr/software-control-system/containers/dev-docker-tools/dev-el7-gcc48-x86
+  image: gitlab-registry.synchrotron-soleil.fr/software-control-system/containers/conan-docker-tools/conan-el6-gcc91-x86
   variables:
-    NAME: "python-${PYTHON_VERSION}-${CI_JOB_NAME}"
+    NAME: "python-${PYTHON_VERSION}-linux-i686"
     PYTHON_ROOT: "${CI_PROJECT_DIR}/${NAME}"
 
-test-el7-i686:
+test-i686:
   extends: [".test"]
-  image: gitlab-registry.synchrotron-soleil.fr/software-control-system/containers/dev-docker-tools/dev-el7-gcc48-x86
+  image: gitlab-registry.synchrotron-soleil.fr/software-control-system/containers/conan-docker-tools/conan-el6-gcc91-x86
   variables:
-    NAME: "python-${PYTHON_VERSION}-linux-el7-i686"
+    NAME: "python-${PYTHON_VERSION}-linux-i686"
   needs:
-    - linux-el7-i686
+    - linux-i686
 
-package-el7-i686:
+package-i686:
   extends: [".package"]
-  image: gitlab-registry.synchrotron-soleil.fr/software-control-system/containers/dev-docker-tools/dev-el7-gcc48-x86
+  image: gitlab-registry.synchrotron-soleil.fr/software-control-system/containers/conan-docker-tools/conan-el6-gcc91-x86
   variables:
-    NAME: "python-${PYTHON_VERSION}-linux-el7-i686"
+    NAME: "python-${PYTHON_VERSION}-linux-i686"
   needs:
-    - linux-el7-i686
-    - test-el7-i686
+    - linux-i686
+    - test-i686
diff --git a/README.md b/README.md
index fabe1fe9a9b2ecd50f8ade21cfd21b2a3d617a26..b8d5509d6213ac791108a5f668a75eb0194f51e3 100644
--- a/README.md
+++ b/README.md
@@ -3,13 +3,9 @@
 Pipeline to build Python 3.6.13 on CentOS Docker image
 
 Allows to build Python 3.6.13 for:
-* CentOS 6.10 64 bits: [python-3.6.13-linux-el6-x86_64.zip](https://gitlab.synchrotron-soleil.fr/software-control-system/devtools/python3/-/jobs/artifacts/main/download?job=linux-el6-x86_64)
-* CentOS 6.10 32 bits: [python-3.6.13-linux-el6-i686.zip](https://gitlab.synchrotron-soleil.fr/software-control-system/devtools/python3/-/jobs/artifacts/main/download?job=linux-el6-i686)
-* CentOS 7.9 64 bits: [python-3.6.13-linux-el7-x86_64.zip](https://gitlab.synchrotron-soleil.fr/software-control-system/devtools/python3/-/jobs/artifacts/main/download?job=linux-el7-x86_64)
-* CentOS 7.9 32 bits: [python-3.6.13-linux-el7-i686.zip](https://gitlab.synchrotron-soleil.fr/software-control-system/devtools/python3/-/jobs/artifacts/main/download?job=linux-el7-i686)
+* CentOS 6.10 64 bits: [python-3.6.13-linux-x86_64.zip](https://gitlab.synchrotron-soleil.fr/software-control-system/devtools/python3/-/jobs/artifacts/3.6.13/download?job=linux-x86_64)
+* CentOS 6.10 32 bits: [python-3.6.13-linux-i686.zip](https://gitlab.synchrotron-soleil.fr/software-control-system/devtools/python3/-/jobs/artifacts/3.6.13/download?job=linux-i686)
 
 Build on Docker image:
 * gitlab-registry.synchrotron-soleil.fr/software-control-system/containers/dev-docker-tools/dev-el6-gcc44
 * gitlab-registry.synchrotron-soleil.fr/software-control-system/containers/dev-docker-tools/dev-el6-gcc44-x86
-* gitlab-registry.synchrotron-soleil.fr/software-control-system/containers/dev-docker-tools/dev-el7-gcc48
-* gitlab-registry.synchrotron-soleil.fr/software-control-system/containers/dev-docker-tools/dev-el7-gcc48-x86
diff --git a/conanfile.py b/conanfile.py
new file mode 100644
index 0000000000000000000000000000000000000000..b244940940c27be4baf8e31979303d044999bb15
--- /dev/null
+++ b/conanfile.py
@@ -0,0 +1,73 @@
+from conan import ConanFile
+from conan.tools.system import package_manager
+from conan.errors import ConanInvalidConfiguration
+from conans import AutoToolsBuildEnvironment, tools
+import os
+
+class PythonConan(ConanFile):
+    name = "python"
+    version = "3.6.13"
+
+    settings = "os", "compiler", "build_type", "arch"
+    
+    requires =  "openssl/1.1.1s", \
+                "zlib/1.2.13", \
+                "bzip2/1.0.8", \
+                "sqlite3/3.39.4", \
+                "libdb/5.3.28", \
+                "expat/2.5.0", \
+                "libpcap/1.10.1", \
+                "xz_utils/5.2.5", \
+                "pcre/8.45", \
+                "libffi/3.4.3", \
+                "libuuid/1.0.3",              
+
+    _autotools = None
+
+    def validate(self):
+        if self.settings.os not in ["Linux"]:
+            raise ConanInvalidConfiguration("This recipe supports only Linux")
+
+    # Install devel package when unable to build correctly from conan
+    def system_requirements(self):
+        yum = package_manager.Yum(self)
+        yum.install(["readline-devel", "ncurses-devel", "gdbm-devel", "tk-devel"])
+
+    def source(self):
+        self.run("curl -s -L -O https://www.python.org/ftp/python/%s/Python-%s.tgz" % (self.version, self.version))
+        self.run("tar -xzf Python-%s.tgz --strip 1" % self.version)
+
+    def _build_configure(self):
+        if self._autotools:
+            return self._autotools
+
+        self._autotools = AutoToolsBuildEnvironment(self)
+        
+        self._autotools.include_paths.append(os.path.join(self.deps_cpp_info["openssl"].rootpath, "include"))
+        self._autotools.library_paths.append(os.path.join(self.deps_cpp_info["openssl"].rootpath, "lib"))
+
+        args=[
+            "--enable-optimizations", 
+            "--with-ssl-default-suites=openssl", 
+            "--with-openssl=%s" % self.deps_cpp_info["openssl"].rootpath
+        ]
+
+        self._autotools.configure(args=args)
+        return self._autotools
+
+        
+    def build(self):
+        env_build = self._build_configure()
+        env_build.make()
+
+    def package(self):
+        env_build = self._build_configure()
+        env_build.install()
+        os.symlink('python3', os.path.join(self.package_folder, 'bin', 'python'))
+
+    def package_info(self):
+        self.cpp_info.libs = tools.collect_libs(self)
+        self.env_info.PATH.append(os.path.join(self.package_folder, "bin"))
+    
+    def deploy(self):
+        self.copy("*", symlinks=True)