diff --git a/Dockerfile b/Dockerfile index ddf1fe8..ca30164 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,54 +1,40 @@ -FROM debian:11-slim +FROM python:3.11-slim -ENV VERSION_ANSIBLE=6.5.0 \ +ENV VERSION_ANSIBLE=8.1.0 \ VERSION_CT=0.9.0 \ - VERSION_HELM=3.10.1 \ - CLOUD_SDK_VERSION=406.0.0 + VERSION_HELM=3.12.2 \ + CLOUD_SDK_VERSION=438.0.0 ENV PATH /google-cloud-sdk/bin:$PATH RUN set -x \ && apt-get update \ && apt-get install --yes --no-install-recommends \ - apt-transport-https \ ca-certificates \ curl \ - gnupg2 \ - software-properties-common \ - && curl -fsSL https://download.docker.com/linux/debian/gpg | apt-key add - \ - && add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/debian buster stable" \ - && apt-get update \ - && apt-get install --yes --no-install-recommends \ connect-proxy \ - docker-ce \ git \ make \ openssh-client \ - python3 \ - python3-pip \ - python3-setuptools \ - python3-wheel \ rsync \ && apt clean \ && apt autoclean \ - && ln -s /usr/bin/python3 /usr/bin/python \ - && ln -s /usr/bin/python3-config /usr/bin/python-config \ - && ln -s /usr/bin/python3-doc /usr/bin/python-doc \ && curl -O https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-${CLOUD_SDK_VERSION}-linux-x86_64.tar.gz \ && tar xzf google-cloud-sdk-${CLOUD_SDK_VERSION}-linux-x86_64.tar.gz \ && rm google-cloud-sdk-${CLOUD_SDK_VERSION}-linux-x86_64.tar.gz \ && gcloud config set core/disable_usage_reporting true \ && gcloud config set component_manager/disable_update_check true \ && gcloud config set metrics/environment github_docker_image \ + && gcloud components install gke-gcloud-auth-plugin \ && gcloud --version \ && curl -fsSL https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3 | bash -s -- --version "v${VERSION_HELM}" \ && python3 -m pip install --upgrade pip \ - && python3 -m pip install ansible==${VERSION_ANSIBLE} Jinja2==3.0.1 netaddr==0.8.0 humanfriendly==9.2 kubernetes==24.2.0 paramiko==2.11.0 pyjwt==2.6.0 \ + && python3 -m pip install ansible==${VERSION_ANSIBLE} Jinja2==3.0.1 netaddr==0.8.0 humanfriendly==9.2 kubernetes==25.3.0 pyjwt==2.6.0 passlib==1.7.4 \ && curl -Lo ct https://github.com/coreos/container-linux-config-transpiler/releases/download/v${VERSION_CT}/ct-v${VERSION_CT}-x86_64-unknown-linux-gnu \ && chmod +x ct \ && mv ct /usr/local/bin/ \ - && curl -fsSL https://dl.minio.io/client/mc/release/linux-amd64/mc -o /usr/local/bin/mc \ - && chmod +x /usr/local/bin/mc \ && rm -rf /var/cache/apt/* /tmp/* +COPY ansible.cfg /etc/ansible/ansible.cfg + ENTRYPOINT [] diff --git a/ansible.cfg b/ansible.cfg new file mode 100644 index 0000000..f6f1997 --- /dev/null +++ b/ansible.cfg @@ -0,0 +1,14 @@ +[defaults] +retry_files_enabled = false +force_color = true +host_key_checking = false +stdout_callback = yaml +jinja2_native = true +transport = ssh +timeout = 30 + +[ssh_connection] +retries=3 +ssh_executable = /usr/bin/ssh +ssh_args = -C -o ControlMaster=auto -o ControlPersist=60s -o StrictHostKeyChecking=no +pipelining = True