# Copyright (C) 2019 Intel Corporation.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
# 1. Redistributions of source code must retain the above copyright notice(s),
# this list of conditions and the following disclaimer.
# 2. Redistributions in binary form must reproduce the above copyright notice(s),
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER(S) ``AS IS'' AND ANY EXPRESS
# OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
# EVENT SHALL THE COPYRIGHT HOLDER(S) BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
# PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
# LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
# OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
# Pull base image
FROM ubuntu:18.04
LABEL maintainer="katarzyna.wasiuta@intel.com"
# Update the Apt cache and install basic tools
RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
asciidoctor \
automake \
bash-completion \
ca-certificates \
curl \
devscripts \
g++ \
git \
libjson-c-dev \
libkeyutils-dev \
libkmod-dev \
libnuma-dev \
libtool \
libudev-dev \
numactl \
pkg-config \
python-pip \
sudo \
systemd \
uuid-dev \
whois \
&& rm -rf /var/lib/apt/lists/*
# Install packages required by python tests
RUN pip install wheel
RUN pip install setuptools==3.4.1
RUN pip install pytest==3.9.2
# Add user
ENV USER memkinduser
ENV USERPASS memkindpass
RUN useradd -m $USER -g sudo -p `mkpasswd $USERPASS`
RUN echo '%sudo ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers
# Create directory for memkind repository
WORKDIR /home/$USER/memkind
# Allow user to create files in the home directory
RUN chown -R $USER:sudo /home/$USER
# Change user to $USER
USER $USER