You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@dlab.apache.org by om...@apache.org on 2019/03/29 15:26:15 UTC

[incubator-dlab] branch EPMCDLAB-1186 updated: added additional repo

This is an automated email from the ASF dual-hosted git repository.

omartushevskyi pushed a commit to branch EPMCDLAB-1186
in repository https://gitbox.apache.org/repos/asf/incubator-dlab.git


The following commit(s) were added to refs/heads/EPMCDLAB-1186 by this push:
     new 616281c  added additional repo
616281c is described below

commit 616281c2522c7d8d5f967e11366f4711c3830a26
Author: Oleh Martushevskyi <Ol...@epam.com>
AuthorDate: Fri Mar 29 17:26:03 2019 +0200

    added additional repo
---
 infrastructure-provisioning/scripts/deploy_dlab.py |  2 ++
 .../scripts/deploy_repository/deploy_repository.py |  1 +
 .../templates/addCustomRepository.groovy           | 34 +++++++++++++++++++++-
 .../src/base/scripts/install_prerequisites.py      |  2 +-
 .../src/general/conf/dlab.ini                      |  2 ++
 .../src/general/files/os/debian/sources.list       |  2 +-
 .../src/general/lib/os/debian/common_lib.py        |  2 ++
 .../src/general/lib/os/debian/notebook_lib.py      |  3 +-
 8 files changed, 44 insertions(+), 4 deletions(-)

diff --git a/infrastructure-provisioning/scripts/deploy_dlab.py b/infrastructure-provisioning/scripts/deploy_dlab.py
index be0a686..fb15730 100644
--- a/infrastructure-provisioning/scripts/deploy_dlab.py
+++ b/infrastructure-provisioning/scripts/deploy_dlab.py
@@ -140,6 +140,8 @@ parser.add_argument('--local_repository_apt_ubuntu_security_repo', type=str, def
                     help='Repository name for APT security')
 parser.add_argument('--local_repository_apt_ubuntu_repo', type=str, default='',
                     help='Repository name for APT')
+parser.add_argument('--local_repository_apt_ubuntu_canonical_repo', type=str, default='',
+                    help='Repository name for APT Canonical')
 parser.add_argument('--local_repository_docker_internal_repo', type=str, default='',
                     help='Internal repository name for Docker')
 parser.add_argument('--local_repository_docker_repo', type=str, default='',
diff --git a/infrastructure-provisioning/scripts/deploy_repository/deploy_repository.py b/infrastructure-provisioning/scripts/deploy_repository/deploy_repository.py
index c1497a7..c8d40bb 100644
--- a/infrastructure-provisioning/scripts/deploy_repository/deploy_repository.py
+++ b/infrastructure-provisioning/scripts/deploy_repository/deploy_repository.py
@@ -1717,6 +1717,7 @@ if __name__ == "__main__":
             print("Ubuntu repository URL: https://{0}/repository/ubuntu".format(nexus_host))
             print("Ubuntu-security repository URL: https://{0}/repository/ubuntu-security".format(nexus_host))
             print("Ubuntu-bintray repository URL: https://{0}/repository/ubuntu-bintray".format(nexus_host))
+            print("Ubuntu-canonical repository URL: https://{0}/repository/ubuntu-canonical".format(nexus_host))
             print("Rrutter repository URL: https://{0}/repository/rrutter".format(nexus_host))
             print("R repository URL: https://{0}/repository/r".format(nexus_host))
             print("Squid proxy: {0}:3128".format(nexus_host))
diff --git a/infrastructure-provisioning/scripts/deploy_repository/templates/addCustomRepository.groovy b/infrastructure-provisioning/scripts/deploy_repository/templates/addCustomRepository.groovy
index 769d842..6325a65 100644
--- a/infrastructure-provisioning/scripts/deploy_repository/templates/addCustomRepository.groovy
+++ b/infrastructure-provisioning/scripts/deploy_repository/templates/addCustomRepository.groovy
@@ -143,6 +143,37 @@ RrutterDebianProxyConfiguration = new Configuration(
                 ] as Map,
         ] as Map
 )
