blob: 097710d14db9c82322be65607701d755bd2dd6fe [file] [log] [blame] [edit]
# Copyright (c) 2024 VEXXHOST, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
- hosts: "{{ target | default('all') }}"
become: true
roles:
- role: defaults
- role: sysctl
tags:
- sysctl
- role: ethtool
tags:
- ethtool
# NOTE(fitbeard) networkd-dispatcher is not available for EL distros
when: ansible_facts['os_family'] in ['Debian']
post_tasks:
- name: Set a fact with the "atmosphere_images" for other plays
ansible.builtin.set_fact:
atmosphere_images: "{{ atmosphere_images }}"
tags:
- always
- hosts: "{{ target | default('all') }}"
become: true
gather_facts: false
tasks:
- name: Install PIP
ansible.builtin.package:
name: python3-pip
# (rico) there is dependency isuse with pyopenssl and cryptography before 22.1.0
# This make sure we have consist dependency between them.
- name: Upgrade pyopenssl in pip
ansible.builtin.pip:
name:
- pyopenssl>=22.1.0
extra_args: --upgrade
- import_playbook: vexxhost.kubernetes.site
vars:
keepalived_image: "{{ atmosphere_images['keepalived'] }}"
keepalived_vrid: "{{ kubernetes_keepalived_vrid }}"
keepalived_interface: "{{ kubernetes_keepalived_interface }}"
keepalived_vip: "{{ kubernetes_keepalived_vip }}"
haproxy_image: "{{ atmosphere_images['haproxy'] }}"
containerd_pause_image: "{{ atmosphere_images['pause'] }}"
kubernetes_image_repository: "{{ atmosphere_images['kube_apiserver'] | vexxhost.kubernetes.docker_image('prefix') }}"
cilium_node_image: "{{ atmosphere_images['cilium_node'] }}"
cilium_operator_image: "{{ atmosphere_images['cilium_operator'] }}"
kube_vip_image: "{{ atmosphere_images['kube_vip'] }}"
- hosts: "{{ target | default('all') }}"
become: true
roles:
- role: vexxhost.atmosphere.kubernetes_node_labels
tags:
- kubernetes-node-labels
# NOTE(mnaser): Add task to uninstall "unattended-upgrades" to avoid system
# upgrades during the deployment
- hosts: "{{ target | default('all') }}"
become: true
gather_facts: false
tasks:
- name: Uninstall unattended-upgrades
ansible.builtin.package:
name: unattended-upgrades
state: absent