diff --git a/Dockerfile b/Dockerfile index df479209..c393355c 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,5 +1,5 @@ # syntax=docker/dockerfile:experimental -FROM ubuntu:22.04 as baseline +FROM ubuntu:22.04 AS baseline RUN apt-get update && apt-get upgrade -y \ && apt-get install --no-install-recommends -y python3 python3-dev python3-pip curl unzip apt-transport-https ca-certificates gnupg \ @@ -8,8 +8,8 @@ RUN apt-get update && apt-get upgrade -y \ && update-alternatives --install /usr/bin/python python /usr/bin/python3 1 \ && update-alternatives --install /usr/bin/pip pip /usr/bin/pip3 1 -FROM baseline as tool_builder -ARG kubectl_version=1.29.7 +FROM baseline AS tool_builder +ARG kubectl_version=1.29.8 WORKDIR /build @@ -17,9 +17,9 @@ RUN curl -sLO https://storage.googleapis.com/kubernetes-release/release/v$kubect # Installation FROM baseline -ARG helm_version=3.15.2 -ARG aws_cli_version=2.16.5 -ARG gcp_cli_version=479.0.0-0 +ARG helm_version=3.16.2 +ARG aws_cli_version=2.17.58 +ARG gcp_cli_version=496.0.0-0 # Add extra packages RUN apt-get update && apt-get install --no-install-recommends -y gzip wget git jq ssh sshpass skopeo rsync \ diff --git a/docs/user/Dependencies.md b/docs/user/Dependencies.md index 0ca950b8..950fd686 100644 --- a/docs/user/Dependencies.md +++ b/docs/user/Dependencies.md @@ -4,31 +4,31 @@ If your environment requires validated support for a specific version or range o The following list details our dependencies and versions (~ indicates multiple possible sources): -| SOURCE | NAME | VERSION | -|----------------|------------------|-------------| -| ~ | python | >=3.10 | -| ~ | pip | 3.x | -| ~ | unzip | any | -| ~ | tar | any | -| ~ | docker | >=25.0.3 | -| ~ | git | any | -| ~ | rsync | any | -| ~ | kubectl | 1.28 - 1.30 | -| ~ | Helm | 3.14.2 | -| pip3 | ansible | 9.2.0 | -| pip3 | openshift | 0.13.2 | -| pip3 | kubernetes | 27.2.0 | -| pip3 | dnspython | 2.6.1 | -| pip3 | docker | 7.1.0 | -| pip3 | urllib3 | 1.26.18 | -| ansible-galaxy | community.docker | 3.10.3 | -| ansible-galaxy | ansible.utils | 3.1.0 | -| ansible-galaxy | kubernetes.core | 3.0.0 | +| SOURCE | NAME | VERSION | +|----------------|------------------|--------------| +| ~ | python | >=3.10 | +| ~ | pip | 3.x | +| ~ | unzip | any | +| ~ | tar | any | +| ~ | docker | >=25.0.3 | +| ~ | git | any | +| ~ | rsync | any | +| ~ | kubectl | 1.28 - 1.30 | +| ~ | Helm | 3.16.2 | +| pip3 | ansible | 10.5.0 | +| pip3 | openshift | 0.13.2 | +| pip3 | kubernetes | 29.0.0 | +| pip3 | dnspython | 2.7.0 | +| pip3 | docker | 7.1.0 | +| pip3 | urllib3 | 2.2.3 | +| ansible-galaxy | community.docker | 3.13.0 | +| ansible-galaxy | ansible.utils | 5.1.2 | +| ansible-galaxy | kubernetes.core | 5.0.0 | If you are using a provider based kubeconfig file created by viya4-iac-gcp:4.5.0 or newer, install these dependencies: | SOURCE | NAME | VERSION | |----------------|-------------------------|-------------| -| ~ | gcloud | 472.0.0 | +| ~ | gcloud | 496.0.0 | | ~ | gcloud-gke-auth-plugin | >= 0.5.2 | Required project dependencies are generally pinned to known working or stable versions to ensure users have a smooth initial experience. In some cases it may be required to change the default version of a dependency. In such cases users are welcome to experiment with alternate versions, however compatibility may not be guaranteed. @@ -49,7 +49,7 @@ As described in the [Docker Installation](./DockerUsage.md) section add addition ```bash # Override kubectl version docker build \ - --build-arg kubectl_version=1.29.7 \ + --build-arg kubectl_version=1.29.8 \ -t viya4-deployment . ``` diff --git a/requirements.txt b/requirements.txt index c84a323f..0a681ba9 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,8 +1,8 @@ -ansible==9.6.0 # 9.2.0 # 9.1.0 # 8.6.0 # 2.10.7 +ansible==10.5.0 # 9.6.0 # 9.2.0 # 9.1.0 # 8.6.0 # 2.10.7 openshift==0.13.2 # 0.13.1 # 0.12.0 -kubernetes==27.2.0 # 26.1.0 # 12.0.1 -dnspython==2.6.1 # 2.3.0 # 2.1.0 +kubernetes==29.0.0 # 27.2.0 # 26.1.0 # 12.0.1 +dnspython==2.7.0 # 2.6.1 # 2.3.0 # 2.1.0 docker==7.1.0 # 7.0.0 # 5.0.3 -urllib3==1.26.18 -wheel>=0.38.1 -setuptools>=65.5.1 +urllib3==2.2.3 # 1.26.18 +wheel>=0.44.0 # 0.38.1 +setuptools>=75.1.0 # 65.5.1 diff --git a/requirements.yaml b/requirements.yaml index fa944b26..f2c893ea 100644 --- a/requirements.yaml +++ b/requirements.yaml @@ -1,8 +1,8 @@ --- collections: - name: ansible.utils - version: 4.1.0 # 3.1.0 # 2.3.0 + version: 5.1.2 # 4.1.0 # 3.1.0 # 2.3.0 - name: community.docker - version: 3.10.3 # 3.8.0 # 2.7.8 + version: 3.13.0 # 3.10.3 # 3.8.0 # 2.7.8 - name: kubernetes.core - version: 3.0.0 # 2.3.2 + version: 5.0.0 # 3.0.0 # 2.3.2 diff --git a/roles/common/tasks/main.yaml b/roles/common/tasks/main.yaml index 3bc4b194..5294bf12 100644 --- a/roles/common/tasks/main.yaml +++ b/roles/common/tasks/main.yaml @@ -256,30 +256,6 @@ - tfstate.cluster_api_mode is defined - tfstate.cluster_api_mode.value|length > 0 - V4_CFG_INGRESS_MODE is not defined - - name: tfstate - azure message broker host # noqa: name[casing] - set_fact: - V4_CFG_MESSAGE_BROKER_HOST: "{{ tfstate.message_broker_hostname.value }}" - when: - - PROVIDER == "azure" - - tfstate.message_broker_hostname is defined - - tfstate.message_broker_hostname.value|length > 0 - - V4_CFG_MESSAGE_BROKER_HOST is not defined - - name: tfstate - azure message broker name # noqa: name[casing] - set_fact: - V4_CFG_MESSAGE_BROKER_NAME: "{{ tfstate.message_broker_name.value }}" - when: - - PROVIDER == "azure" - - tfstate.message_broker_name is defined - - tfstate.message_broker_name.value|length > 0 - - V4_CFG_MESSAGE_BROKER_NAME is not defined - - name: tfstate - azure message broker primary_key # noqa: name[casing] - set_fact: - V4_CFG_MESSAGE_BROKER_PASSWORD: "{{ tfstate.message_broker_primary_key.value }}" - when: - - PROVIDER == "azure" - - tfstate.message_broker_primary_key is defined - - tfstate.message_broker_primary_key.value|length > 0 - - V4_CFG_MESSAGE_BROKER_PASSWORD is not defined - name: tfstate - set tfstate to empty string # noqa: name[casing] set_fact: tfstate: "" diff --git a/roles/vdm/defaults/main.yaml b/roles/vdm/defaults/main.yaml index 1df50dc7..028031f6 100644 --- a/roles/vdm/defaults/main.yaml +++ b/roles/vdm/defaults/main.yaml @@ -106,12 +106,6 @@ V4_DEPLOYMENT_OPERATOR_CRB: sasoperator ## Setting true enables using custom du for below the line testing V4_CFG_BELOW_THE_LINE: false -## Message Broker - Experimental -V4_CFG_MESSAGE_BROKER_ENABLE: false -V4_CFG_MESSAGE_BROKER_HOST: null -V4_CFG_MESSAGE_BROKER_NAME: null -V4_CFG_MESSAGE_BROKER_PASSWORD: null - ## SAS Workload Orchestrator V4_WORKLOAD_ORCHESTRATOR_ENABLED: true diff --git a/roles/vdm/tasks/main.yaml b/roles/vdm/tasks/main.yaml index b3fcb44f..4892df22 100644 --- a/roles/vdm/tasks/main.yaml +++ b/roles/vdm/tasks/main.yaml @@ -204,16 +204,6 @@ - uninstall - update -- name: Include Message broker - include_tasks: message_broker.yaml - when: - - PROVIDER == "azure" - - V4_CFG_MESSAGE_BROKER_ENABLE - tags: - - install - - uninstall - - update - - name: Include Kustomize include_tasks: kustomize.yaml tags: diff --git a/roles/vdm/tasks/message_broker.yaml b/roles/vdm/tasks/message_broker.yaml deleted file mode 100644 index 18a23c8c..00000000 --- a/roles/vdm/tasks/message_broker.yaml +++ /dev/null @@ -1,86 +0,0 @@ -# Copyright © 2020-2024, SAS Institute Inc., Cary, NC, USA. All Rights Reserved. -# SPDX-License-Identifier: Apache-2.0 - ---- -- name: Message Broker - check sitedefault.yaml exists - stat: - path: "{{ DEPLOY_DIR }}/site-config/sitedefault.yaml" - register: stat_result - tags: - - install - - uninstall - - update - -- name: Message Broker - check message broker values present - ansible.builtin.fail: - msg: > - Message Broker - Azure Service Bus enabled but one or all of the expected variables: - V4_CFG_MESSAGE_BROKER_HOST, V4_CFG_MESSAGE_BROKER_NAME and V4_CFG_MESSAGE_BROKER_PASSWORD are missing. - when: - - V4_CFG_MESSAGE_BROKER_HOST is none or V4_CFG_MESSAGE_BROKER_NAME is none or V4_CFG_MESSAGE_BROKER_PASSWORD is none - tags: - - install - - uninstall - - update - -- name: Update site-default with message broker details - lineinfile: - path: "{{ DEPLOY_DIR }}/site-config/sitedefault.yaml" - line: "{{ item.line }}" - state: present - insertafter: EOF - with_items: - - { line: 'config/application/sas.event.arke.broker/type: {{ PROVIDER }}' } - - { line: 'config/application/sas.event.arke.broker/host: {{ V4_CFG_MESSAGE_BROKER_HOST }}' } - - { line: 'config/application/sas.event.arke.broker/port: 8000' } - - { line: 'config/application/sas.event.arke.broker/username: {{ V4_CFG_MESSAGE_BROKER_NAME }}' } - - { line: 'config/application/sas.event.arke.broker/password: {{ V4_CFG_MESSAGE_BROKER_PASSWORD }}' } - when: stat_result.stat.exists - tags: - - install - - uninstall - - update - -- name: Message Broker - check Rabbitmq configuration file is present - stat: - path: "{{ DEPLOY_DIR }}/sas-bases/examples/rabbitmq/configuration/rabbitmq-node-count.yaml" - register: rabbitmq_config - tags: - - install - - uninstall - - update - -- name: Message Broker - copy rabbitmq config file - copy: - src: "{{ DEPLOY_DIR }}/sas-bases/examples/rabbitmq/configuration/rabbitmq-node-count.yaml" - dest: "{{ role_path }}/templates/transformers/rabbitmq-node-count.yaml" - mode: "0660" - when: rabbitmq_config.stat.exists - tags: - - install - - uninstall - - update - -- name: Message Broker - scale Rabbitmq to 0 replicas - replace: - path: "{{ role_path }}/templates/transformers/rabbitmq-node-count.yaml" - regexp: "{% raw %}{{ NUMBER-OF-NODES }}{% endraw %}" - replace: "0" - when: rabbitmq_config.stat.exists - tags: - - install - - uninstall - - update - -- name: Message Broker - add resource - overlay_facts: - cadence_name: "{{ V4_CFG_CADENCE_NAME }}" - cadence_number: "{{ V4_CFG_CADENCE_VERSION }}" - existing: "{{ vdm_overlays }}" - add: - - { transformers: "rabbitmq-node-count.yaml", vdm: true} - when: rabbitmq_config.stat.exists - tags: - - install - - uninstall - - update diff --git a/roles/vdm/tasks/workload_orchestrator.yaml b/roles/vdm/tasks/workload_orchestrator.yaml index ac477d50..3810b430 100644 --- a/roles/vdm/tasks/workload_orchestrator.yaml +++ b/roles/vdm/tasks/workload_orchestrator.yaml @@ -23,7 +23,8 @@ cadence_number: "{{ V4_CFG_CADENCE_VERSION }}" existing: "{{ vdm_overlays }}" add: - - { transformers: examples/sas-workload-orchestrator/enable-disable/sas-workload-orchestrator-disable-patch-transformer.yaml, min: "2023.08", vdm: false } + - { transformers: examples/sas-workload-orchestrator/enable-disable/sas-workload-orchestrator-disable-patch-transformer.yaml, min: "2023.08", max: "2024.06", vdm: false } + - { transformers: overlays/sas-workload-orchestrator/enable-disable/sas-workload-orchestrator-disable-patch-transformer.yaml, min: "2024.07", vdm: false } when: - not V4_WORKLOAD_ORCHESTRATOR_ENABLED tags: