summaryrefslogtreecommitdiff
path: root/share/spack/docker/build
diff options
context:
space:
mode:
Diffstat (limited to 'share/spack/docker/build')
-rw-r--r--share/spack/docker/build/arch.dockerfile59
-rw-r--r--share/spack/docker/build/centos.dockerfile57
-rw-r--r--share/spack/docker/build/common/handle-prompt.sh165
-rw-r--r--share/spack/docker/build/common/handle-ssh.sh41
-rw-r--r--share/spack/docker/build/common/modules.yaml6
-rw-r--r--share/spack/docker/build/fedora.dockerfile56
-rw-r--r--share/spack/docker/build/opensuse.dockerfile65
-rw-r--r--share/spack/docker/build/scilinux.dockerfile62
-rw-r--r--share/spack/docker/build/ubuntu.dockerfile51
9 files changed, 0 insertions, 562 deletions
diff --git a/share/spack/docker/build/arch.dockerfile b/share/spack/docker/build/arch.dockerfile
deleted file mode 100644
index 6aa9ac0118..0000000000
--- a/share/spack/docker/build/arch.dockerfile
+++ /dev/null
@@ -1,59 +0,0 @@
-FROM base/archlinux
-MAINTAINER Omar Padron <omar.padron@kitware.com>
-
-ENV SPACK_ROOT=/spack \
- FORCE_UNSAFE_CONFIGURE=1 \
- DISTRO=arch
-
-RUN pacman -Sy --noconfirm \
- base-devel \
- ca-certificates \
- curl \
- gcc \
- gcc-fortran \
- git \
- gnupg2 \
- iproute2 \
- make \
- openssh \
- python \
- sudo \
- tcl && \
- git clone --depth 1 git://github.com/spack/spack.git /spack && \
- echo 'nobody ALL=(ALL) NOPASSWD: ALL' > /etc/sudoers.d/nobody-sudo && \
- sudo -u nobody git clone --depth 1 \
- https://aur.archlinux.org/lua-posix.git /tmp/lua-posix && \
- sudo -u nobody git clone --depth 1 \
- https://aur.archlinux.org/lmod.git /tmp/lmod && \
- ( cd /tmp/lua-posix ; sudo -u nobody makepkg -si --asdeps --noconfirm ) && \
- ( cd /tmp/lmod ; sudo -u nobody makepkg -si --noconfirm ) && \
- rm -rf /tmp/lua-posix /tmp/lmod /spack/.git /etc/sudoers.d/nobody-sudo
-
-RUN ( cd /usr/share/lmod ; ln -s $( ls -d ./* | head -n 1 ) ./lmod )
-
-RUN echo "source /usr/share/lmod/lmod/init/bash" \
- > /etc/profile.d/spack.sh
-RUN echo "source /spack/share/spack/setup-env.sh" \
- >> /etc/profile.d/spack.sh
-RUN echo "source /spack/share/spack/spack-completion.bash" \
- >> /etc/profile.d/spack.sh
-
-COPY common/handle-ssh.sh /etc/profile.d/handle-ssh.sh
-COPY common/handle-prompt.sh /etc/profile.d/handle-prompt.sh.source
-
-RUN ( \
- echo "export DISTRO=$DISTRO" ; \
- echo "if [ x\$PROMPT '!=' 'x' -a x\$PROMPT '!=' 'x0' ]" ; \
- echo "then" ; \
- echo "source /etc/profile.d/handle-prompt.sh.source" ; \
- echo "fi" ; \
-) > /etc/profile.d/handle-prompt.sh
-
-RUN mkdir -p /root/.spack
-COPY common/modules.yaml /root/.spack/modules.yaml
-
-RUN rm -rf /root/*.*
-
-WORKDIR /root
-ENTRYPOINT ["bash"]
-CMD ["-l"]
diff --git a/share/spack/docker/build/centos.dockerfile b/share/spack/docker/build/centos.dockerfile
deleted file mode 100644
index 20c24b038f..0000000000
--- a/share/spack/docker/build/centos.dockerfile
+++ /dev/null
@@ -1,57 +0,0 @@
-FROM centos
-MAINTAINER Omar Padron <omar.padron@kitware.com>
-
-ENV SPACK_ROOT=/spack \
- FORCE_UNSAFE_CONFIGURE=1 \
- DISTRO=centos
-
-RUN yum update -y && \
- yum install -y epel-release && \
- yum update -y && \
- yum groupinstall -y "Development Tools" && \
- yum install -y \
- curl \
- findutils \
- gcc-c++ \
- gcc \
- gcc-gfortran \
- git \
- gnupg2 \
- hostname \
- iproute \
- Lmod \
- make \
- patch \
- openssh-server \
- python \
- tcl && \
- git clone --depth 1 git://github.com/spack/spack.git /spack && \
- rm -rf /spack/.git /var/cache/yum && yum clean all
-
-RUN echo "source /usr/share/lmod/lmod/init/bash" \
- > /etc/profile.d/spack.sh
-RUN echo "source /spack/share/spack/setup-env.sh" \
- >> /etc/profile.d/spack.sh
-RUN echo "source /spack/share/spack/spack-completion.bash" \
- >> /etc/profile.d/spack.sh
-COPY common/handle-ssh.sh /etc/profile.d/handle-ssh.sh
-COPY common/handle-prompt.sh /etc/profile.d/handle-prompt.sh.source
-
-RUN ( \
- echo "export DISTRO=$DISTRO" ; \
- echo "if [ x\$PROMPT '!=' 'x' -a x\$PROMPT '!=' 'x0' ]" ; \
- echo "then" ; \
- echo "source /etc/profile.d/handle-prompt.sh.source" ; \
- echo "fi" ; \
-) > /etc/profile.d/handle-prompt.sh
-
-RUN mkdir -p /root/.spack
-COPY common/modules.yaml /root/.spack/modules.yaml
-
-RUN rm -f /run/nologin
-
-RUN rm -rf /root/*.*
-
-WORKDIR /root
-ENTRYPOINT ["bash"]
-CMD ["-l"]
diff --git a/share/spack/docker/build/common/handle-prompt.sh b/share/spack/docker/build/common/handle-prompt.sh
deleted file mode 100644
index 5a4910e3fa..0000000000
--- a/share/spack/docker/build/common/handle-prompt.sh
+++ /dev/null
@@ -1,165 +0,0 @@
-# Copyright 2013-2018 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)
-
-__tmp="`mktemp -d`"
-
-__trylock() {
- local dir
- dir="$__tmp/$1.lock"
- mkdir "$dir" &>/dev/null
- return $?
-}
-
-__queue_init() {
- local r
- local w
-
- mkdir "$__tmp/$1.read.lock" ; r=$?
- mkdir "$__tmp/$1.write.lock" ; w=$?
-
- if [ "$r" '=' '0' -a "$w" '=' '0' ] ; then
- return 0
- else
- return 1
- fi
-}
-
-__queue_try_read() {
- __trylock "$1.read"
- return $?
-}
-
-__queue_try_write() {
- __trylock "$1.write"
- return $?
-}
-
-__queue_make_readable() {
- rm -r "$__tmp/$1.read.lock" &>/dev/null
- return $?
-}
-
-__queue_make_writable() {
- rm -r "$__tmp/$1.write.lock" &>/dev/null
- return $?
-}
-
-__read() {
- cat "$__tmp/$1" 2> /dev/null
- return $?
-}
-
-__write() {
- cat > "$__tmp/$1" 2> /dev/null
- return $?
-}
-
-__revparse_head() {
- head="`git -C /spack rev-parse $@ HEAD 2>/dev/null`"
- result="$?"
- if [ "$result" '!=' '0' ] ; then
- head="`git --git-dir=/spack/.git \\
- --work-tree=/spack rev-parse $@ HEAD 2>/dev/null`"
- result="$?"
- fi
-
- echo "$head"
- return $result
-}
-
-__git_head() {
- head="`__revparse_head --abbrev-ref`"
- if [ "$?" '=' '0' ] ; then
- if [ "$head" '=' 'HEAD' ] ; then
- head="`__revparse_head | cut -c1-8`..."
- fi
-
- echo "$head"
- fi
-}
-
-__update_prompt() {
- local prompt
- prompt=''
- linux_distro="$DISTRO"
- if [ -n "$linux_distro" ] ; then
- linux_distro='\[\e[1;34m\][\[\e[0;34m\]'"$linux_distro"'\[\e[1;34m\]]'
- if [ -n "$prompt" ] ; then
- prompt="$prompt "
- fi
- prompt="$prompt$linux_distro"
- fi
-
- git_head="`__git_head`"
-
- if [ -n "$git_head" ] ; then
- git_head='\[\e[1;32m\](\[\e[0;32m\]'"$git_head"'\[\e[1;32m\])'
- if [ -n "$prompt" ] ; then
- prompt="$prompt "
- fi
- prompt="$prompt$git_head"
- fi
-
- if [ -n "$prompt" ] ; then
- prompt="$prompt "
- fi
- prompt="$prompt"'\[\e[0;m\]\W: '
- echo "$prompt" | __write prompt
-}
-
-set -m
-(
- __queue_init query
- __queue_init prompt
-
- __update_prompt
- __queue_make_readable prompt
-
- __queue_make_writable query
-
- while sleep 0.010 ; do
- last_q_time=''
-
- while sleep 0.010 ; do
- q_time="`date +%s%N`"
- if __queue_try_read query ; then
- last_q_time="$q_time"
- __queue_make_writable query
- fi
-
- if [ -n "$last_q_time" -a \
- "$(( (q_time - last_q_time)/10000000 > 100 ))" '=' '1' ] ; then
- break
- fi
- done
-
- __update_prompt
- __queue_make_readable prompt
- done
-) &>/dev/null &
-set +m
-
-__update_prompt_main_first_call=1
-__update_prompt_main() {
- if [ "$__update_prompt_main_first_call" '=' '1' ] ; then
- while sleep 0.001 ; do
- if __queue_try_read prompt ; then
- PS1="`__read prompt`"
- break
- fi
- done
- __update_prompt_main_first_call=0
- else
- if __queue_try_read prompt ; then
- PS1="`__read prompt`"
- fi
- fi
-
- if __queue_try_write query ; then
- __queue_make_readable query
- fi
-}
-
-PROMPT_COMMAND=__update_prompt_main
diff --git a/share/spack/docker/build/common/handle-ssh.sh b/share/spack/docker/build/common/handle-ssh.sh
deleted file mode 100644
index f2139897cb..0000000000
--- a/share/spack/docker/build/common/handle-ssh.sh
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 2013-2018 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)
-
-uid="`id -u`"
-if [ "$uid" '=' '0' ] ; then
- for key_type in dsa ecdsa ed25519 rsa ; do
- private_key_file="/etc/ssh/ssh_host_${key_type}_key"
- public_key_file="$private_key_file.pub"
-
- if [ '!' -f "$private_key_file" ] ; then
- ssh-keygen \
- -q -t "$key_type" -N "" -f "$private_key_file"
- chmod 600 "$private_key_file"
- chmod 644 "$public_key_file"
- fi
- done
-
- mkdir -p /var/run/sshd
-
- pgrep -u 0 -U 0 sshd &> /dev/null
- if [ '!' "$?" '=' '0' ] ; then
- nohup /usr/sbin/sshd -f /etc/ssh/sshd_config < /dev/null &> /dev/null
- fi
-fi
-
-if [ '!' -f "$HOME/.ssh/id_rsa" ] ; then
- ssh-keygen \
- -t rsa -C "spack.developer@docker.host" -N "" -f "$HOME/.ssh/id_rsa"
- cat "$HOME/.ssh/id_rsa.pub" >> "$HOME/.ssh/authorized_keys"
- chmod 600 "$HOME/.ssh/authorized_keys"
-
- docker_ip="`ip address show dev eth0 |
- grep inet |
- cut -d' ' -f 6 |
- cut -d/ -f 1`"
-
- ssh-keyscan -t rsa 127.0.0.1 localhost "$docker_ip" "`hostname`" \
- > "$HOME/.ssh/known_hosts" 2> /dev/null
-fi
diff --git a/share/spack/docker/build/common/modules.yaml b/share/spack/docker/build/common/modules.yaml
deleted file mode 100644
index 02907ecc40..0000000000
--- a/share/spack/docker/build/common/modules.yaml
+++ /dev/null
@@ -1,6 +0,0 @@
-modules:
- enable:
- - lmod
- lmod:
- core_compilers:
- - gcc
diff --git a/share/spack/docker/build/fedora.dockerfile b/share/spack/docker/build/fedora.dockerfile
deleted file mode 100644
index bf06411d21..0000000000
--- a/share/spack/docker/build/fedora.dockerfile
+++ /dev/null
@@ -1,56 +0,0 @@
-FROM fedora:24
-MAINTAINER Omar Padron <omar.padron@kitware.com>
-
-ENV SPACK_ROOT=/spack \
- FORCE_UNSAFE_CONFIGURE=1 \
- DISTRO=fedora
-
-RUN dnf update -y && \
- dnf group install -y "C Development Tools and Libraries" && \
- dnf install -y \
- @development-tools \
- curl \
- findutils \
- gcc-c++ \
- gcc \
- gcc-gfortran \
- git \
- gnupg2 \
- hostname \
- iproute \
- Lmod \
- make \
- patch \
- openssh-server \
- python \
- tcl && \
- git clone --depth 1 git://github.com/spack/spack.git /spack && \
- rm -rf /spack/.git && dnf clean all
-
-RUN echo "source /usr/share/lmod/lmod/init/bash" \
- > /etc/profile.d/spack.sh
-RUN echo "source /spack/share/spack/setup-env.sh" \
- >> /etc/profile.d/spack.sh
-RUN echo "source /spack/share/spack/spack-completion.bash" \
- >> /etc/profile.d/spack.sh
-COPY common/handle-ssh.sh /etc/profile.d/handle-ssh.sh
-COPY common/handle-prompt.sh /etc/profile.d/handle-prompt.sh.source
-
-RUN ( \
- echo "export DISTRO=$DISTRO" ; \
- echo "if [ x\$PROMPT '!=' 'x' -a x\$PROMPT '!=' 'x0' ]" ; \
- echo "then" ; \
- echo "source /etc/profile.d/handle-prompt.sh.source" ; \
- echo "fi" ; \
-) > /etc/profile.d/handle-prompt.sh
-
-RUN mkdir -p /root/.spack
-COPY common/modules.yaml /root/.spack/modules.yaml
-
-RUN rm -f /run/nologin
-
-RUN rm -rf /root/*.*
-
-WORKDIR /root
-ENTRYPOINT ["bash"]
-CMD ["-l"]
diff --git a/share/spack/docker/build/opensuse.dockerfile b/share/spack/docker/build/opensuse.dockerfile
deleted file mode 100644
index 46189a41c9..0000000000
--- a/share/spack/docker/build/opensuse.dockerfile
+++ /dev/null
@@ -1,65 +0,0 @@
-FROM opensuse
-MAINTAINER Omar Padron <omar.padron@kitware.com>
-
-ENV SPACK_ROOT=/spack \
- FORCE_UNSAFE_CONFIGURE=1 \
- DISTRO=opensuse
-
-RUN zypper -n ref && \
- zypper -n up --skip-interactive --no-recommends && \
- zypper -n install -l --no-recommends --type pattern \
- devel_basis \
- devel_C_C++ && \
- zypper -n install -l --no-recommends \
- bash \
- bash-completion \
- ca-certificates \
- curl \
- findutils \
- gcc \
- gcc-locale \
- gcc-c++ \
- gcc-fortran \
- git \
- glibc-locale \
- gpg2 \
- hostname \
- iproute \
- lua-lmod \
- make \
- patch \
- openssh \
- python \
- python-xml \
- tcl && \
- git clone --depth 1 git://github.com/spack/spack.git /spack && \
- zypper clean && \
- rm -rf /spack/.git /var/cache/zypp/*
-
-RUN echo "source /usr/share/lmod/lmod/init/bash" \
- > /etc/profile.d/spack.sh
-RUN echo "source /spack/share/spack/setup-env.sh" \
- >> /etc/profile.d/spack.sh
-RUN echo "source /spack/share/spack/spack-completion.bash" \
- >> /etc/profile.d/spack.sh
-COPY common/handle-ssh.sh /etc/profile.d/handle-ssh.sh
-COPY common/handle-prompt.sh /etc/profile.d/handle-prompt.sh.source
-
-RUN ( \
- echo "export DISTRO=$DISTRO" ; \
- echo "if [ x\$PROMPT '!=' 'x' -a x\$PROMPT '!=' 'x0' ]" ; \
- echo "then" ; \
- echo "source /etc/profile.d/handle-prompt.sh.source" ; \
- echo "fi" ; \
-) > /etc/profile.d/handle-prompt.sh
-
-RUN mkdir -p /root/.spack
-COPY common/modules.yaml /root/.spack/modules.yaml
-
-RUN rm -f /run/nologin
-
-RUN rm -rf /root/*.*
-
-WORKDIR /root
-ENTRYPOINT ["bash"]
-CMD ["-l"]
diff --git a/share/spack/docker/build/scilinux.dockerfile b/share/spack/docker/build/scilinux.dockerfile
deleted file mode 100644
index 3827f5f60e..0000000000
--- a/share/spack/docker/build/scilinux.dockerfile
+++ /dev/null
@@ -1,62 +0,0 @@
-FROM sl:7
-MAINTAINER Patrick Gartung (gartung@fnal.gov)
-
-ENV SPACK_ROOT=/spack \
- FORCE_UNSAFE_CONFIGURE=1 \
- DISTRO=rhel7 \
- container=docker
-
-RUN yum update -y && \
- yum install -y yum-conf-repos.noarch && \
- yum update -y && \
- yum -y install epel-release && \
- yum update -y && \
- yum --enablerepo epel \
- groupinstall -y "Development Tools" && \
- yum --enablerepo epel \
- install -y \
- curl \
- findutils \
- gcc-c++ \
- gcc \
- gcc-gfortran \
- git \
- gnupg2 \
- hostname \
- iproute \
- Lmod \
- make \
- patch \
- openssh-server \
- python \
- tcl
-RUN git clone --depth=1 git://github.com/spack/spack.git /spack && \
- rm -rf /var/cache/yum /spack/.git && yum clean all
-
-RUN echo "source /usr/share/lmod/lmod/init/bash" \
- > /etc/profile.d/spack.sh
-RUN echo "source /spack/share/spack/setup-env.sh" \
- >> /etc/profile.d/spack.sh
-RUN echo "source /spack/share/spack/spack-completion.bash" \
- >> /etc/profile.d/spack.sh
-COPY common/handle-ssh.sh /etc/profile.d/handle-ssh.sh
-COPY common/handle-prompt.sh /etc/profile.d/handle-prompt.sh.source
-
-RUN ( \
- echo "export DISTRO=$DISTRO" ; \
- echo "if [ x\$PROMPT '!=' 'x' -a x\$PROMPT '!=' 'x0' ]" ; \
- echo "then" ; \
- echo "source /etc/profile.d/handle-prompt.sh.source" ; \
- echo "fi" ; \
-) > /etc/profile.d/handle-prompt.sh
-
-RUN mkdir -p /root/.spack
-COPY common/modules.yaml /root/.spack/modules.yaml
-
-RUN rm -f /run/nologin
-
-RUN rm -rf /root/*.*
-
-WORKDIR /root
-ENTRYPOINT ["bash"]
-CMD ["-l"]
diff --git a/share/spack/docker/build/ubuntu.dockerfile b/share/spack/docker/build/ubuntu.dockerfile
deleted file mode 100644
index ac608ddd12..0000000000
--- a/share/spack/docker/build/ubuntu.dockerfile
+++ /dev/null
@@ -1,51 +0,0 @@
-FROM ubuntu
-MAINTAINER Omar Padron <omar.padron@kitware.com>
-
-ENV DEBIAN_FRONTEND=noninteractive \
- SPACK_ROOT=/spack \
- FORCE_UNSAFE_CONFIGURE=1 \
- DISTRO=ubuntu
-
-RUN apt-get -yqq update && apt-get -yqq install \
- build-essential \
- ca-certificates \
- curl \
- g++ \
- gcc \
- gfortran \
- git \
- gnupg2 \
- lmod \
- make \
- openssh-server \
- python \
- tcl && \
- git clone --depth 1 git://github.com/spack/spack.git /spack && \
- rm -rf /spack/.git && rm -rf /var/lib/apt/lists/*
-
-RUN echo "source /usr/share/lmod/lmod/init/bash" \
- > /etc/profile.d/spack.sh
-RUN echo "source /spack/share/spack/setup-env.sh" \
- >> /etc/profile.d/spack.sh
-RUN echo "source /spack/share/spack/spack-completion.bash" \
- >> /etc/profile.d/spack.sh
-COPY common/handle-ssh.sh /etc/profile.d/handle-ssh.sh
-COPY common/handle-prompt.sh /etc/profile.d/handle-prompt.sh.source
-
-
-RUN ( \
- echo "export DISTRO=$DISTRO" ; \
- echo "if [ x\$PROMPT '!=' 'x' -a x\$PROMPT '!=' 'x0' ]" ; \
- echo "then" ; \
- echo "source /etc/profile.d/handle-prompt.sh.source" ; \
- echo "fi" ; \
-) > /etc/profile.d/handle-prompt.sh
-
-RUN mkdir -p /root/.spack
-COPY common/modules.yaml /root/.spack/modules.yaml
-
-RUN rm -rf /root/*.*
-
-WORKDIR /root
-ENTRYPOINT ["bash"]
-CMD ["-l"]