Skip to content
Snippets Groups Projects
Commit 828ae01d authored by Stéphane Diemer's avatar Stéphane Diemer
Browse files

Merge branch 't35384-change-docker-image' into 'main'

See merge request sys/ansible-public!11
parents 74ac16de 1cacae21
No related branches found
No related tags found
No related merge requests found
FROM registry.ubicast.net/docker/debian-dev:latest
FROM registry.ubicast.net/docker/dind-compose:latest
# avoid warnings by switching to noninteractive
ENV DEBIAN_FRONTEND noninteractive
# local pyvenv to avoid conflicts with system
ENV PYVENV ${HOME}/pyvenv
# add pyvenv to path
ENV PATH ${PYVENV}/bin:${PATH}
# Set locale
ENV LANG="C.UTF-8" LC_ALL="C.UTF-8" LANGUAGE="C.UTF-8"
# copy requirement file
# Copy requirement files
COPY requirements.txt .
COPY requirements.dev.txt .
COPY requirements.dev.apk.txt .
# Install required apk packages
RUN apk add $(grep -v '^#' requirements.dev.apk.txt | cut -d ' ' -f1 | sed -e ':a' -e 'N' -e '$!ba' -e 's/\n/ /g')
# Install ansible tools
RUN \
# install required tools
sudo apt-get update && \
sudo apt-get install -y libffi-dev libncurses5 libncursesw5 libssl-dev python3-netaddr && \
# create pyvenv + install ansible tools
python3 -m venv --system-site-packages ${PYVENV} && \
pip install -U pip wheel && \
pip install -r requirements.dev.txt && \
# clean up
sudo apt-get autoremove -y && \
sudo apt-get clean -y && \
sudo rm -rf /var/lib/apt/lists/* && \
sudo rm requirements.dev.txt
# switch back to dialog for any ad-hoc use of apt-get
ENV DEBIAN_FRONTEND dialog
ENV HOME /root
USER root
pip install -r requirements.txt && \
pip install -r requirements.dev.txt
......@@ -30,8 +30,4 @@ packer/*.json
*.sublime-project
# secrets
.env/*
!.env/_reset
!.env/_config
!.env/*example
!.env/example
.env
---
variables:
GIT_SUBMODULE_STRATEGY: recursive
DOCKER_IMAGE_NAME: registry.ubicast.net/sys/ansible-public
default:
image: registry.ubicast.net/sys/ansible-public
......@@ -73,5 +75,3 @@ test:pgsql-ha:
stage: test-pgsql
script:
- make test pgsql-ha=1 debug=1
...
# expose .env variables globally
-include .env
export
DOCKER_IMAGE_NAME ?= ansible-public
SHELL := /bin/bash
DOCKER_IMAGE_NAME := registry.ubicast.net/sys/ansible-public
VENV := /tmp/pyvensetup
ANSIBLE_CONFIG := ansible.cfg
PIP_BIN = $(shell command -v $(VENV)/bin/pip3 || command -v pip3 || echo pip3)
......@@ -101,7 +105,7 @@ endif
.PHONY: docker-build
## docker-build: Run docker image build for.docker
docker-build: docker-pull
docker-build:
docker build -t $(DOCKER_IMAGE_NAME) -f .docker/Dockerfile .
.PHONY: docker-rebuild
......
bash
# To compile cryptography
gcc
libffi-dev
musl-dev
openssl-dev
python3-dev
-r requirements.in
ansible-lint
flake8
git+git://github.com/atmaniak/molecule@e03437923b302fca1bd7b4f6030c6956ad00367a#egg=molecule[docker]
#molecule[docker]
pip-tools
pytest-testinfra
yamllint
openstacksdk
ovh
#
# This file is autogenerated by pip-compile
# To update, run:
#
# pip-compile --output-file=requirements.dev.txt requirements.dev.in
#
ansible-lint==4.2.0
# via -r requirements.dev.in
ansible==2.9.18
# via
# -r requirements.in
# ansible-lint
# molecule
appdirs==1.4.4
# via openstacksdk
arrow==0.17.0
# via jinja2-time
attrs==20.3.0
# via pytest
bcrypt==3.2.0
# via paramiko
binaryornot==0.4.4
# via cookiecutter
cerberus==1.3.2
# via molecule
certifi==2020.12.5
# via requests
cffi==1.14.4
# via
# bcrypt
# cryptography
# pynacl
chardet==4.0.0
# via
# binaryornot
# requests
click-completion==0.5.2
# via molecule
click-help-colors==0.9
# via molecule
click==7.1.2
# via
# click-completion
# click-help-colors
# cookiecutter
# molecule
# pip-tools
# python-gilt
colorama==0.4.4
# via
# molecule
# python-gilt
# rich
commonmark==0.9.1
# via rich
cookiecutter==1.7.2
# via molecule
cryptography==3.3.1
# via
# ansible
# openstacksdk
# paramiko
decorator==4.4.2
# via
# dogpile.cache
# openstacksdk
distro==1.5.0
# via selinux
docker==4.4.1
# via molecule
dogpile.cache==1.1.1
# via openstacksdk
fasteners==0.16
# via python-gilt
flake8==3.8.4
# via -r requirements.dev.in
idna==2.10
# via requests
iniconfig==1.1.1
# via pytest
iso8601==0.1.13
# via
# keystoneauth1
# openstacksdk
jinja2-time==0.2.0
# via cookiecutter
jinja2==2.11.2
# via
# ansible
# click-completion
# cookiecutter
# jinja2-time
# molecule
jmespath==0.10.0
# via openstacksdk
jsonpatch==1.28
# via openstacksdk
jsonpointer==2.0
# via jsonpatch
keystoneauth1==4.3.0
# via openstacksdk
markupsafe==1.1.1
# via
# cookiecutter
# jinja2
mccabe==0.6.1
# via flake8
ansible-lint
flake8
git+git://github.com/atmaniak/molecule@e03437923b302fca1bd7b4f6030c6956ad00367a#egg=molecule[docker]
# via -r requirements.dev.in
munch==2.5.0
# via openstacksdk
netaddr==0.8.0
# via -r requirements.in
netifaces==0.10.9
# via openstacksdk
openstacksdk==0.52.0
# via
# -r requirements.dev.in
# -r requirements.in
os-service-types==1.7.0
# via
# keystoneauth1
# openstacksdk
ovh==0.5.0
# via
# -r requirements.dev.in
# -r requirements.in
packaging==20.8
# via pytest
paramiko==2.7.2
# via molecule
pathspec==0.8.1
# via yamllint
pbr==5.5.1
# via
# keystoneauth1
# openstacksdk
# os-service-types
# stevedore
pexpect==4.8.0
# via molecule
pip-tools==5.5.0
# via -r requirements.dev.in
pluggy==0.13.1
# via
# molecule
# pytest
poyo==0.5.0
# via cookiecutter
ptyprocess==0.7.0
# via pexpect
py==1.10.0
# via pytest
pycodestyle==2.6.0
# via flake8
pycparser==2.20
# via cffi
pyflakes==2.2.0
# via flake8
pygments==2.7.3
# via rich
pynacl==1.4.0
# via paramiko
pyparsing==2.4.7
# via packaging
pytest-testinfra==6.1.0
# via -r requirements.dev.in
pytest==6.2.1
# via pytest-testinfra
python-dateutil==2.8.1
# via arrow
python-gilt==1.2.3
# via molecule
python-slugify==4.0.1
# via cookiecutter
pyyaml==5.3.1
# via
# -r requirements.in
# ansible
# ansible-lint
# molecule
# openstacksdk
# python-gilt
# yamllint
requests==2.25.1
# via
# cookiecutter
# docker
# keystoneauth1
requestsexceptions==1.4.0
# via openstacksdk
rich==9.6.1
# via ansible-lint
ruamel.yaml.clib==0.2.2
# via ruamel.yaml
ruamel.yaml==0.16.12
# via ansible-lint
selinux==0.2.1
# via molecule
sh==1.13.1
# via
# molecule
# python-gilt
shellingham==1.3.2
# via click-completion
six==1.15.0
# via
# bcrypt
# click-completion
# cookiecutter
# cryptography
# docker
# fasteners
# keystoneauth1
# munch
# pynacl
# python-dateutil
# websocket-client
stevedore==3.3.0
# via
# dogpile.cache
# keystoneauth1
tabulate==0.8.7
# via molecule
text-unidecode==1.3
# via python-slugify
toml==0.10.2
# via pytest
tree-format==0.1.2
# via molecule
typing-extensions==3.7.4.3
# via rich
urllib3==1.26.2
# via requests
websocket-client==0.57.0
# via docker
yamllint==1.25.0
# via
# -r requirements.dev.in
# molecule
# The following packages are considered to be unsafe in a requirements file:
# pip
# setuptools
#molecule[docker]
pytest-testinfra
yamllint
ansible<2.10
netaddr
pyyaml
openstacksdk
ovh
#
# This file is autogenerated by pip-compile
# To update, run:
#
# pip-compile --output-file=requirements.txt requirements.in
#
ansible==2.9.18 # via -r requirements.in
cffi==1.14.0 # via cryptography
cryptography==2.9 # via ansible
jinja2==2.11.2 # via ansible
jmespath==0.10.0 # via openstacksdk
jsonpatch==1.28 # via openstacksdk
jsonpointer==2.0 # via jsonpatch
keystoneauth1==4.3.0 # via openstacksdk
markupsafe==1.1.1 # via jinja2
munch==2.5.0 # via openstacksdk
netaddr==0.8.0 # via -r requirements.in
netifaces==0.10.9 # via openstacksdk
openstacksdk==0.52.0 # via -r requirements.in
os-service-types==1.7.0 # via keystoneauth1, openstacksdk
ovh==0.5.0 # via -r requirements.in
pbr==5.5.1 # via keystoneauth1, openstacksdk, os-service-types, stevedore
pycparser==2.20 # via cffi
pyyaml==5.3.1 # via -r requirements.in, ansible, openstacksdk
requests==2.25.1 # via keystoneauth1
requestsexceptions==1.4.0 # via openstacksdk
six==1.15.0 # via cryptography, keystoneauth1, munch
stevedore==3.3.0 # via dogpile.cache, keystoneauth1
urllib3==1.26.2 # via requests
ansible<2.10
netaddr
pyyaml
openstacksdk
ovh
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment