[Docker] more base images (#10560)

* Revert "work around an issue with docker/dockerhub (#10547)"

This reverts commit 0ef139ac4d.

* Add more docker base image configurations.

 - Renamed configs

   - "centos" -> "centos-7"
   - "fedora" -> "fedora-24"
   - "opensuse" -> "opensuse-tumbleweed"
   - "scilinux" -> "scilinux-7"
   - "ubuntu" -> "ubuntu-1804"

 - Added configs

   - "centos-6"
   - "fedora-29"
   - "opensuse-leap"
   - "scilinux-6"
   - "ubuntu-1604"

With these changes, our docker hub image
collection will consist of the following:

 - "spack/archlinux"
   - "latest"
 - "spack/centos"
   - "latest", "centos7", "7"
   - "centos6", "6"
 - "spack/fedora"
   - "latest", "29"
   - "24"
 - "spack/opensuse"
   - "latest", "tumbleweed"
   - "leap"
 - "spack/scilinux"
   - "latest", "7"
   - "6"
 - "spack/ubuntu"
   - "latest", "bionic", "18.04"
   - "xenial", "16.04"
This commit is contained in:
Omar Padron 2019-02-16 10:20:25 -05:00 committed by Todd Gamblin
parent 32ba471816
commit 67415a1875
13 changed files with 90 additions and 21 deletions

View File

@ -60,7 +60,8 @@ RUN yum update -y
MASK PUSH MASK PUSH
MASK [[ $DISTRO =~ rhel.* ]] MASK [[ $DISTRO =~ rhel.* ]]
RUN yum install -y yum-conf-repos.noarch \ RUN ( yum install -y yum-conf-repos.noarch \
|| yum install -y yum-conf-epel.noarch yum-conf-elrepo.noarch ) \
&& yum update -y && yum update -y
MASK POP MASK POP
@ -110,7 +111,7 @@ RUN apt-get -yqq update \
openssh-server python python-pip tcl openssh-server python python-pip tcl
MASK PUSH MASK PUSH
MASK [[ $DISTRO_VERSION == bionic ]] MASK [[ $DISTRO_VERSION == 18.04 ]]
# [WORKAROUND] # [WORKAROUND]
# https://bugs.launchpad.net/ubuntu/+source/lua-posix/+bug/1752082 # https://bugs.launchpad.net/ubuntu/+source/lua-posix/+bug/1752082
RUN ln -s posix_c.so /usr/lib/x86_64-linux-gnu/lua/5.2/posix.so RUN ln -s posix_c.so /usr/lib/x86_64-linux-gnu/lua/5.2/posix.so

View File

@ -0,0 +1,16 @@
# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
unset DISTRO
unset DISTRO_VERSION
unset BASE_IMAGE
unset BASE_NAME
unset BASE_TAG
unset TAG
unset EXTRA_TAGS
export BASE_IMAGE=centos
export BASE_TAG="6"
export EXTRA_TAGS="centos6"

View File

@ -13,4 +13,4 @@ unset EXTRA_TAGS
export BASE_IMAGE=centos export BASE_IMAGE=centos
export BASE_TAG="7" export BASE_TAG="7"
export EXTRA_TAGS="latest" export EXTRA_TAGS="centos7 latest"

View File

@ -0,0 +1,15 @@
# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
unset DISTRO
unset DISTRO_VERSION
unset BASE_IMAGE
unset BASE_NAME
unset BASE_TAG
unset TAG
unset EXTRA_TAGS
export BASE_IMAGE=fedora
export BASE_TAG="24"

View File

@ -12,5 +12,5 @@ unset TAG
unset EXTRA_TAGS unset EXTRA_TAGS
export BASE_IMAGE=fedora export BASE_IMAGE=fedora
export BASE_TAG="24" export BASE_TAG="29"
export EXTRA_TAGS="latest" export EXTRA_TAGS="latest"

View File

@ -0,0 +1,15 @@
# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
unset DISTRO
unset DISTRO_VERSION
unset BASE_IMAGE
unset BASE_NAME
unset BASE_TAG
unset TAG
unset EXTRA_TAGS
export BASE_IMAGE=opensuse
export BASE_TAG="leap"

View File

@ -0,0 +1,16 @@
# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
unset DISTRO
unset BASE_IMAGE
unset BASE_NAME
unset BASE_TAG
unset TAG
unset EXTRA_TAGS
export BASE_IMAGE=sl
export BASE_TAG="6"
export BASE_NAME=scilinux
export DISTRO=rhel6

View File

@ -11,5 +11,5 @@ unset TAG
unset EXTRA_TAGS unset EXTRA_TAGS
export BASE_IMAGE=ubuntu export BASE_IMAGE=ubuntu
export BASE_TAG="bionic" export BASE_TAG="16.04"
export EXTRA_TAGS="latest" export EXTRA_TAGS="xenial"

View File

@ -0,0 +1,15 @@
# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
unset DISTRO
unset BASE_IMAGE
unset BASE_NAME
unset BASE_TAG
unset TAG
unset EXTRA_TAGS
export BASE_IMAGE=ubuntu
export BASE_TAG="18.04"
export EXTRA_TAGS="bionic latest"

View File

@ -7,7 +7,12 @@ if [ "$CURRENTLY_BUILDING_DOCKER_IMAGE" '!=' '1' ] ; then
uid="`id -u`" uid="`id -u`"
if [ "$uid" '=' '0' ] ; then if [ "$uid" '=' '0' ] ; then
for key_type in dsa ecdsa ed25519 rsa ; do key_types="dsa ecdsa rsa"
if [ "$DOCKERFILE_BASE" '!=' 'centos:6' ] ; then
key_types="${key_types} ed25519"
fi
for key_type in $key_types ; do
private_key_file="/etc/ssh/ssh_host_${key_type}_key" private_key_file="/etc/ssh/ssh_host_${key_type}_key"
public_key_file="$private_key_file.pub" public_key_file="$private_key_file.pub"

View File

@ -21,23 +21,9 @@ ensure_docker_login() {
return $__login_success return $__login_success
fi fi
if [ "$CI" '=' 'true' -a "$TRAVIS" '=' 'true' ] ; then
# NOTE: work around an issue with docker/docker hub
# https://github.com/docker/hub-feedback/issues/1222
# https://github.com/docker/cli/issues/1180
rm -f $HOME/.docker/config.json
fi
echo "$DOCKER_PASSWORD" | \ echo "$DOCKER_PASSWORD" | \
docker login -u "$DOCKER_USERNAME" --password-stdin docker login -u "$DOCKER_USERNAME" --password-stdin
if [ "$CI" '=' 'true' -a \
"$TRAVIS" '=' 'true' -a \
'!' -f "$HOME/.docker/config.json" ]
then
echo "Warning: config file $HOME/.docker/config.json not created" >&2
fi
if [ $? '=' '0' ] ; then if [ $? '=' '0' ] ; then
__login_success=0 __login_success=0
fi fi