Adding on Nexus3 proxies and adjusting for ansible collections

This commit is contained in:
James Jones
2023-10-01 15:54:13 +00:00
parent db4d816ec8
commit 684039c744
2 changed files with 18 additions and 10 deletions

View File

@@ -20,13 +20,12 @@ stages:
.shared_resources: .shared_resources:
script: &build_push script: &build_push
- docker login -u "$REGISTRY_USER" -p "$REGISTRY_PASSWORD" $REGISTRY - podman login -u "$REGISTRY_USER" -p "$REGISTRY_PASSWORD" $REGISTRY
- export REGISTRY_IMAGE_LOWER=$(echo "$REGISTRY_IMAGE" | tr '[:upper:]' '[:lower:]') - export REGISTRY_IMAGE_LOWER=$(echo "$REGISTRY_IMAGE" | tr '[:upper:]' '[:lower:]')
- docker build --pull -t "$REGISTRY_IMAGE_LOWER:$IMAGE_TAG" --build-arg ARTIFACTORY=$HOME_NEXUS_DOCKER_REGISTRY_PROXY . - podman build --pull -t "$REGISTRY_IMAGE_LOWER:$IMAGE_TAG" --build-arg ARTIFACTORY=$HOME_NEXUS_DOCKER_REGISTRY_PROXY .
- docker push "$REGISTRY_IMAGE_LOWER:$IMAGE_TAG" - podman push "$REGISTRY_IMAGE_LOWER:$IMAGE_TAG"
before_script: &before_auth before_script: &before_auth
- dnf install -y podman-docker - podman login -u "$HOME_NEXUS_DOCKER_USER" -p "$HOME_NEXUS_DOCKER_PASSWORD" $HOME_NEXUS_DOCKER_REGISTRY_PROXY
- docker login -u "$HOME_NEXUS_DOCKER_USER" -p "$HOME_NEXUS_DOCKER_PASSWORD" $HOME_NEXUS_DOCKER_REGISTRY_PROXY
build:prereleases: build:prereleases:
stage: dind-build stage: dind-build
@@ -58,8 +57,8 @@ build:releases:
script: script:
- export IMAGE_TAG=$CI_COMMIT_TAG - export IMAGE_TAG=$CI_COMMIT_TAG
- *build_push - *build_push
- docker tag "$REGISTRY_IMAGE_LOWER:$IMAGE_TAG" "$REGISTRY_IMAGE_LOWER:latest" - podman tag "$REGISTRY_IMAGE_LOWER:$IMAGE_TAG" "$REGISTRY_IMAGE_LOWER:latest"
- docker push "$REGISTRY_IMAGE_LOWER:latest" - podman push "$REGISTRY_IMAGE_LOWER:latest"
only: only:
refs: refs:
- tags - tags

View File

@@ -6,17 +6,18 @@ FROM ${ARTIFACTORY}/podman/stable:latest
RUN dnf install -y podman-docker buildah skopeo \ RUN dnf install -y podman-docker buildah skopeo \
util-linux ansible-core openssh-clients krb5-devel krb5-libs krb5-workstation git jq wget curl unzip coreutils \ util-linux ansible-core openssh-clients krb5-devel krb5-libs krb5-workstation git jq wget curl unzip coreutils \
helm doctl kubernetes-client gnupg2 pinentry expect gh awscli \ helm doctl kubernetes-client gnupg2 pinentry expect gh awscli \
python3-jsonpatch python3-requests-oauthlib python3-kubernetes \ python3-jsonpatch python3-requests-oauthlib python3-kubernetes python3-pip \
&& rpm --import https://packages.microsoft.com/keys/microsoft.asc \ && rpm --import https://packages.microsoft.com/keys/microsoft.asc \
&& dnf install -y https://packages.microsoft.com/config/rhel/9.0/packages-microsoft-prod.rpm \ && dnf install -y https://packages.microsoft.com/config/rhel/9.0/packages-microsoft-prod.rpm \
&& dnf install -y azure-cli \ && dnf install -y azure-cli \
&& dnf install -y rpm-build rpm-sign rubygems ruby-devel gcc gcc-c++ make libffi-devel \ && dnf install -y rpm-build rpm-sign rubygems ruby-devel gcc gcc-c++ make libffi-devel \
&& dnf install -y ansible-collection* \
&& dnf clean all \ && dnf clean all \
&& rm -rf /var/cache/yum \ && rm -rf /var/cache/yum \
&& wget https://github.com/mikefarah/yq/releases/latest/download/yq_linux_amd64 -O /usr/bin/yq \ && wget https://github.com/mikefarah/yq/releases/latest/download/yq_linux_amd64 -O /usr/bin/yq \
&& chmod +x /usr/bin/yq \ && chmod +x /usr/bin/yq \
&& curl --silent --location "https://github.com/weaveworks/eksctl/releases/latest/download/eksctl_$(uname -s)_amd64.tar.gz" | tar xz -C /tmp \ && curl --silent --location "https://github.com/weaveworks/eksctl/releases/latest/download/eksctl_$(uname -s)_amd64.tar.gz" | tar xz -C /tmp \
&& sudo mv /tmp/eksctl /usr/bin \ && mv /tmp/eksctl /usr/bin \
&& touch /etc/containers/nodocker && touch /etc/containers/nodocker
# Adding some Ansible Key and Timeout setting as well as accepting ssh-rsa # Adding some Ansible Key and Timeout setting as well as accepting ssh-rsa
@@ -28,6 +29,14 @@ RUN chown root:root /etc/ssh/ssh_config.d/99-ansible.conf && chmod 644 /etc/ssh/
# Ensuring the fpm tool is installed to build distro packages such as RPM and DEB # Ensuring the fpm tool is installed to build distro packages such as RPM and DEB
COPY rpm-sign-expect /usr/bin COPY rpm-sign-expect /usr/bin
RUN curl -k -s -o - \
https://nexus.jamesjonesconsulting.com/repository/package-config/rubygems/rubygems-repos.sh |\
bash
RUN gem install ffi \ RUN gem install ffi \
&& gem install fpm \ && gem install fpm \
&& chmod +x /usr/bin/rpm-sign-expect && chmod +x /usr/bin/rpm-sign-expect
# Setting up Pypi to use proxy
RUN curl -k -s -o - \
https://nexus.jamesjonesconsulting.com/repository/package-config/pypi/python3-pypi-repos.sh |\
bash