Compare commits
28 Commits
Author | SHA1 | Date | |
---|---|---|---|
e374fc16b0 | |||
1b1ef85059 | |||
fd84b48a7e | |||
18d15f2978 | |||
4a722374a8 | |||
5fe7a206f0 | |||
4c69d8e2e5 | |||
b037996a4d | |||
e4feaaa69d | |||
d48901bab9 | |||
0ae0fadfd2 | |||
9730657d1e | |||
c5f9ae33a5 | |||
cefc16d145 | |||
2b3693e957 | |||
a39be61aac | |||
4fcb5ee5ea | |||
6b78eca456 | |||
26df54dfa2 | |||
537e7b6b6a | |||
cf39a9140b | |||
5aba6b96dc | |||
a4621f5618 | |||
9e1c717599 | |||
0b2c8ffda8 | |||
085de2b272 | |||
d1e6280728 | |||
733633209a |
2
.cz.yaml
2
.cz.yaml
@ -4,4 +4,4 @@ commitizen:
|
||||
name: cz_conventional_commits
|
||||
tag_format: $major.$minor.$patch$prerelease
|
||||
update_changelog_on_bump: true
|
||||
version: 0.11.0rc0
|
||||
version: 0.11.0
|
||||
|
@ -8,7 +8,7 @@ variables:
|
||||
DOCKER_IMAGE_PUBLISH_NAME: 'ansible-ee'
|
||||
DOCKER_IMAGE_PUBLISH_REGISTRY: docker.io/nofusscomputing
|
||||
DOCKER_IMAGE_PUBLISH_URL: https://hub.docker.com/r/nofusscomputing/$DOCKER_IMAGE_PUBLISH_NAME
|
||||
PAGES_ENVIRONMENT_PATH: projects/execution_environment/
|
||||
PAGES_ENVIRONMENT_PATH: projects/ansible/execution_environment/
|
||||
|
||||
include:
|
||||
- project: nofusscomputing/projects/gitlab-ci
|
||||
@ -27,6 +27,7 @@ Build/Cache Python Packages:
|
||||
- name: docker:23-dind
|
||||
entrypoint: ["env", "-u", "DOCKER_HOST"]
|
||||
command: ["dockerd-entrypoint.sh"]
|
||||
needs: []
|
||||
variables:
|
||||
DOCKER_HOST: tcp://docker:2375/
|
||||
DOCKER_DRIVER: overlay2
|
||||
@ -49,7 +50,8 @@ Build/Cache Python Packages:
|
||||
--platform=$DOCKER_IMAGE_BUILD_TARGET_PLATFORMS . \
|
||||
--build-arg CI_JOB_TOKEN=$CI_JOB_TOKEN \
|
||||
--build-arg CI_API_V4_URL=$CI_API_V4_URL \
|
||||
--build-arg CI_PROJECT_ID=$CI_PROJECT_ID
|
||||
--build-arg CI_PROJECT_ID=$CI_PROJECT_ID \
|
||||
--progress plain
|
||||
rules:
|
||||
- if: '$CI_PIPELINE_SOURCE == "merge_request_event"'
|
||||
when: never
|
||||
|
39
CHANGELOG.md
39
CHANGELOG.md
@ -1,3 +1,42 @@
|
||||
## 0.11.0 (2024-01-14)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- [e4feaaa6](https://gitlab.com/nofusscomputing/projects/ansible/execution_environment/-/commit/e4feaaa69dd6c1dd0ca2f7a8a827ca032d2b706a) - depreciated warning "ANSIBLE_COLLECTIONS_PATHS option, does not fit var naming standard, use the singular form ANSIBLE_COLLECTIONS_PATH instead" [ [!184](https://gitlab.com/nofusscomputing/projects/ansible/execution_environment/-/merge_requests/184) ]
|
||||
- **docker_cache**: [d48901ba](https://gitlab.com/nofusscomputing/projects/ansible/execution_environment/-/commit/d48901bab9f7a48f56b774245c399f1b079219e7) - ensure .tar.gz are built to wheels [ [!184](https://gitlab.com/nofusscomputing/projects/ansible/execution_environment/-/merge_requests/184) ]
|
||||
- **docker_cache**: [2b3693e9](https://gitlab.com/nofusscomputing/projects/ansible/execution_environment/-/commit/2b3693e957c6e3578ed1ade75574b260638dea4c) - migrated ldconfig fixes from ee container file [ [!184](https://gitlab.com/nofusscomputing/projects/ansible/execution_environment/-/merge_requests/184) ]
|
||||
- **docker_cache**: [6b78eca4](https://gitlab.com/nofusscomputing/projects/ansible/execution_environment/-/commit/6b78eca4563376d2346e3cd75e0887e8cb6bc15a) - build image binaries to match deployed binaries [ [!184](https://gitlab.com/nofusscomputing/projects/ansible/execution_environment/-/merge_requests/184) ]
|
||||
- **docker_cache**: [26df54df](https://gitlab.com/nofusscomputing/projects/ansible/execution_environment/-/commit/26df54dfa2ff2ee416cb824252900d7335533724) - build image must not be slim [ [!184](https://gitlab.com/nofusscomputing/projects/ansible/execution_environment/-/merge_requests/184) ]
|
||||
|
||||
### Code Refactor
|
||||
|
||||
- **docker**: [b037996a](https://gitlab.com/nofusscomputing/projects/ansible/execution_environment/-/commit/b037996a4dc9631f2395f5b14390415f943139ac) - get file name with ls and grep [ [!184](https://gitlab.com/nofusscomputing/projects/ansible/execution_environment/-/merge_requests/184) ]
|
||||
- **docker_cache**: [0ae0fadf](https://gitlab.com/nofusscomputing/projects/ansible/execution_environment/-/commit/0ae0fadfd220bd71d86c7096b114b95b7e04216d) - cleanup commands and place items in alphanumerical order [ [!184](https://gitlab.com/nofusscomputing/projects/ansible/execution_environment/-/merge_requests/184) ]
|
||||
|
||||
### Continious Integration
|
||||
|
||||
- [18d15f29](https://gitlab.com/nofusscomputing/projects/ansible/execution_environment/-/commit/18d15f2978ba9f3b7fd8802ed4d06d024d174a77) - update pages path [ [!184](https://gitlab.com/nofusscomputing/projects/ansible/execution_environment/-/merge_requests/184) ]
|
||||
- **docker_cache**: [c5f9ae33](https://gitlab.com/nofusscomputing/projects/ansible/execution_environment/-/commit/c5f9ae33a556e9ac5391505bf3d2cb184f7b69f7) - require compilation tools [ [!184](https://gitlab.com/nofusscomputing/projects/ansible/execution_environment/-/merge_requests/184) [#23](https://gitlab.com/nofusscomputing/projects/ansible/execution_environment/-/issues/23) ]
|
||||
- **docker_cache**: [cefc16d1](https://gitlab.com/nofusscomputing/projects/ansible/execution_environment/-/commit/cefc16d145c931aeacd94e7a89f36a184074f50b) - start straight away as no deps for building [ [!184](https://gitlab.com/nofusscomputing/projects/ansible/execution_environment/-/merge_requests/184) ]
|
||||
|
||||
### Documentaton / Guides
|
||||
|
||||
- [4a722374](https://gitlab.com/nofusscomputing/projects/ansible/execution_environment/-/commit/4a722374a8561d301c82839dca0ab2f812f55b07) - update to current structure [ [!184](https://gitlab.com/nofusscomputing/projects/ansible/execution_environment/-/merge_requests/184) ]
|
||||
|
||||
### Features
|
||||
|
||||
- **submodules**: [1b1ef850](https://gitlab.com/nofusscomputing/projects/ansible/execution_environment/-/commit/1b1ef8505985530579f356193ce5529c915309f4) - manual update of playbooks and roles [ [!185](https://gitlab.com/nofusscomputing/projects/ansible/execution_environment/-/merge_requests/185) [#26](https://gitlab.com/nofusscomputing/projects/ansible/execution_environment/-/issues/26) [!130](https://gitlab.com/nofusscomputing/projects/ansible/execution_environment/-/merge_requests/130) ]
|
||||
- **docker**: [5fe7a206](https://gitlab.com/nofusscomputing/projects/ansible/execution_environment/-/commit/5fe7a206f0c7741986dffb6af82e97f9554c75ff) - add required deps for mysql ansible module [ [!184](https://gitlab.com/nofusscomputing/projects/ansible/execution_environment/-/merge_requests/184) [#25](https://gitlab.com/nofusscomputing/projects/ansible/execution_environment/-/issues/25) ]
|
||||
- **docker**: [4c69d8e2](https://gitlab.com/nofusscomputing/projects/ansible/execution_environment/-/commit/4c69d8e2e56cb63d8890a2a70d53bac782ce3df3) - update base image from buster to bookworm [ [!184](https://gitlab.com/nofusscomputing/projects/ansible/execution_environment/-/merge_requests/184) [#23](https://gitlab.com/nofusscomputing/projects/ansible/execution_environment/-/issues/23) ]
|
||||
- **python**: [9730657d](https://gitlab.com/nofusscomputing/projects/ansible/execution_environment/-/commit/9730657d1ec8bfdf1d780f88ae7513f0211540fb) - updated awxkit, python_gitlab and dns to current head versions [ [!184](https://gitlab.com/nofusscomputing/projects/ansible/execution_environment/-/merge_requests/184) ]
|
||||
- **collections**: [a39be61a](https://gitlab.com/nofusscomputing/projects/ansible/execution_environment/-/commit/a39be61aac7fce8404f4c60cc7752ec9ca8af0fe) - update all modules to current HEAD versions available [ [!184](https://gitlab.com/nofusscomputing/projects/ansible/execution_environment/-/merge_requests/184) ]
|
||||
- **docker**: [4fcb5ee5](https://gitlab.com/nofusscomputing/projects/ansible/execution_environment/-/commit/4fcb5ee5ea75840768fe81009d6bf761ddb0d0b6) - use python slim for base image [ [!184](https://gitlab.com/nofusscomputing/projects/ansible/execution_environment/-/merge_requests/184) [#23](https://gitlab.com/nofusscomputing/projects/ansible/execution_environment/-/issues/23) ]
|
||||
- **submodule**: [cf39a914](https://gitlab.com/nofusscomputing/projects/ansible/execution_environment/-/commit/cf39a9140be290f5b517143b00bc3bb7ff4fcde8) - update sub module playbooks [ [!67](https://gitlab.com/nofusscomputing/projects/ansible/execution_environment/-/merge_requests/67) ]
|
||||
- **contianer**: [5aba6b96](https://gitlab.com/nofusscomputing/projects/ansible/execution_environment/-/commit/5aba6b96dc37c0ffb5611dd7f7842701efd000c8) - shrink container size [ [#23](https://gitlab.com/nofusscomputing/projects/ansible/execution_environment/-/issues/23) ]
|
||||
- **ansible_playbooks**: [9e1c7175](https://gitlab.com/nofusscomputing/projects/ansible/execution_environment/-/commit/9e1c7175999d061e9088bb2b37f67af0f1cb5a4b) - updated submodule ansible_playbooks [ [!182](https://gitlab.com/nofusscomputing/projects/ansible/execution_environment/-/merge_requests/182) ]
|
||||
- **ansible_playbooks**: [085de2b2](https://gitlab.com/nofusscomputing/projects/ansible/execution_environment/-/commit/085de2b272fdb00189d8897aca55e64c826009c5) - updated submodule ansible_playbooks [ [!181](https://gitlab.com/nofusscomputing/projects/ansible/execution_environment/-/merge_requests/181) ]
|
||||
- **ansible_playbooks**: [73363320](https://gitlab.com/nofusscomputing/projects/ansible/execution_environment/-/commit/733633209aa3b661f88993acccfdad39ebcd765c) - updated submodule ansible_playbooks [ [!180](https://gitlab.com/nofusscomputing/projects/ansible/execution_environment/-/merge_requests/180) ]
|
||||
|
||||
## 0.11.0rc0 (2024-01-02)
|
||||
|
||||
### Bug Fixes
|
||||
|
19
dockerfile
19
dockerfile
@ -2,7 +2,7 @@
|
||||
FROM --platform=$TARGETPLATFORM quay.io/ansible/receptor:devel as receptor
|
||||
|
||||
|
||||
FROM --platform=$TARGETPLATFORM python:3.11-bullseye
|
||||
FROM --platform=$TARGETPLATFORM python:3.11-slim-bookworm
|
||||
|
||||
# Ansible chucks a wobbler without. see: https://github.com/ansible/ansible/issues/78283
|
||||
ENV LC_ALL en_US.UTF-8
|
||||
@ -11,7 +11,7 @@ ENV DEBIAN_FRONTEND noninteractive
|
||||
|
||||
ENV ANSIBLE_PLAYBOOK_DIR=/etc/ansible/playbooks
|
||||
|
||||
ENV ANSIBLE_COLLECTIONS_PATHS=/etc/ansible/collections
|
||||
ENV ANSIBLE_COLLECTIONS_PATH=/etc/ansible/collections
|
||||
|
||||
|
||||
COPY includes /
|
||||
@ -36,10 +36,10 @@ RUN apt update \
|
||||
&& cd /tmp \
|
||||
&& apt-get download \
|
||||
libc-bin \
|
||||
&& dpkg --extract ./libc-bin_*.deb /tmp/deb \
|
||||
&& dpkg --extract $(ls | grep libc-bin_ | grep -a '.deb') /tmp/deb \
|
||||
&& cp /tmp/deb/sbin/ldconfig /sbin/ \
|
||||
&& rm -Rf /tmp/deb \
|
||||
&& rm libc-bin_*.deb \
|
||||
&& rm $(ls | grep libc-bin_ | grep -a '.deb') \
|
||||
&& apt-get install --reinstall \
|
||||
libc-bin \
|
||||
# EoF fixing dpkg ldconfig not found error
|
||||
@ -57,6 +57,7 @@ RUN apt update \
|
||||
postgresql-common \
|
||||
postgresql-client \
|
||||
mariadb-client \
|
||||
mariadb-client-core \
|
||||
&& mkdir -p /etc/ansible/roles \
|
||||
&& mkdir -p /etc/ansible/collections \
|
||||
&& mkdir -p /workdir \
|
||||
@ -83,15 +84,15 @@ RUN pip install --index-url https://gitlab.com/api/v4/projects/45741845/packages
|
||||
|
||||
|
||||
RUN ansible-galaxy collection install \
|
||||
awx.awx==23.5.0 \
|
||||
awx.awx==23.6.0 \
|
||||
# ansible.posix.authorized_key for SSH
|
||||
ansible.posix==1.5.4 \
|
||||
ansible.utils==3.0.0 \
|
||||
community.dns==2.6.4 \
|
||||
community.dns==2.7.0 \
|
||||
# docker managment
|
||||
community.docker==3.4.11 \
|
||||
community.docker==3.5.0 \
|
||||
# community.general.gitlab_*
|
||||
community.general==8.1.0 \
|
||||
community.general==8.2.0 \
|
||||
community.mysql==3.8.0 \
|
||||
community.postgresql==3.2.0 \
|
||||
community.postgresql==3.3.0 \
|
||||
kubernetes.core==3.0.0
|
||||
|
@ -1,4 +1,4 @@
|
||||
FROM --platform=$TARGETPLATFORM python:3.11-slim-bookworm as wheelbuild
|
||||
FROM --platform=$TARGETPLATFORM python:3.11-bookworm as wheelbuild
|
||||
|
||||
ARG CI_JOB_TOKEN
|
||||
ARG CI_API_V4_URL
|
||||
@ -6,62 +6,91 @@ ARG CI_PROJECT_ID
|
||||
|
||||
|
||||
ENV LC_ALL en_US.UTF-8
|
||||
|
||||
ENV PATH /usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/root/.cargo/bin::~/.cargo/bin
|
||||
|
||||
RUN export DEBIAN_FRONTEND=noninteractive \
|
||||
&& dpkg-reconfigure debconf -f noninteractive
|
||||
ENV DEBIAN_FRONTEND noninteractive
|
||||
|
||||
RUN apt update \
|
||||
&& apt install --reinstall -yq \
|
||||
git \
|
||||
|
||||
RUN dpkg-reconfigure debconf -f noninteractive
|
||||
|
||||
|
||||
RUN apt update
|
||||
|
||||
# SoF fixing dpkg ldconfig not found error
|
||||
# Download Binary
|
||||
RUN cd /tmp \
|
||||
&& apt-get download \
|
||||
libc-bin
|
||||
|
||||
RUN ls -la
|
||||
|
||||
# Extract Binary
|
||||
RUN cd /tmp; \
|
||||
dpkg --extract $(ls | grep libc-bin_ | grep -a '.deb') /tmp/deb; ls -laR
|
||||
|
||||
# # Extracted?
|
||||
# RUN ls -laR
|
||||
|
||||
# Copy to home location
|
||||
RUN cp /tmp/deb/sbin/ldconfig /sbin/
|
||||
|
||||
# Confirm present
|
||||
RUN ls -l /sbin/ldconfig
|
||||
|
||||
# Confirm can be found
|
||||
RUN which ldconfig
|
||||
|
||||
# Cleanup
|
||||
# RUN rm -Rf /tmp/deb \
|
||||
# && rm libc-bin_*.deb
|
||||
|
||||
# Should re-install without issue
|
||||
RUN apt-get install --reinstall \
|
||||
libc-bin
|
||||
# EoF fixing dpkg ldconfig not found error
|
||||
# Set Locale to en_US as ansible requires a locale for it to function without chucking a tantrum!!
|
||||
|
||||
|
||||
RUN apt install -yq \
|
||||
build-essential \
|
||||
cargo \
|
||||
curl \
|
||||
rustc cargo \
|
||||
libpq-dev || true
|
||||
|
||||
|
||||
RUN mkdir -p /tmp/python_modules /tmp/python_builds
|
||||
git \
|
||||
libffi-dev \
|
||||
libpq-dev \
|
||||
libssl-dev \
|
||||
mariadb-client \
|
||||
mariadb-client-core \
|
||||
openssh-client \
|
||||
pkg-config \
|
||||
postgresql-client \
|
||||
postgresql-common \
|
||||
python3-dev \
|
||||
rustc
|
||||
|
||||
|
||||
RUN rustc --version \
|
||||
&& cargo --version
|
||||
|
||||
RUN export DEBIAN_FRONTEND=noninteractive \
|
||||
&& apt update \
|
||||
&& apt --fix-broken install \
|
||||
&& apt install -y libc-bin locales-all \
|
||||
&& apt update \
|
||||
&& apt install --reinstall -yq \
|
||||
openssh-client \
|
||||
git || true \
|
||||
&& dpkg --purge --force-all libc-bin \
|
||||
&& apt-get install -y \
|
||||
openssh-client \
|
||||
git
|
||||
|
||||
|
||||
RUN export DEBIAN_FRONTEND=noninteractive \
|
||||
&& apt update \
|
||||
&& apt install --no-install-recommends -yq libc-bin locales-all \
|
||||
&& apt-get install --reinstall -yq \
|
||||
build-essential \
|
||||
libssl-dev \
|
||||
libffi-dev \
|
||||
python3-dev \
|
||||
cargo \
|
||||
pkg-config \
|
||||
libpq-dev || true
|
||||
|
||||
|
||||
RUN pip install --upgrade pip
|
||||
|
||||
|
||||
RUN pip install --upgrade \
|
||||
setuptools \
|
||||
wheel \
|
||||
setuptools-rust \
|
||||
twine
|
||||
|
||||
|
||||
COPY requirements.txt /tmp/requirements.txt
|
||||
|
||||
|
||||
RUN mkdir -p /tmp/python_modules /tmp/python_builds
|
||||
|
||||
|
||||
RUN cd /tmp/python_modules \
|
||||
&& pip download --dest . --check-build-dependencies \
|
||||
-r /tmp/requirements.txt
|
||||
@ -70,7 +99,11 @@ RUN cd /tmp/python_modules \
|
||||
RUN cd /tmp/python_modules \
|
||||
# && export PATH=$PATH:~/.cargo/bin \
|
||||
&& echo "[DEBUG] PATH=$PATH" \
|
||||
&& pip wheel --wheel-dir /tmp/python_builds --find-links . *.whl
|
||||
&& pip wheel --wheel-dir /tmp/python_builds --find-links . *.whl; \
|
||||
pip wheel --wheel-dir /tmp/python_builds --find-links . *.tar.gz;
|
||||
|
||||
RUN cd /tmp; \
|
||||
ls -laR
|
||||
|
||||
|
||||
RUN TWINE_PASSWORD=${CI_JOB_TOKEN} TWINE_USERNAME=gitlab-ci-token python -m twine upload --verbose --skip-existing --repository-url ${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/pypi /tmp/python_builds/*
|
||||
|
@ -8,9 +8,9 @@ about: https://gitlab.com/nofusscomputing/projects/ansible/execution_environment
|
||||
|
||||
This docker container is designed to be used with Ansible AWX/Tower or from within the Gitlab CI/CD Environment. Included in the container are the following projects from us:
|
||||
|
||||
- [Ansible Playbooks](../ansible_playbooks/index.md)
|
||||
- [Ansible Playbooks](../playbooks/index.md)
|
||||
|
||||
- [Ansible Roles](../ansible-roles/index.md)
|
||||
- [Ansible Roles](../roles/index.md)
|
||||
|
||||
This container can be found at dockerhub at <https://hub.docker.com/r/nofusscomputing/ansible-ee> and for use from docker with `docker pull nofusscomputing/ansible-ee`. versioning and git tags are in accordance with semver.
|
||||
|
0
docs/projects/ansible/roles/index.md
Normal file
0
docs/projects/ansible/roles/index.md
Normal file
Submodule includes/etc/ansible/playbooks updated: e78fbab1f9...d1e6fd0fb9
Submodule includes/etc/ansible/roles updated: 90f2159411...a7ecb28eeb
11
mkdocs.yml
11
mkdocs.yml
@ -17,11 +17,18 @@ nav:
|
||||
|
||||
- projects/index.md
|
||||
|
||||
- Ansible Roles:
|
||||
- Ansible:
|
||||
|
||||
- projects/ansible/index.md
|
||||
|
||||
- Execution Environment:
|
||||
|
||||
- projects/execution_environment/index.md
|
||||
- projects/ansible/execution_environment/index.md
|
||||
|
||||
- Playbooks: projects/ansible/playbooks/index.md
|
||||
|
||||
- Roles: projects/ansible/roles/index.md
|
||||
|
||||
|
||||
- Operations:
|
||||
|
||||
|
@ -1,14 +1,14 @@
|
||||
ansible-core==2.16.1
|
||||
ansible-lint==6.15.0
|
||||
ansible-runner==2.3.4
|
||||
awxkit==23.5.1
|
||||
awxkit==23.6.0
|
||||
# Required for community.general.gitlab_*
|
||||
python_gitlab==3.14.0
|
||||
python_gitlab==4.3.0
|
||||
# community.postgresql
|
||||
psycopg2==2.9.9
|
||||
# community.mysql
|
||||
PyMySQL==1.1.0
|
||||
|
||||
dnspython
|
||||
dnspython==2.4.2
|
||||
|
||||
xmltodict==0.13.0
|
||||
xmltodict==0.13.0
|
||||
|
Reference in New Issue
Block a user