Beispiel #1
0
def build(version='0.11.5'):
    stage0 = CVL_ubuntu_stage()
    stage0 += pip(
        packages=['numpy', 'h5py', 'ncempy', 'numba', 'scikit-image', 'scikit-learn', 'PyQt5', 'pyqtgraph', 'qtconsole', 'ipywidgets', 'tqdm', 'ipyparallel', 'dask', f'py4dstem=={version}'],
        pip='pip3'
    )
    return stage0
Beispiel #2
0
    def test_pip3_centos(self):
        """pip3 w/ pip building block"""
        p = pip(packages=['hpccm'], pip='pip3')
        self.assertEqual(
            str(p), r'''# pip
RUN yum install -y \
        python3-pip && \
    rm -rf /var/cache/yum/*
RUN pip3 --no-cache-dir install hpccm''')
Beispiel #3
0
    def test_no_args(self):
        """empty args option"""
        p = pip(args=[], packages=['hpccm'], pip='pip3')
        self.assertEqual(
            str(p), r'''# pip
RUN yum install -y \
        python3-pip && \
    rm -rf /var/cache/yum/*
RUN pip3 install hpccm''')
Beispiel #4
0
    def test_defaults_centos(self):
        """Default pip building block"""
        p = pip(packages=['hpccm'])
        self.assertEqual(
            str(p), r'''# pip
RUN yum install -y epel-release && \
    yum install -y \
        python2-pip && \
    rm -rf /var/cache/yum/*
RUN pip --no-cache-dir install hpccm''')
Beispiel #5
0
    def test_ospackages(self):
        """specify ospackages option"""
        p = pip(ospackages=['foo'], packages=['hpccm'])
        self.assertEqual(
            str(p), r'''# pip
RUN apt-get update -y && \
    DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
        foo && \
    rm -rf /var/lib/apt/lists/*
RUN pip --no-cache-dir install hpccm''')
Beispiel #6
0
    def test_alternatives_centos8(self):
        """Default pip building block"""
        p = pip(packages=['hpccm'], alternatives=True)
        self.assertEqual(
            str(p), r'''# pip
RUN yum install -y \
        python2-pip && \
    rm -rf /var/cache/yum/*
RUN alternatives --set python /usr/bin/python2 && \
    alternatives --install /usr/bin/pip pip /usr/bin/pip2 30
RUN pip --no-cache-dir install hpccm''')
Beispiel #7
0
    def test_pip3_ubuntu(self):
        """pip3 w/ pip building block"""
        p = pip(packages=['hpccm'], pip='pip3')
        self.assertEqual(
            str(p), r'''# pip
RUN apt-get update -y && \
    DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
        python3-pip \
        python3-setuptools \
        python3-wheel && \
    rm -rf /var/lib/apt/lists/*
RUN pip3 --no-cache-dir install hpccm''')
    def test_defaults_ubuntu(self):
        """Default pip building block"""
        p = pip(packages=['hpccm'])
        self.assertEqual(
            str(p), r'''# pip
RUN apt-get update -y && \
    DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
        python-pip \
        python-setuptools \
        python-wheel && \
    rm -rf /var/lib/apt/lists/*
RUN pip install hpccm''')
Beispiel #9
0
    def test_upgrade(self):
        """upgrade option"""
        p = pip(packages=['hpccm'], upgrade=True)
        self.assertEqual(
            str(p), r'''# pip
RUN apt-get update -y && \
    DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
        python-pip \
        python-setuptools \
        python-wheel && \
    rm -rf /var/lib/apt/lists/*
RUN pip --no-cache-dir install --upgrade pip && \
    pip --no-cache-dir install hpccm''')
Beispiel #10
0
    def test_requirements(self):
        """specify requirements options"""
        p = pip(requirements='foo/requirements.txt')
        self.assertEqual(
            str(p), r'''# pip
RUN apt-get update -y && \
    DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
        python-pip \
        python-setuptools \
        python-wheel && \
    rm -rf /var/lib/apt/lists/*
COPY foo/requirements.txt /var/tmp/requirements.txt
RUN pip --no-cache-dir install -r /var/tmp/requirements.txt && \
    rm -rf /var/tmp/requirements.txt''')
Beispiel #11
0
 def __instructions(self):
     """String representation of the building block"""
     self += comment(__doc__, reformat=False)
     self += python(devel=True, python2=False)
     self += pip(pip='pip3',
                 packages=['virtualenv', 'pre-commit', 'cmake-format'])
     self += packages(ospackages=self.__ospackages,
                      apt_ppas=['ppa:git-core/ppa'],
                      epel=True)
     self += shell(commands=self.__commands)
     self += environment(variables={
         'CMAKE_GENERATOR': 'Ninja',
         'PATH': '/usr/local/poetry/bin:$PATH'
     })
Beispiel #12
0
    def __instructions(self):
        self += comment(__doc__, reformat=False)
        # https://github.com/bincrafters/community/issues/880
        self += packages(ospackages=['pkg-config'])
        # For building curl:
        self += packages(ospackages=['autoconf-archive', 'libtool'])
        conan_version = "1.22.2"

        self += pip(pip='pip3', packages=['conan=={}'.format(conan_version)])
        self += shell(commands=self.__commands)
        if self.__user_home != '':
            self += environment(
                variables={'CONAN_USER_HOME': self.__user_home})
        self += label(
            metadata={
                'org.opengeosys.pm': 'conan',
                'org.opengeosys.pm.conan.version': conan_version
            })
        if self.__user_home != '':
            self += label(metadata={
                'org.opengeosys.pm.conan.user_home': self.__user_home
            })
Beispiel #13
0
    def test_no_ospackages(self):
        """empty ospackages option"""
        p = pip(ospackages=[], packages=['hpccm'])
        self.assertEqual(str(p), r'''# pip
RUN pip --no-cache-dir install hpccm''')