in infrastructure-provisioning/terraform/gcp/endpoint/provisioning.py [0:0]
def pull_docker_images():
try:
ensure_file = ('/home/{}/.ensure_dir/docker_images_pulled'
.format(args.os_user))
if not exists(conn, ensure_file):
conn.sudo('docker login -u {} -p {} {}:{} 2>&1 | tee /tmp/tee.tmp; if grep -w -i -E "ERROR" /tmp/tee.tmp; then echo -e "==============\nFailed docker login.\n=============="; fi'
.format(args.repository_user,
args.repository_pass,
args.repository_address,
args.repository_port))
conn.sudo('docker pull {}:{}/docker.datalab-base-{}'
.format(args.repository_address, args.repository_port, args.cloud_provider))
conn.sudo('docker pull {}:{}/docker.datalab-edge-{}'
.format(args.repository_address, args.repository_port, args.cloud_provider))
conn.sudo('docker pull {}:{}/docker.datalab-project-{}'
.format(args.repository_address, args.repository_port, args.cloud_provider))
conn.sudo('docker pull {}:{}/docker.datalab-jupyter-{}'
.format(args.repository_address, args.repository_port, args.cloud_provider))
conn.sudo('docker pull {}:{}/docker.datalab-jupyter-gpu-{}'
.format(args.repository_address, args.repository_port, args.cloud_provider))
conn.sudo('docker pull {}:{}/docker.datalab-rstudio-{}'
.format(args.repository_address, args.repository_port, args.cloud_provider))
conn.sudo('docker pull {}:{}/docker.datalab-zeppelin-{}'
.format(args.repository_address, args.repository_port, args.cloud_provider))
conn.sudo('docker pull {}:{}/docker.datalab-tensor-{}'
.format(args.repository_address, args.repository_port, args.cloud_provider))
conn.sudo('docker pull {}:{}/docker.datalab-tensor-rstudio-{}'
.format(args.repository_address, args.repository_port, args.cloud_provider))
conn.sudo('docker pull {}:{}/docker.datalab-tensor-jupyterlab-{}'
.format(args.repository_address, args.repository_port, args.cloud_provider))
conn.sudo('docker pull {}:{}/docker.datalab-deeplearning-{}'
.format(args.repository_address, args.repository_port, args.cloud_provider))
conn.sudo('docker pull {}:{}/docker.datalab-dataengine-service-{}'
.format(args.repository_address, args.repository_port, args.cloud_provider))
conn.sudo('docker pull {}:{}/docker.datalab-dataengine-{}'
.format(args.repository_address, args.repository_port, args.cloud_provider))
conn.sudo('docker tag {}:{}/docker.datalab-base-{} docker.datalab-base'
.format(args.repository_address, args.repository_port, args.cloud_provider))
conn.sudo('docker tag {}:{}/docker.datalab-edge-{} docker.datalab-edge'
.format(args.repository_address, args.repository_port, args.cloud_provider))
conn.sudo('docker tag {}:{}/docker.datalab-project-{} docker.datalab-project'
.format(args.repository_address, args.repository_port, args.cloud_provider))
conn.sudo('docker tag {}:{}/docker.datalab-jupyter-{} docker.datalab-jupyter'
.format(args.repository_address, args.repository_port, args.cloud_provider))
conn.sudo('docker tag {}:{}/docker.datalab-rstudio-{} docker.datalab-rstudio'
.format(args.repository_address, args.repository_port, args.cloud_provider))
conn.sudo('docker tag {}:{}/docker.datalab-zeppelin-{} '
'docker.datalab-zeppelin'
.format(args.repository_address, args.repository_port, args.cloud_provider))
conn.sudo('docker tag {}:{}/docker.datalab-tensor-{} docker.datalab-tensor'
.format(args.repository_address, args.repository_port, args.cloud_provider))
conn.sudo('docker tag {}:{}/docker.datalab-tensor-rstudio-{} '
'docker.datalab-tensor-rstudio'
.format(args.repository_address, args.repository_port, args.cloud_provider))
conn.sudo('docker tag {}:{}/docker.datalab-tensor-jupyterlab-{} '
'docker.datalab-tensor-jupyterlab'
.format(args.repository_address, args.repository_port, args.cloud_provider))
conn.sudo('docker tag {}:{}/docker.datalab-deeplearning-{} '
'docker.datalab-deeplearning'
.format(args.repository_address, args.repository_port, args.cloud_provider))
conn.sudo('docker tag {}:{}/docker.datalab-dataengine-service-{} '
'docker.datalab-dataengine-service'
.format(args.repository_address, args.repository_port, args.cloud_provider))
conn.sudo('docker tag {}:{}/docker.datalab-dataengine-{} '
'docker.datalab-dataengine'
.format(args.repository_address, args.repository_port, args.cloud_provider))
conn.sudo('docker rmi {}:{}/docker.datalab-base-{}'
.format(args.repository_address, args.repository_port, args.cloud_provider))
conn.sudo('docker rmi {}:{}/docker.datalab-edge-{}'
.format(args.repository_address, args.repository_port, args.cloud_provider))
conn.sudo('docker rmi {}:{}/docker.datalab-project-{}'
.format(args.repository_address, args.repository_port, args.cloud_provider))
conn.sudo('docker rmi {}:{}/docker.datalab-jupyter-{}'
.format(args.repository_address, args.repository_port, args.cloud_provider))
conn.sudo('docker rmi {}:{}/docker.datalab-rstudio-{}'
.format(args.repository_address, args.repository_port, args.cloud_provider))
conn.sudo('docker rmi {}:{}/docker.datalab-zeppelin-{}'
.format(args.repository_address, args.repository_port, args.cloud_provider))
conn.sudo('docker rmi {}:{}/docker.datalab-tensor-{}'
.format(args.repository_address, args.repository_port, args.cloud_provider))
conn.sudo('docker rmi {}:{}/docker.datalab-tensor-rstudio-{}'
.format(args.repository_address, args.repository_port, args.cloud_provider))
conn.sudo('docker rmi {}:{}/docker.datalab-tensor-jupyterlab-{}'
.format(args.repository_address, args.repository_port, args.cloud_provider))
conn.sudo('docker rmi {}:{}/docker.datalab-deeplearning-{}'
.format(args.repository_address, args.repository_port, args.cloud_provider))
conn.sudo('docker rmi {}:{}/docker.datalab-dataengine-service-{}'
.format(args.repository_address, args.repository_port, args.cloud_provider))
conn.sudo('docker rmi {}:{}/docker.datalab-dataengine-{}'
.format(args.repository_address, args.repository_port, args.cloud_provider))
conn.sudo('chown -R {0}:docker /home/{0}/.docker/'
.format(args.os_user))
conn.sudo('touch {}'.format(ensure_file))
except Exception as err:
logging.error('Failed to pull Docker images: ', str(err))
traceback.print_exc()
sys.exit(1)