+CanonicalDebianProxyConfiguration = new Configuration(
+        repositoryName: "ubuntu-canonical",
+        recipeName: "apt-proxy",
+        online: true,
+        attributes: [
+                storage: [
+                        blobStoreName              : 'packages_store',
+                        writePolicy                : WritePolicy.ALLOW,
+                        strictContentTypeValidation: true
+                ] as Map,
+                apt: [
+                        distribution : 'xenial',
+                        flat : false
+                ] as Map,
+                httpclient   : [
+                        connection: [
+                                blocked  : false,
+                                autoBlock: true
+                        ] as Map
+                ] as Map,
+                proxy: [
+                        remoteUrl: 'http://archive.canonical.com/ubuntu',
+                        contentMaxAge: 0,
+                        metaDataMaxAge: 0
+                ] as Map,
+                negativeCache: [
+                        enabled   : true,
+                        timeToLive: 1440
+                ] as Map,
+        ] as Map
+)
 RProxyConfiguration = new Configuration(
         repositoryName: "r",
         recipeName: "r-proxy",
@@ -174,4 +205,5 @@ repository.createRepository(RProxyConfiguration)
 repository.createRepository(ubuntuProxyConfiguration)
 repository.createRepository(securityProxyConfiguration)
 repository.createRepository(BintrayDebianProxyConfiguration)
-repository.createRepository(RrutterDebianProxyConfiguration)
\ No newline at end of file
+repository.createRepository(RrutterDebianProxyConfiguration)
+repository.createRepository(CanonicalDebianProxyConfiguration)
diff --git a/infrastructure-provisioning/src/base/scripts/install_prerequisites.py b/infrastructure-provisioning/src/base/scripts/install_prerequisites.py
index f83596a..a14e6f3 100644
--- a/infrastructure-provisioning/src/base/scripts/install_prerequisites.py
+++ b/infrastructure-provisioning/src/base/scripts/install_prerequisites.py
@@ -34,7 +34,7 @@ import os
 parser = argparse.ArgumentParser()
 parser.add_argument('--hostname', type=str, default='')
 parser.add_argument('--keyfile', type=str, default='')
-parser.add_argument('--pip_packages', type=str, default='boto3 argparse fabric==1.14.0 awscli google-api-python-client google-auth-httplib2 google-cloud-storage pycrypto azure==2.0.0')
+parser.add_argument('--pip_packages', type=str, default='boto3 argparse fabric==1.14.0 awscli google-api-python-client google-auth-httplib2 google-cloud-storage pycrypto keyring==18.0.1 azure==2.0.0')
 parser.add_argument('--additional_config', type=str, default='{"empty":"string"}')
 parser.add_argument('--user', type=str, default='')
 parser.add_argument('--region', type=str, default='')
diff --git a/infrastructure-provisioning/src/general/conf/dlab.ini b/infrastructure-provisioning/src/general/conf/dlab.ini
index 8a3ce31..8ed137f 100644
--- a/infrastructure-provisioning/src/general/conf/dlab.ini
+++ b/infrastructure-provisioning/src/general/conf/dlab.ini
@@ -352,6 +352,8 @@ nginx_version = 1.15.1
 # apt_bintray_repo =
 ### Repository name for APT security
 # apt_ubuntu_security_repo =
+### Repository name for APT canonical
+# apt_ubuntu_canonical_repo =
 ### Repository name for APT
 # apt_ubuntu_repo =
 ### Internal repository name for Docker
diff --git a/infrastructure-provisioning/src/general/files/os/debian/sources.list b/infrastructure-provisioning/src/general/files/os/debian/sources.list
index dc79df8..f3a93a2 100644
--- a/infrastructure-provisioning/src/general/files/os/debian/sources.list
+++ b/infrastructure-provisioning/src/general/files/os/debian/sources.list
@@ -67,4 +67,4 @@ deb-src REPOSITORY_SECURITY_UBUNTU xenial-security multiverse
 ## This software is not part of Ubuntu, but is offered by Canonical and the
 ## respective vendors as a service to Ubuntu users.
 # deb http://archive.canonical.com/ubuntu xenial partner
-# deb-src http://archive.canonical.com/ubuntu xenial partner
+deb-src REPOSITORY_CANONICAL_UBUNTU xenial partner
diff --git a/infrastructure-provisioning/src/general/lib/os/debian/common_lib.py b/infrastructure-provisioning/src/general/lib/os/debian/common_lib.py
index 85a8d5e..f4d30ac 100644
--- a/infrastructure-provisioning/src/general/lib/os/debian/common_lib.py
+++ b/infrastructure-provisioning/src/general/lib/os/debian/common_lib.py
@@ -73,6 +73,8 @@ def update_apt_repository_configuration(repository_host=''):
                  os.environ['local_repository_apt_ubuntu_repo']))
             sudo('sed -i "s|REPOSITORY_SECURITY_UBUNTU|{0}/|g" /etc/apt/sources.list'.format(
                 os.environ['local_repository_apt_ubuntu_security_repo']))
+            sudo('sed -i "s|REPOSITORY_CANONICAL_UBUNTU|{0}/|g" /etc/apt/sources.list'.format(
+                os.environ['local_repository_apt_ubuntu_canonical_repo']))
         else:
             sudo('sed -i "s|REPOSITORY_UBUNTU|{}|g" /etc/apt/sources.list'.format(repository_host))
             sudo('sed -i "s|REPOSITORY_SECURITY_UBUNTU|{}|g" /etc/apt/sources.list'.format(repository_host))
diff --git a/infrastructure-provisioning/src/general/lib/os/debian/notebook_lib.py b/infrastructure-provisioning/src/general/lib/os/debian/notebook_lib.py
index 9857642..30ac5f3 100644
--- a/infrastructure-provisioning/src/general/lib/os/debian/notebook_lib.py
+++ b/infrastructure-provisioning/src/general/lib/os/debian/notebook_lib.py
@@ -184,7 +184,8 @@ def install_rstudio(os_user, local_spark_path, rstudio_pass, rstudio_version):
 def ensure_matplot(os_user):
     if not exists('/home/' + os_user + '/.ensure_dir/matplot_ensured'):
         try:
-            sudo("sudo sed -i~orig -e 's/# deb-src/deb-src/' /etc/apt/sources.list")
+            if os.environ['local_repository_enabled'] == 'False':
+                sudo("sudo sed -i~orig -e 's/# deb-src/deb-src/' /etc/apt/sources.list")
             sudo('sudo apt-get update')
             sudo('apt-get build-dep -y python-matplotlib')
             sudo('pip2 install matplotlib==2.0.2 --no-cache-dir')


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@dlab.apache.org
For additional commands, e-mail: commits-help@dlab.apache.org