public release 4.2.0 - see README.md and CHANGES.md for details
This commit is contained in:
30
extras/docker-docs/Dockerfile
Normal file
30
extras/docker-docs/Dockerfile
Normal file
@@ -0,0 +1,30 @@
|
||||
FROM python:3.12
|
||||
|
||||
# docker container to build PMSCO documentation
|
||||
|
||||
WORKDIR /app
|
||||
|
||||
RUN apt-get update && apt-get install -y --no-install-recommends \
|
||||
default-jre \
|
||||
doxygen \
|
||||
gawk \
|
||||
git \
|
||||
graphviz \
|
||||
pandoc \
|
||||
wget \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
RUN pip install --no-cache-dir \
|
||||
doxypypy \
|
||||
meson \
|
||||
meson-python \
|
||||
ninja \
|
||||
pynose
|
||||
|
||||
RUN wget -O plantuml.jar https://sourceforge.net/projects/plantuml/files/plantuml.jar/download
|
||||
ENV PLANTUML_JAR_PATH=/app/plantuml.jar
|
||||
|
||||
COPY . .
|
||||
|
||||
CMD ["sh"]
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
BootStrap: debootstrap
|
||||
OSVersion: bionic
|
||||
OSVersion: focal
|
||||
MirrorURL: http://ch.archive.ubuntu.com/ubuntu/
|
||||
|
||||
%help
|
||||
@@ -32,7 +32,7 @@ path/to/pmsco must point to the directory that contains the __main__.py file.
|
||||
%labels
|
||||
Maintainer Matthias Muntwiler
|
||||
Maintainer_Email matthias.muntwiler@psi.ch
|
||||
Python_Version 3
|
||||
Python_Version 3.8
|
||||
|
||||
%environment
|
||||
export LC_ALL=C
|
||||
@@ -43,7 +43,7 @@ path/to/pmsco must point to the directory that contains the __main__.py file.
|
||||
|
||||
%post
|
||||
export LC_ALL=C
|
||||
export PYTHON_VERSION=3
|
||||
export PYTHON_VERSION=3.8
|
||||
export CONDA_ROOT=/opt/miniconda
|
||||
export PLANTUML_ROOT=/opt/plantuml
|
||||
|
||||
@@ -63,33 +63,44 @@ path/to/pmsco must point to the directory that contains the __main__.py file.
|
||||
libblas-dev \
|
||||
liblapack-dev \
|
||||
libopenmpi-dev \
|
||||
make \
|
||||
nano \
|
||||
openmpi-bin \
|
||||
openmpi-common \
|
||||
sqlite3 \
|
||||
wget
|
||||
apt-get clean
|
||||
|
||||
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -O ~/miniconda.sh
|
||||
bash ~/miniconda.sh -b -p ${CONDA_ROOT}
|
||||
wget https://github.com/conda-forge/miniforge/releases/latest/download/Miniforge3-Linux-x86_64.sh -O ~/miniforge3.sh
|
||||
bash ~/miniforge3.sh -b -p ${CONDA_ROOT}
|
||||
|
||||
. ${CONDA_ROOT}/bin/activate
|
||||
. ${CONDA_ROOT}/etc/profile.d/conda.sh
|
||||
conda activate base
|
||||
conda create -q --yes -n pmsco python=${PYTHON_VERSION}
|
||||
conda activate pmsco
|
||||
conda install -q --yes -n pmsco \
|
||||
pip \
|
||||
"numpy>=1.13" \
|
||||
scipy \
|
||||
ipython \
|
||||
matplotlib \
|
||||
nose \
|
||||
mock \
|
||||
conda install -q --yes -n pmsco -c conda-forge \
|
||||
commentjson \
|
||||
fasteners \
|
||||
future \
|
||||
statsmodels \
|
||||
swig \
|
||||
gitpython
|
||||
ipython \
|
||||
ipykernel \
|
||||
jsonschema \
|
||||
h5py \
|
||||
matplotlib \
|
||||
meson \
|
||||
mock \
|
||||
pynose \
|
||||
"numpy>=1.13" \
|
||||
pandas \
|
||||
periodictable \
|
||||
pip \
|
||||
scikit-learn \
|
||||
scipy \
|
||||
seaborn \
|
||||
sqlalchemy \
|
||||
statsmodels \
|
||||
swig
|
||||
conda clean --all -y
|
||||
pip install periodictable attrdict commentjson fasteners mpi4py doxypypy
|
||||
${CONDA_ROOT}/envs/pmsco/bin/pip install meson-python mpi4py netgraph networkx doxypypy
|
||||
|
||||
mkdir ${PLANTUML_ROOT}
|
||||
wget -O ${PLANTUML_ROOT}/plantuml.jar https://sourceforge.net/projects/plantuml/files/plantuml.jar/download
|
||||
@@ -111,11 +122,16 @@ path/to/pmsco must point to the directory that contains the __main__.py file.
|
||||
git checkout master
|
||||
git checkout -b ${SINGULAR_BRANCH}
|
||||
|
||||
make all
|
||||
nosetests -w tests/
|
||||
meson setup build
|
||||
cd build
|
||||
meson compile
|
||||
meson install
|
||||
meson test
|
||||
|
||||
%apprun compile
|
||||
. ${CONDA_ROOT}/etc/profile.d/conda.sh
|
||||
conda activate pmsco
|
||||
make all
|
||||
nosetests
|
||||
cd build
|
||||
meson compile
|
||||
meson install
|
||||
meson test
|
||||
|
||||
Reference in New Issue
Block a user