From 4142a9db6125580bd5484b62b12f2cfe7f735498 Mon Sep 17 00:00:00 2001 From: George Stykalin Date: Sun, 22 Jun 2025 00:37:47 +0300 Subject: [PATCH] kube-forge v2: embede python with ansible (kubespray) and cobra as cli building tool --- .gitignore | 1 + Makefile | 3 +- README.md | 24 +- cmd/apply-modules.go | 20 + cmd/apply.go | 22 + cmd/main/main.go | 49 +-- cmd/reset.go | 21 + cmd/root.go | 44 ++ cmd/scale.go | 21 + cmd/upgrade.go | 21 + cmd/utils.go | 15 + config.sample.yaml | 59 +-- go.mod | 158 +++---- go.sum | 402 ++++++++---------- internal/config/ansible_playbook_config.go | 2 +- internal/config/config.go | 41 +- internal/config/helm.go | 5 +- internal/config/kubernetes.go | 21 - internal/config/orchestrator.go | 6 +- internal/files/main.go | 30 ++ internal/kubernetes_client/errors.go | 5 - internal/kubernetes_client/pod.go | 101 ----- internal/kubespray/cluster.go | 2 - internal/kubespray/utility.go | 51 ++- internal/python/generate/main.go | 27 ++ internal/python/main.go | 3 + internal/python/requirements.txt | 4 + internal/python/utils.go | 161 +++++++ .../kubespray}/project/ansible_version.yml | 16 +- .../kubespray}/project/boilerplate.yml | 0 .../resources/kubespray}/project/cluster.yml | 0 .../resources/kubespray}/project/facts.yml | 0 .../kubespray}/project/install_etcd.yml | 0 .../kubespray}/project/library/kube.py | 0 .../kubespray}/project/modules/kube.py | 0 .../project/recover_control_plane.yml | 0 .../kubespray}/project/remove_node.yml | 0 .../resources/kubespray/project/reset.yml | 24 ++ .../project/roles/adduser/defaults/main.yml | 0 .../adduser/molecule/default/converge.yml | 0 .../adduser/molecule/default/molecule.yml | 0 .../project/roles/adduser/tasks/main.yml | 0 .../project/roles/adduser/vars/coreos.yml | 0 .../project/roles/adduser/vars/debian.yml | 0 .../project/roles/adduser/vars/redhat.yml | 0 .../bastion-ssh-config/defaults/main.yml | 0 .../molecule/default/converge.yml | 0 .../molecule/default/molecule.yml | 0 .../roles/bastion-ssh-config/tasks/main.yml | 0 .../templates/ssh-bastion.conf.j2 | 0 .../project/roles/bootstrap-os/tasks/main.yml | 0 .../roles/bootstrap_os/defaults/main.yml | 0 .../roles/bootstrap_os/files/bootstrap.sh | 0 .../roles/bootstrap_os/handlers/main.yml | 0 .../project/roles/bootstrap_os/meta/main.yml | 0 .../molecule/default/converge.yml | 0 .../molecule/default/molecule.yml | 0 .../molecule/default/tests/test_default.py | 0 .../project/roles/bootstrap_os/tasks/amzn.yml | 0 .../roles/bootstrap_os/tasks/centos.yml | 0 .../bootstrap_os/tasks/clear-linux-os.yml | 0 .../roles/bootstrap_os/tasks/debian.yml | 0 .../bootstrap_os/tasks/fedora-coreos.yml | 0 .../roles/bootstrap_os/tasks/fedora.yml | 0 .../roles/bootstrap_os/tasks/flatcar.yml | 0 .../project/roles/bootstrap_os/tasks/main.yml | 0 .../roles/bootstrap_os/tasks/openEuler.yml | 0 .../bootstrap_os/tasks/opensuse-leap.yml | 0 .../tasks/opensuse-tumbleweed.yml | 0 .../roles/bootstrap_os/tasks/opensuse.yml | 0 .../project/roles/bootstrap_os/tasks/rhel.yml | 0 .../roles/bootstrap_os/tasks/ubuntu.yml | 0 .../roles/bootstrap_os/vars/fedora-coreos.yml | 0 .../roles/bootstrap_os/vars/flatcar.yml | 0 .../containerd-common/defaults/main.yml | 0 .../containerd-common/meta/main.yml | 0 .../containerd-common/tasks/main.yml | 0 .../containerd-common/vars/amazon.yml | 0 .../containerd-common/vars/suse.yml | 0 .../containerd/defaults/main.yml | 0 .../containerd/handlers/main.yml | 0 .../containerd/handlers/reset.yml | 0 .../container-engine/containerd/meta/main.yml | 0 .../containerd/molecule/default/converge.yml | 0 .../containerd/molecule/default/molecule.yml | 0 .../containerd/molecule/default/prepare.yml | 0 .../molecule/default/tests/test_default.py | 0 .../containerd/tasks/main.yml | 0 .../containerd/tasks/reset.yml | 0 .../containerd/templates/config-v1.toml.j2 | 0 .../containerd/templates/config.toml.j2 | 0 .../templates/containerd.service.j2 | 0 .../containerd/templates/hosts.toml.j2 | 0 .../containerd/templates/http-proxy.conf.j2 | 0 .../cri-dockerd/defaults/main.yml | 0 .../cri-dockerd/handlers/main.yml | 0 .../cri-dockerd/meta/main.yml | 0 .../cri-dockerd/molecule/default/converge.yml | 0 .../molecule/default/files/10-mynet.conf | 0 .../molecule/default/files/container.json | 0 .../molecule/default/files/sandbox.json | 0 .../cri-dockerd/molecule/default/molecule.yml | 0 .../cri-dockerd/molecule/default/prepare.yml | 0 .../molecule/default/tests/test_default.py | 0 .../cri-dockerd/tasks/main.yml | 0 .../templates/cri-dockerd.service.j2 | 0 .../templates/cri-dockerd.socket.j2 | 0 .../container-engine/cri-o/defaults/main.yml | 0 .../container-engine/cri-o/files/mounts.conf | 0 .../container-engine/cri-o/handlers/main.yml | 0 .../container-engine/cri-o/meta/main.yml | 0 .../cri-o/molecule/default/converge.yml | 0 .../molecule/default/files/10-mynet.conf | 0 .../molecule/default/files/container.json | 0 .../cri-o/molecule/default/files/sandbox.json | 0 .../cri-o/molecule/default/molecule.yml | 0 .../cri-o/molecule/default/prepare.yml | 0 .../molecule/default/tests/test_default.py | 0 .../cri-o/tasks/load_vars.yml | 0 .../container-engine/cri-o/tasks/main.yaml | 0 .../container-engine/cri-o/tasks/reset.yml | 0 .../cri-o/tasks/setup-amazon.yaml | 0 .../cri-o/templates/config.json.j2 | 0 .../cri-o/templates/crio.conf.j2 | 0 .../cri-o/templates/http-proxy.conf.j2 | 0 .../cri-o/templates/registry.conf.j2 | 0 .../cri-o/templates/unqualified.conf.j2 | 0 .../container-engine/cri-o/vars/v1.29.yml | 0 .../container-engine/cri-o/vars/v1.31.yml | 0 .../container-engine/crictl/handlers/main.yml | 0 .../container-engine/crictl/tasks/crictl.yml | 0 .../container-engine/crictl/tasks/main.yml | 0 .../crictl/templates/crictl.yaml.j2 | 0 .../container-engine/crun/tasks/main.yml | 0 .../container-engine/docker/defaults/main.yml | 0 .../docker/files/cleanup-docker-orphans.sh | 0 .../container-engine/docker/handlers/main.yml | 0 .../container-engine/docker/meta/main.yml | 0 .../docker/tasks/docker_plugin.yml | 0 .../container-engine/docker/tasks/main.yml | 0 .../docker/tasks/pre-upgrade.yml | 0 .../container-engine/docker/tasks/reset.yml | 0 .../docker/tasks/set_facts_dns.yml | 0 .../container-engine/docker/tasks/systemd.yml | 0 .../docker/templates/docker-dns.conf.j2 | 0 .../docker/templates/docker-options.conf.j2 | 0 .../templates/docker-orphan-cleanup.conf.j2 | 0 .../docker/templates/docker.service.j2 | 0 .../docker/templates/fedora_docker.repo.j2 | 0 .../docker/templates/http-proxy.conf.j2 | 0 .../docker/templates/rh_docker.repo.j2 | 0 .../container-engine/docker/vars/amazon.yml | 0 .../docker/vars/clearlinux.yml | 0 .../container-engine/docker/vars/debian.yml | 0 .../container-engine/docker/vars/fedora.yml | 0 .../container-engine/docker/vars/kylin.yml | 0 .../docker/vars/openeuler.yml | 66 +++ .../container-engine/docker/vars/redhat.yml | 0 .../container-engine/docker/vars/suse.yml | 0 .../container-engine/docker/vars/ubuntu.yml | 0 .../docker/vars/uniontech.yml | 0 .../gvisor/molecule/default/converge.yml | 0 .../molecule/default/files/10-mynet.conf | 0 .../molecule/default/files/container.json | 0 .../molecule/default/files/sandbox.json | 0 .../gvisor/molecule/default/molecule.yml | 0 .../gvisor/molecule/default/prepare.yml | 0 .../molecule/default/tests/test_default.py | 0 .../container-engine/gvisor/tasks/main.yml | 0 .../kata-containers/defaults/main.yml | 0 .../molecule/default/converge.yml | 0 .../molecule/default/files/10-mynet.conf | 0 .../molecule/default/files/container.json | 0 .../molecule/default/files/sandbox.json | 0 .../molecule/default/molecule.yml | 0 .../molecule/default/prepare.yml | 0 .../molecule/default/tests/test_default.py | 0 .../kata-containers/tasks/main.yml | 0 .../templates/configuration-qemu.toml.j2 | 0 .../templates/containerd-shim-kata-v2.j2 | 0 .../roles/container-engine/meta/main.yml | 0 .../nerdctl/handlers/main.yml | 0 .../container-engine/nerdctl/tasks/main.yml | 0 .../nerdctl/templates/nerdctl.toml.j2 | 0 .../container-engine/runc/defaults/main.yml | 0 .../container-engine/runc/tasks/main.yml | 0 .../container-engine/skopeo/tasks/main.yml | 0 .../validate-container-engine/tasks/main.yml | 0 .../container-engine/youki/defaults/main.yml | 0 .../youki/molecule/default/converge.yml | 0 .../molecule/default/files/10-mynet.conf | 0 .../molecule/default/files/container.json | 0 .../youki/molecule/default/files/sandbox.json | 0 .../youki/molecule/default/molecule.yml | 0 .../youki/molecule/default/prepare.yml | 0 .../molecule/default/tests/test_default.py | 0 .../container-engine/youki/tasks/main.yml | 0 .../project/roles/download/meta/main.yml | 0 .../download/tasks/check_pull_required.yml | 0 .../download/tasks/download_container.yml | 0 .../roles/download/tasks/download_file.yml | 0 .../roles/download/tasks/extract_file.yml | 0 .../project/roles/download/tasks/main.yml | 0 .../roles/download/tasks/prep_download.yml | 0 .../download/tasks/prep_kubeadm_images.yml | 0 .../download/tasks/set_container_facts.yml | 0 .../download/templates/kubeadm-images.yaml.j2 | 0 .../project/roles/etcd/defaults/main.yml | 0 .../project/roles/etcd/handlers/backup.yml | 0 .../roles/etcd/handlers/backup_cleanup.yml | 0 .../project/roles/etcd/handlers/main.yml | 0 .../project/roles/etcd/meta/main.yml | 0 .../project/roles/etcd/tasks/check_certs.yml | 0 .../project/roles/etcd/tasks/configure.yml | 0 .../roles/etcd/tasks/gen_certs_script.yml | 0 .../etcd/tasks/gen_nodes_certs_script.yml | 0 .../roles/etcd/tasks/install_docker.yml | 0 .../project/roles/etcd/tasks/install_host.yml | 0 .../etcd/tasks/join_etcd-events_member.yml | 0 .../roles/etcd/tasks/join_etcd_member.yml | 0 .../project/roles/etcd/tasks/main.yml | 0 .../roles/etcd/tasks/refresh_config.yml | 0 .../project/roles/etcd/tasks/upd_ca_trust.yml | 0 .../etcd/templates/etcd-docker.service.j2 | 0 .../templates/etcd-events-docker.service.j2 | 0 .../templates/etcd-events-host.service.j2 | 0 .../roles/etcd/templates/etcd-events.env.j2 | 0 .../roles/etcd/templates/etcd-events.j2 | 0 .../roles/etcd/templates/etcd-host.service.j2 | 0 .../project/roles/etcd/templates/etcd.env.j2 | 0 .../project/roles/etcd/templates/etcd.j2 | 0 .../roles/etcd/templates/make-ssl-etcd.sh.j2 | 0 .../roles/etcd/templates/openssl.conf.j2 | 0 .../project/roles/etcd/vars/main.yml | 0 .../roles/etcdctl_etcdutl/tasks/main.yml | 0 .../etcdctl_etcdutl/templates/etcdctl.sh.j2 | 0 .../project/roles/helm-apps/README.md | 0 .../roles/helm-apps/meta/argument_specs.yml | 0 .../project/roles/helm-apps/meta/main.yml | 0 .../project/roles/helm-apps/tasks/main.yml | 0 .../project/roles/helm-apps/vars/main.yml | 0 .../kubernetes-apps/ansible/defaults/main.yml | 0 .../kubernetes-apps/ansible/tasks/main.yml | 0 .../templates/coredns-clusterrole.yml.j2 | 0 .../coredns-clusterrolebinding.yml.j2 | 0 .../ansible/templates/coredns-config.yml.j2 | 0 .../templates/coredns-deployment.yml.j2 | 0 .../coredns-poddisruptionbudget.yml.j2 | 0 .../ansible/templates/coredns-sa.yml.j2 | 0 .../ansible/templates/coredns-svc.yml.j2 | 0 .../ansible/templates/dashboard.yml.j2 | 0 .../dns-autoscaler-clusterrole.yml.j2 | 0 .../dns-autoscaler-clusterrolebinding.yml.j2 | 0 .../templates/dns-autoscaler-sa.yml.j2 | 0 .../ansible/templates/dns-autoscaler.yml.j2 | 0 .../templates/etcd_metrics-endpoints.yml.j2 | 0 .../templates/etcd_metrics-service.yml.j2 | 0 .../templates/netchecker-agent-ds.yml.j2 | 0 .../netchecker-agent-hostnet-ds.yml.j2 | 0 .../templates/netchecker-agent-sa.yml.j2 | 0 .../ansible/templates/netchecker-ns.yml.j2 | 0 .../netchecker-server-clusterrole.yml.j2 | 0 ...etchecker-server-clusterrolebinding.yml.j2 | 0 .../netchecker-server-deployment.yml.j2 | 0 .../templates/netchecker-server-sa.yml.j2 | 0 .../templates/netchecker-server-svc.yml.j2 | 0 .../templates/nodelocaldns-config.yml.j2 | 0 .../templates/nodelocaldns-daemonset.yml.j2 | 0 .../ansible/templates/nodelocaldns-sa.yml.j2 | 0 .../nodelocaldns-second-daemonset.yml.j2 | 0 .../kubernetes-apps/ansible/vars/main.yml | 0 .../kubernetes-apps/argocd/defaults/main.yml | 0 .../kubernetes-apps/argocd/tasks/main.yml | 0 .../argocd/templates/argocd-namespace.yml.j2 | 0 .../files/k8s-cluster-critical-pc.yml | 0 .../cluster_roles/tasks/main.yml | 0 .../cluster_roles/templates/namespace.j2 | 0 .../cluster_roles/templates/node-crb.yml.j2 | 0 .../templates/vsphere-rbac.yml.j2 | 0 .../meta/main.yml | 0 .../nvidia_gpu/defaults/main.yml | 0 .../nvidia_gpu/tasks/main.yml | 0 .../k8s-device-plugin-nvidia-daemonset.yml.j2 | 0 .../nvidia-driver-install-daemonset.yml.j2 | 0 .../nvidia_gpu/vars/ubuntu-16.yml | 0 .../nvidia_gpu/vars/ubuntu-18.yml | 0 .../container_runtimes/crun/tasks/main.yaml | 0 .../crun/templates/runtimeclass-crun.yml | 0 .../container_runtimes/gvisor/tasks/main.yaml | 0 .../templates/runtimeclass-gvisor.yml.j2 | 0 .../kata_containers/defaults/main.yaml | 0 .../kata_containers/tasks/main.yaml | 0 .../templates/runtimeclass-kata-qemu.yml.j2 | 0 .../container_runtimes/meta/main.yml | 0 .../container_runtimes/youki/tasks/main.yaml | 0 .../youki/templates/runtimeclass-youki.yml | 0 .../csi_driver/aws_ebs/defaults/main.yml | 0 .../csi_driver/aws_ebs/tasks/main.yml | 0 .../aws-ebs-csi-controllerservice-rbac.yml.j2 | 0 .../aws-ebs-csi-controllerservice.yml.j2 | 0 .../templates/aws-ebs-csi-driver.yml.j2 | 0 .../templates/aws-ebs-csi-nodeservice.yml.j2 | 0 .../csi_driver/azuredisk/defaults/main.yml | 0 .../tasks/azure-credential-check.yml | 0 .../csi_driver/azuredisk/tasks/main.yml | 0 ...azure-csi-azuredisk-controller-rbac.yml.j2 | 0 .../azure-csi-azuredisk-controller.yml.j2 | 0 .../azure-csi-azuredisk-driver.yml.j2 | 0 .../azure-csi-azuredisk-node-rbac.yml.j2 | 0 .../templates/azure-csi-azuredisk-node.yml.j2 | 0 .../azure-csi-cloud-config-secret.yml.j2 | 0 .../templates/azure-csi-cloud-config.j2 | 0 .../csi_driver/cinder/defaults/main.yml | 0 .../cinder/tasks/cinder-credential-check.yml | 0 .../cinder/tasks/cinder-write-cacert.yml | 0 .../csi_driver/cinder/tasks/main.yml | 0 .../cinder-csi-cloud-config-secret.yml.j2 | 0 .../templates/cinder-csi-cloud-config.j2 | 0 .../cinder-csi-controllerplugin-rbac.yml.j2 | 0 .../cinder-csi-controllerplugin.yml.j2 | 0 .../cinder/templates/cinder-csi-driver.yml.j2 | 0 .../cinder-csi-nodeplugin-rbac.yml.j2 | 0 .../templates/cinder-csi-nodeplugin.yml.j2 | 0 .../cinder-csi-poddisruptionbudget.yml.j2 | 0 .../csi_driver/csi_crd/tasks/main.yml | 0 .../templates/volumesnapshotclasses.yml.j2 | 0 .../templates/volumesnapshotcontents.yml.j2 | 0 .../csi_crd/templates/volumesnapshots.yml.j2 | 0 .../csi_driver/gcp_pd/defaults/main.yml | 0 .../csi_driver/gcp_pd/tasks/main.yml | 0 .../templates/gcp-pd-csi-controller.yml.j2 | 0 .../templates/gcp-pd-csi-cred-secret.yml.j2 | 0 .../gcp_pd/templates/gcp-pd-csi-node.yml.j2 | 0 .../templates/gcp-pd-csi-sc-regional.yml.j2 | 0 .../templates/gcp-pd-csi-sc-zonal.yml.j2 | 0 .../gcp_pd/templates/gcp-pd-csi-setup.yml.j2 | 0 .../csi_driver/upcloud/defaults/main.yml | 0 .../csi_driver/upcloud/tasks/main.yml | 0 .../templates/upcloud-csi-controller.yml.j2 | 0 .../templates/upcloud-csi-cred-secret.yml.j2 | 0 .../templates/upcloud-csi-driver.yml.j2 | 0 .../upcloud/templates/upcloud-csi-node.yml.j2 | 0 .../templates/upcloud-csi-setup.yml.j2 | 0 .../csi_driver/vsphere/defaults/main.yml | 0 .../csi_driver/vsphere/tasks/main.yml | 0 .../tasks/vsphere-credentials-check.yml | 0 .../templates/vsphere-csi-cloud-config.j2 | 0 .../vsphere-csi-controller-config.yml.j2 | 0 .../vsphere-csi-controller-deployment.yml.j2 | 0 .../vsphere-csi-controller-rbac.yml.j2 | 0 .../vsphere-csi-controller-service.yml.j2 | 0 .../templates/vsphere-csi-driver.yml.j2 | 0 .../templates/vsphere-csi-namespace.yml.j2 | 0 .../templates/vsphere-csi-node-rbac.yml.j2 | 0 .../vsphere/templates/vsphere-csi-node.yml.j2 | 0 .../roles/kubernetes-apps/defaults/main.yml | 0 .../hcloud/defaults/main.yml | 0 .../hcloud/tasks/main.yml | 0 ...controller-manager-ds-with-networks.yml.j2 | 0 ...-hcloud-cloud-controller-manager-ds.yml.j2 | 0 ...external-hcloud-cloud-role-bindings.yml.j2 | 0 .../external-hcloud-cloud-secret.yml.j2 | 0 ...ternal-hcloud-cloud-service-account.yml.j2 | 0 .../huaweicloud/defaults/main.yml | 0 .../tasks/huaweicloud-credential-check.yml | 0 .../huaweicloud/tasks/main.yml | 0 ...external-huawei-cloud-config-secret.yml.j2 | 0 .../templates/external-huawei-cloud-config.j2 | 0 ...-huawei-cloud-controller-manager-ds.yml.j2 | 0 ...ud-controller-manager-role-bindings.yml.j2 | 0 ...awei-cloud-controller-manager-roles.yml.j2 | 0 .../external_cloud_controller/meta/main.yml | 0 .../oci/defaults/main.yml | 0 .../oci/tasks/main.yml | 0 .../external-oci-cloud-config-secret.yml.j2 | 0 .../external-oci-cloud-config.yml.j2 | 0 ...l-oci-cloud-controller-manager-rbac.yml.j2 | 0 ...ternal-oci-cloud-controller-manager.yml.j2 | 0 .../openstack/defaults/main.yml | 0 .../openstack/tasks/main.yml | 0 .../tasks/openstack-credential-check.yml | 0 ...ernal-openstack-cloud-config-secret.yml.j2 | 0 .../external-openstack-cloud-config.j2 | 0 ...enstack-cloud-controller-manager-ds.yml.j2 | 0 ...ud-controller-manager-role-bindings.yml.j2 | 0 ...tack-cloud-controller-manager-roles.yml.j2 | 0 .../vsphere/defaults/main.yml | 0 .../vsphere/tasks/main.yml | 0 .../tasks/vsphere-credentials-check.yml | 0 ...vsphere-cloud-controller-manager-ds.yml.j2 | 0 ...ud-controller-manager-role-bindings.yml.j2 | 0 ...here-cloud-controller-manager-roles.yml.j2 | 0 ...nal-vsphere-cpi-cloud-config-secret.yml.j2 | 0 .../external-vsphere-cpi-cloud-config.j2 | 0 .../local_path_provisioner/defaults/main.yml | 0 .../local_path_provisioner/tasks/main.yml | 0 ...cal-path-storage-clusterrolebinding.yml.j2 | 0 .../templates/local-path-storage-cm.yml.j2 | 0 .../templates/local-path-storage-cr.yml.j2 | 0 .../local-path-storage-deployment.yml.j2 | 0 .../templates/local-path-storage-ns.yml.j2 | 0 .../templates/local-path-storage-sa.yml.j2 | 0 .../templates/local-path-storage-sc.yml.j2 | 0 .../defaults/main.yml | 0 .../tasks/basedirs.yml | 0 .../local_volume_provisioner/tasks/main.yml | 0 ...ocal-volume-provisioner-clusterrole.yml.j2 | 0 ...lume-provisioner-clusterrolebinding.yml.j2 | 0 .../local-volume-provisioner-cm.yml.j2 | 0 .../local-volume-provisioner-ds.yml.j2 | 0 .../local-volume-provisioner-ns.yml.j2 | 0 .../local-volume-provisioner-sa.yml.j2 | 0 .../local-volume-provisioner-sc.yml.j2 | 0 .../external_provisioner/meta/main.yml | 0 .../gateway_api/defaults/main.yml | 0 .../gateway_api/tasks/main.yml | 0 .../roles/kubernetes-apps/helm/.gitkeep | 0 .../kubernetes-apps/helm/defaults/main.yml | 0 .../roles/kubernetes-apps/helm/tasks/main.yml | 0 .../helm/tasks/pyyaml-flatcar.yml | 0 .../kubernetes-apps/helm/vars/amazon.yml | 0 .../kubernetes-apps/helm/vars/centos-7.yml | 0 .../kubernetes-apps/helm/vars/centos.yml | 0 .../kubernetes-apps/helm/vars/debian.yml | 0 .../kubernetes-apps/helm/vars/fedora.yml | 0 .../kubernetes-apps/helm/vars/redhat-7.yml | 0 .../kubernetes-apps/helm/vars/redhat.yml | 0 .../roles/kubernetes-apps/helm/vars/suse.yml | 0 .../kubernetes-apps/helm/vars/ubuntu.yml | 0 .../alb_ingress_controller/defaults/main.yml | 0 .../alb_ingress_controller/tasks/main.yml | 0 .../templates/alb-ingress-clusterrole.yml.j2 | 0 .../alb-ingress-clusterrolebinding.yml.j2 | 0 .../templates/alb-ingress-deploy.yml.j2 | 0 .../templates/alb-ingress-ns.yml.j2 | 0 .../templates/alb-ingress-sa.yml.j2 | 0 .../cert_manager/defaults/main.yml | 0 .../cert_manager/tasks/main.yml | 0 .../templates/cert-manager.crds.yml.j2 | 0 .../templates/cert-manager.yml.j2 | 0 .../ingress_nginx/defaults/main.yml | 0 .../ingress_nginx/tasks/main.yml | 0 .../templates/00-namespace.yml.j2 | 0 .../admission-webhook-configuration.yml.j2 | 0 .../templates/admission-webhook-job.yml.j2 | 0 .../clusterrole-admission-webhook.yml.j2 | 0 .../clusterrole-ingress-nginx.yml.j2 | 0 ...lusterrolebinding-admission-webhook.yml.j2 | 0 .../clusterrolebinding-ingress-nginx.yml.j2 | 0 .../templates/cm-ingress-nginx.yml.j2 | 0 .../templates/cm-tcp-services.yml.j2 | 0 .../templates/cm-udp-services.yml.j2 | 0 .../ds-ingress-nginx-controller.yml.j2 | 0 .../templates/ingressclass-nginx.yml.j2 | 0 .../templates/role-admission-webhook.yml.j2 | 0 .../templates/role-ingress-nginx.yml.j2 | 0 .../rolebinding-admission-webhook.yml.j2 | 0 .../rolebinding-ingress-nginx.yml.j2 | 0 .../templates/sa-admission-webhook.yml.j2 | 0 .../templates/sa-ingress-nginx.yml.j2 | 0 ...-ingress-nginx-controller-admission.yml.j2 | 0 .../templates/svc-ingress-nginx.yml.j2 | 0 .../ingress_controller/meta/main.yml | 0 .../kubelet-csr-approver/defaults/main.yml | 0 .../kubelet-csr-approver/meta/main.yml | 0 .../roles/kubernetes-apps/meta/main.yml | 0 .../kubernetes-apps/metallb/defaults/main.yml | 0 .../kubernetes-apps/metallb/tasks/main.yml | 0 .../metallb/templates/layer2.yaml.j2 | 0 .../metallb/templates/layer3.yaml.j2 | 0 .../metallb/templates/metallb.yaml.j2 | 0 .../metallb/templates/pools.yaml.j2 | 0 .../metrics_server/defaults/main.yml | 0 .../metrics_server/tasks/main.yml | 0 .../templates/auth-delegator.yaml.j2 | 0 .../templates/auth-reader.yaml.j2 | 0 .../templates/metrics-apiservice.yaml.j2 | 0 .../metrics-server-deployment.yaml.j2 | 0 .../templates/metrics-server-sa.yaml.j2 | 0 .../templates/metrics-server-service.yaml.j2 | 0 ...resource-reader-clusterrolebinding.yaml.j2 | 0 .../templates/resource-reader.yaml.j2 | 0 .../network_plugin/calico/tasks/main.yml | 0 .../network_plugin/flannel/tasks/main.yml | 0 .../network_plugin/kube-ovn/tasks/main.yml | 0 .../network_plugin/kube-router/tasks/main.yml | 0 .../network_plugin/meta/main.yml | 0 .../network_plugin/multus/tasks/main.yml | 0 .../network_plugin/weave/tasks/main.yml | 0 .../node_feature_discovery/defaults/main.yml | 0 .../node_feature_discovery/tasks/main.yml | 0 .../templates/nfd-api-crds.yaml.j2 | 0 .../templates/nfd-clusterrole.yaml.j2 | 0 .../templates/nfd-clusterrolebinding.yaml.j2 | 0 .../templates/nfd-gc.yaml.j2 | 0 .../templates/nfd-master-conf.yaml.j2 | 0 .../templates/nfd-master.yaml.j2 | 0 .../templates/nfd-ns.yaml.j2 | 0 .../templates/nfd-role.yaml.j2 | 0 .../templates/nfd-rolebinding.yaml.j2 | 0 .../templates/nfd-service.yaml.j2 | 0 .../templates/nfd-serviceaccount.yaml.j2 | 0 .../nfd-topologyupdater-conf.yaml.j2 | 0 .../templates/nfd-worker-conf.yaml.j2 | 0 .../templates/nfd-worker.yaml.j2 | 0 .../aws-ebs-csi/defaults/main.yml | 0 .../aws-ebs-csi/tasks/main.yml | 0 .../aws-ebs-csi-storage-class.yml.j2 | 0 .../azuredisk-csi/defaults/main.yml | 0 .../azuredisk-csi/tasks/main.yml | 0 .../templates/azure-csi-storage-class.yml.j2 | 0 .../cinder-csi/defaults/main.yml | 0 .../cinder-csi/tasks/main.yml | 0 .../templates/cinder-csi-storage-class.yml.j2 | 0 .../gcp-pd-csi/defaults/main.yml | 0 .../gcp-pd-csi/tasks/main.yml | 0 .../templates/gcp-pd-csi-storage-class.yml.j2 | 0 .../persistent_volumes/meta/main.yml | 0 .../upcloud-csi/defaults/main.yml | 0 .../upcloud-csi/tasks/main.yml | 0 .../upcloud-csi-storage-class.yml.j2 | 0 .../calico/defaults/main.yml | 0 .../policy_controller/calico/tasks/main.yml | 0 .../templates/calico-kube-controllers.yml.j2 | 0 .../calico/templates/calico-kube-cr.yml.j2 | 0 .../calico/templates/calico-kube-crb.yml.j2 | 0 .../calico/templates/calico-kube-sa.yml.j2 | 0 .../policy_controller/meta/main.yml | 0 .../registry/defaults/main.yml | 0 .../kubernetes-apps/registry/tasks/main.yml | 0 .../registry/templates/registry-cm.yml.j2 | 0 .../registry/templates/registry-ing.yml.j2 | 0 .../registry/templates/registry-ns.yml.j2 | 0 .../registry/templates/registry-pvc.yml.j2 | 0 .../registry/templates/registry-rs.yml.j2 | 0 .../registry/templates/registry-sa.yml.j2 | 0 .../templates/registry-secrets.yml.j2 | 0 .../registry/templates/registry-svc.yml.j2 | 0 .../scheduler_plugins/defaults/main.yml | 0 .../scheduler_plugins/tasks/main.yml | 0 ...appgroup.diktyo.x-k8s.io_appgroups.yaml.j2 | 0 .../templates/cm-scheduler-plugins.yaml.j2 | 0 .../deploy-scheduler-plugins.yaml.j2 | 0 .../templates/namespace.yaml.j2 | 0 ....diktyo.x-k8s.io_networktopologies.yaml.j2 | 0 .../templates/rbac-scheduler-plugins.yaml.j2 | 0 .../templates/sa-scheduler-plugins.yaml.j2 | 0 .../scheduling.x-k8s.io_elasticquotas.yaml.j2 | 0 .../scheduling.x-k8s.io_podgroups.yaml.j2 | 0 ...node.k8s.io_noderesourcetopologies.yaml.j2 | 0 .../snapshots/cinder-csi/defaults/main.yml | 0 .../snapshots/cinder-csi/tasks/main.yml | 0 .../cinder-csi-snapshot-class.yml.j2 | 0 .../kubernetes-apps/snapshots/meta/main.yml | 0 .../snapshot-controller/defaults/main.yml | 0 .../snapshot-controller/tasks/main.yml | 0 .../templates/rbac-snapshot-controller.yml.j2 | 0 .../templates/snapshot-controller.yml.j2 | 0 .../templates/snapshot-ns.yml.j2 | 0 .../roles/kubernetes-apps/vars/main.yml | 0 .../roles/kubernetes/client/defaults/main.yml | 0 .../roles/kubernetes/client/tasks/main.yml | 0 .../control-plane/defaults/main/etcd.yml | 0 .../defaults/main/kube-proxy.yml | 0 .../defaults/main/kube-scheduler.yml | 0 .../control-plane/defaults/main/main.yml | 0 .../control-plane/handlers/main.yml | 0 .../kubernetes/control-plane/meta/main.yml | 0 .../control-plane/tasks/check-api.yml | 0 .../tasks/define-first-kube-control.yml | 0 .../control-plane/tasks/encrypt-at-rest.yml | 0 .../control-plane/tasks/kubeadm-backup.yml | 0 .../control-plane/tasks/kubeadm-etcd.yml | 0 .../tasks/kubeadm-fix-apiserver.yml | 0 .../control-plane/tasks/kubeadm-secondary.yml | 0 .../control-plane/tasks/kubeadm-setup.yml | 0 .../control-plane/tasks/kubeadm-upgrade.yml | 0 .../kubelet-fix-client-cert-rotation.yml | 0 .../kubernetes/control-plane/tasks/main.yml | 0 .../control-plane/tasks/pre-upgrade.yml | 0 .../templates/admission-controls.yaml.j2 | 0 .../templates/apiserver-audit-policy.yaml.j2 | 0 .../apiserver-audit-webhook-config.yaml.j2 | 0 .../templates/apiserver-tracing.yaml.j2 | 0 .../templates/eventratelimit.yaml.j2 | 0 .../templates/k8s-certs-renew.service.j2 | 0 .../templates/k8s-certs-renew.sh.j2 | 0 .../templates/k8s-certs-renew.timer.j2 | 0 .../templates/kubeadm-config.v1beta3.yaml.j2 | 0 .../templates/kubeadm-config.v1beta4.yaml.j2 | 0 .../templates/kubeadm-controlplane.yaml.j2 | 0 .../templates/kubescheduler-config.yaml.j2 | 0 .../templates/podnodeselector.yaml.j2 | 0 .../templates/podsecurity.yaml.j2 | 0 .../templates/resourcequota.yaml.j2 | 0 .../templates/secrets_encryption.yaml.j2 | 0 .../webhook-authorization-config.yaml.j2 | 0 .../webhook-token-auth-config.yaml.j2 | 0 .../kubernetes/control-plane/vars/main.yaml | 0 .../kubernetes/kubeadm/defaults/main.yml | 0 .../kubernetes/kubeadm/handlers/main.yml | 0 .../roles/kubernetes/kubeadm/meta/main.yml | 0 .../kubeadm/tasks/kubeadm_etcd_node.yml | 0 .../roles/kubernetes/kubeadm/tasks/main.yml | 0 .../kubeadm/templates/kubeadm-client.conf.j2 | 0 .../kubeadm_common/defaults/main.yml | 0 .../kubernetes/kubeadm_common/tasks/main.yml | 0 .../kubernetes/node-label/tasks/main.yml | 0 .../kubernetes/node-taint/tasks/main.yml | 0 .../roles/kubernetes/node/defaults/main.yml | 0 .../roles/kubernetes/node/handlers/main.yml | 0 .../roles/kubernetes/node/tasks/facts.yml | 0 .../roles/kubernetes/node/tasks/install.yml | 0 .../roles/kubernetes/node/tasks/kubelet.yml | 0 .../node/tasks/loadbalancer/haproxy.yml | 0 .../node/tasks/loadbalancer/kube-vip.yml | 0 .../node/tasks/loadbalancer/nginx-proxy.yml | 0 .../roles/kubernetes/node/tasks/main.yml | 0 .../node/templates/http-proxy.conf.j2 | 0 .../templates/kubelet-config.v1beta1.yaml.j2 | 0 .../node/templates/kubelet.env.v1beta1.j2 | 0 .../node/templates/kubelet.service.j2 | 0 .../templates/loadbalancer/haproxy.cfg.j2 | 0 .../node/templates/loadbalancer/nginx.conf.j2 | 0 .../templates/manifests/haproxy.manifest.j2 | 0 .../templates/manifests/kube-vip.manifest.j2 | 0 .../manifests/nginx-proxy.manifest.j2 | 0 .../node/templates/node-kubeconfig.yaml.j2 | 0 .../roles/kubernetes/node/vars/fedora.yml | 0 .../roles/kubernetes/node/vars/ubuntu-18.yml | 0 .../roles/kubernetes/node/vars/ubuntu-20.yml | 0 .../roles/kubernetes/node/vars/ubuntu-22.yml | 0 .../roles/kubernetes/node/vars/ubuntu-24.yml | 0 .../kubernetes/preinstall/defaults/main.yml | 0 .../preinstall/files/dhclient_nodnsupdate | 0 .../kubernetes/preinstall/handlers/main.yml | 0 .../roles/kubernetes/preinstall/meta/main.yml | 0 .../preinstall/tasks/0010-swapoff.yml | 0 .../preinstall/tasks/0020-set_facts.yml | 0 .../preinstall/tasks/0040-verify-settings.yml | 0 .../tasks/0050-create_directories.yml | 0 .../preinstall/tasks/0060-resolvconf.yml | 0 .../tasks/0061-systemd-resolved.yml | 0 .../0062-networkmanager-unmanaged-devices.yml | 0 .../tasks/0063-networkmanager-dns.yml | 0 .../tasks/0080-system-configurations.yml | 0 .../tasks/0081-ntp-configurations.yml | 0 .../preinstall/tasks/0090-etchosts.yml | 0 .../preinstall/tasks/0100-dhclient-hooks.yml | 0 .../tasks/0110-dhclient-hooks-undo.yml | 0 .../kubernetes/preinstall/tasks/main.yml | 0 .../preinstall/templates/ansible_git.j2 | 0 .../preinstall/templates/chrony.conf.j2 | 0 .../templates/dhclient_dnsupdate.sh.j2 | 0 .../templates/dhclient_dnsupdate_rh.sh.j2 | 0 .../preinstall/templates/ntp.conf.j2 | 0 .../preinstall/templates/resolvconf.j2 | 0 .../preinstall/templates/resolved.conf.j2 | 0 .../roles/kubernetes/preinstall/vars/main.yml | 0 .../roles/kubespray-defaults/tasks/main.yml | 0 .../defaults/main/download.yml | 0 .../kubespray_defaults/defaults/main/main.yml | 0 .../vars/main/checksums.yml | 0 .../kubespray_defaults/vars/main/main.yml | 0 .../project/roles/network_facts/meta/main.yml | 0 .../roles/network_facts/tasks/main.yaml | 0 .../roles/network_facts/tasks/no_proxy.yml | 0 .../network_plugin/calico/files/openssl.conf | 0 .../network_plugin/calico/handlers/main.yml | 0 .../roles/network_plugin/calico/meta/main.yml | 0 .../calico/rr/defaults/main.yml | 0 .../network_plugin/calico/rr/tasks/main.yml | 0 .../network_plugin/calico/rr/tasks/pre.yml | 0 .../calico/rr/tasks/update-node.yml | 0 .../calico/tasks/calico_apiserver_certs.yml | 0 .../network_plugin/calico/tasks/check.yml | 0 .../network_plugin/calico/tasks/install.yml | 0 .../network_plugin/calico/tasks/main.yml | 0 .../calico/tasks/peer_with_calico_rr.yml | 0 .../calico/tasks/peer_with_router.yml | 0 .../roles/network_plugin/calico/tasks/pre.yml | 0 .../network_plugin/calico/tasks/repos.yml | 0 .../network_plugin/calico/tasks/reset.yml | 0 .../calico/tasks/typha_certs.yml | 0 .../templates/calico-apiserver-ns.yml.j2 | 0 .../calico/templates/calico-apiserver.yml.j2 | 0 .../calico/templates/calico-config.yml.j2 | 0 .../calico/templates/calico-cr.yml.j2 | 0 .../calico/templates/calico-crb.yml.j2 | 0 .../calico/templates/calico-ipamconfig.yml.j2 | 0 .../calico/templates/calico-node-sa.yml.j2 | 0 .../calico/templates/calico-node.yml.j2 | 0 .../calico/templates/calico-typha.yml.j2 | 0 .../calico/templates/calicoctl.etcd.sh.j2 | 0 .../calico/templates/calicoctl.kdd.sh.j2 | 0 .../kubernetes-services-endpoint.yml.j2 | 0 .../calico/templates/make-ssl-calico.sh.j2 | 0 .../network_plugin/calico/vars/amazon.yml | 0 .../network_plugin/calico/vars/centos-9.yml | 0 .../network_plugin/calico/vars/debian.yml | 0 .../network_plugin/calico/vars/fedora.yml | 0 .../network_plugin/calico/vars/opensuse.yml | 0 .../network_plugin/calico/vars/redhat-9.yml | 0 .../network_plugin/calico/vars/redhat.yml | 0 .../network_plugin/calico/vars/rocky-9.yml | 0 .../calico_defaults/defaults/main.yml | 0 .../network_plugin/cilium/defaults/main.yml | 0 .../network_plugin/cilium/tasks/apply.yml | 0 .../network_plugin/cilium/tasks/check.yml | 0 .../network_plugin/cilium/tasks/install.yml | 0 .../network_plugin/cilium/tasks/main.yml | 0 .../network_plugin/cilium/tasks/reset.yml | 0 .../cilium/tasks/reset_iface.yml | 0 .../templates/000-cilium-portmap.conflist.j2 | 0 .../cilium/cilium-bgp-advertisement.yml.j2 | 0 .../cilium/cilium-bgp-cluster-config.yml.j2 | 0 .../cilium-bgp-node-config-override.yml.j2 | 0 .../cilium/cilium-bgp-peer-config.yml.j2 | 0 .../cilium/cilium-bgp-peering-policy.yml.j2 | 0 .../cilium/cilium-loadbalancer-ip-pool.yml.j2 | 0 .../cilium/templates/values.yaml.j2 | 0 .../network_plugin/cni/defaults/main.yml | 0 .../roles/network_plugin/cni/tasks/main.yml | 0 .../custom_cni/defaults/main.yml | 0 .../network_plugin/custom_cni/meta/main.yml | 0 .../network_plugin/custom_cni/tasks/main.yml | 0 .../network_plugin/flannel/defaults/main.yml | 0 .../network_plugin/flannel/meta/main.yml | 0 .../network_plugin/flannel/tasks/main.yml | 0 .../network_plugin/flannel/tasks/reset.yml | 0 .../flannel/templates/cni-flannel-rbac.yml.j2 | 0 .../flannel/templates/cni-flannel.yml.j2 | 0 .../network_plugin/kube-ovn/defaults/main.yml | 0 .../network_plugin/kube-ovn/tasks/main.yml | 0 .../templates/cni-kube-ovn-crd.yml.j2 | 0 .../kube-ovn/templates/cni-kube-ovn.yml.j2 | 0 .../kube-ovn/templates/cni-ovn.yml.j2 | 0 .../kube-router/defaults/main.yml | 0 .../kube-router/handlers/main.yml | 0 .../network_plugin/kube-router/meta/main.yml | 0 .../kube-router/tasks/annotate.yml | 0 .../network_plugin/kube-router/tasks/main.yml | 0 .../kube-router/tasks/reset.yml | 0 .../kube-router/templates/cni-conf.json.j2 | 0 .../kube-router/templates/kube-router.yml.j2 | 0 .../kube-router/templates/kubeconfig.yml.j2 | 0 .../network_plugin/macvlan/defaults/main.yml | 0 .../network_plugin/macvlan/files/ifdown-local | 0 .../macvlan/files/ifdown-macvlan | 0 .../network_plugin/macvlan/files/ifup-local | 0 .../network_plugin/macvlan/files/ifup-macvlan | 0 .../network_plugin/macvlan/handlers/main.yml | 0 .../network_plugin/macvlan/meta/main.yml | 0 .../network_plugin/macvlan/tasks/main.yml | 0 .../macvlan/templates/10-macvlan.conf.j2 | 0 .../macvlan/templates/99-loopback.conf.j2 | 0 .../templates/centos-network-macvlan.cfg.j2 | 0 .../templates/centos-postdown-macvlan.cfg.j2 | 0 .../templates/centos-postup-macvlan.cfg.j2 | 0 .../templates/centos-routes-macvlan.cfg.j2 | 0 .../templates/coreos-device-macvlan.cfg.j2 | 0 .../templates/coreos-interface-macvlan.cfg.j2 | 0 .../templates/coreos-network-macvlan.cfg.j2 | 0 .../templates/coreos-service-nat_ouside.j2 | 0 .../templates/debian-network-macvlan.cfg.j2 | 0 .../roles/network_plugin/meta/main.yml | 0 .../network_plugin/multus/defaults/main.yml | 0 .../multus/files/multus-clusterrole.yml | 0 .../files/multus-clusterrolebinding.yml | 0 .../multus/files/multus-crd.yml | 0 .../multus/files/multus-serviceaccount.yml | 0 .../roles/network_plugin/multus/meta/main.yml | 0 .../network_plugin/multus/tasks/main.yml | 0 .../multus/templates/multus-daemonset.yml.j2 | 0 .../network_plugin/ovn4nfv/tasks/main.yml | 0 .../network_plugin/weave/defaults/main.yml | 0 .../roles/network_plugin/weave/meta/main.yml | 0 .../roles/network_plugin/weave/tasks/main.yml | 0 .../weave/templates/10-weave.conflist.j2 | 0 .../weave/templates/weave-net.yml.j2 | 0 .../control-plane/defaults/main.yml | 0 .../control-plane/tasks/main.yml | 0 .../recover_control_plane/etcd/tasks/main.yml | 0 .../etcd/tasks/recover_lost_quorum.yml | 0 .../post-recover/tasks/main.yml | 0 .../remove-node/post-remove/defaults/main.yml | 0 .../remove-node/post-remove/tasks/main.yml | 0 .../remove-node/pre-remove/tasks/main.yml | 0 .../remove-etcd-node/tasks/main.yml | 0 .../remove_node/pre_remove/defaults/main.yml | 0 .../remove_node/pre_remove/tasks/main.yml | 0 .../project/roles/reset/defaults/main.yml | 0 .../project/roles/reset/tasks/main.yml | 0 .../roles/system_packages/defaults/main.yml | 0 .../roles/system_packages/tasks/main.yml | 0 .../roles/system_packages/vars/main.yml | 0 .../upgrade/post-upgrade/defaults/main.yml | 0 .../roles/upgrade/post-upgrade/tasks/main.yml | 0 .../upgrade/pre-upgrade/defaults/main.yml | 0 .../roles/upgrade/pre-upgrade/tasks/main.yml | 0 .../upgrade/system-upgrade/tasks/apt.yml | 0 .../upgrade/system-upgrade/tasks/main.yml | 0 .../upgrade/system-upgrade/tasks/yum.yml | 0 .../roles/validate_inventory/meta/main.yml | 0 .../roles/validate_inventory/tasks/main.yml | 0 .../kubernetes_patch/defaults/main.yml | 0 .../win_nodes/kubernetes_patch/tasks/main.yml | 0 .../resources/kubespray}/project/scale.yml | 0 .../kubespray}/project/upgrade_cluster.yml | 0 internal/resources/resources.go | 3 + internal/templates/funcs.go | 2 +- internal/templates/kubespray.go | 14 +- internal/templates/secrets_storage.go | 2 +- internal/templates/utility.go | 9 +- .../credentials/kubeadm_certificate_key.creds | 1 - kubespray/inventory/group_vars/all.yml | 130 ------ .../inventory/group_vars/all/containerd.yml | 63 --- .../group_vars/k8s_cluster/addons.yml | 230 ---------- .../group_vars/k8s_cluster/k8s-cluster.yml | 398 ----------------- .../group_vars/k8s_cluster/k8s-net-calico.yml | 131 ------ .../group_vars/k8s_cluster/k8s-net-cilium.yml | 245 ----------- .../k8s_cluster/k8s-net-flannel.yml | 18 - .../k8s_cluster/k8s-net-kube-ovn.yml | 63 --- .../k8s_cluster/k8s-net-kube-router.yml | 64 --- .../k8s_cluster/k8s-net-macvlan.yml | 6 - .../group_vars/k8s_cluster/k8s-net-weave.yml | 64 --- kubespray/inventory/hosts | 17 - .../library/__pycache__/kube.cpython-312.pyc | Bin 14789 -> 0 bytes kubespray/project/reset.yml | 35 -- .../docker/vars/openeuler.yml | 1 - 830 files changed, 874 insertions(+), 2047 deletions(-) create mode 100644 cmd/apply-modules.go create mode 100644 cmd/apply.go create mode 100644 cmd/reset.go create mode 100644 cmd/root.go create mode 100644 cmd/scale.go create mode 100644 cmd/upgrade.go create mode 100644 cmd/utils.go delete mode 100644 internal/config/kubernetes.go create mode 100644 internal/files/main.go delete mode 100644 internal/kubernetes_client/errors.go delete mode 100644 internal/kubernetes_client/pod.go create mode 100644 internal/python/generate/main.go create mode 100644 internal/python/main.go create mode 100644 internal/python/requirements.txt create mode 100644 internal/python/utils.go rename {kubespray => internal/resources/kubespray}/project/ansible_version.yml (57%) rename {kubespray => internal/resources/kubespray}/project/boilerplate.yml (100%) rename {kubespray => internal/resources/kubespray}/project/cluster.yml (100%) rename {kubespray => internal/resources/kubespray}/project/facts.yml (100%) rename {kubespray => internal/resources/kubespray}/project/install_etcd.yml (100%) rename {kubespray => internal/resources/kubespray}/project/library/kube.py (100%) rename {kubespray => internal/resources/kubespray}/project/modules/kube.py (100%) rename {kubespray => internal/resources/kubespray}/project/recover_control_plane.yml (100%) rename {kubespray => internal/resources/kubespray}/project/remove_node.yml (100%) create mode 100644 internal/resources/kubespray/project/reset.yml rename {kubespray => internal/resources/kubespray}/project/roles/adduser/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/adduser/molecule/default/converge.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/adduser/molecule/default/molecule.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/adduser/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/adduser/vars/coreos.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/adduser/vars/debian.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/adduser/vars/redhat.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/bastion-ssh-config/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/bastion-ssh-config/molecule/default/converge.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/bastion-ssh-config/molecule/default/molecule.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/bastion-ssh-config/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/bastion-ssh-config/templates/ssh-bastion.conf.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/bootstrap-os/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/bootstrap_os/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/bootstrap_os/files/bootstrap.sh (100%) rename {kubespray => internal/resources/kubespray}/project/roles/bootstrap_os/handlers/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/bootstrap_os/meta/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/bootstrap_os/molecule/default/converge.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/bootstrap_os/molecule/default/molecule.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/bootstrap_os/molecule/default/tests/test_default.py (100%) rename {kubespray => internal/resources/kubespray}/project/roles/bootstrap_os/tasks/amzn.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/bootstrap_os/tasks/centos.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/bootstrap_os/tasks/clear-linux-os.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/bootstrap_os/tasks/debian.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/bootstrap_os/tasks/fedora-coreos.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/bootstrap_os/tasks/fedora.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/bootstrap_os/tasks/flatcar.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/bootstrap_os/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/bootstrap_os/tasks/openEuler.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/bootstrap_os/tasks/opensuse-leap.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/bootstrap_os/tasks/opensuse-tumbleweed.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/bootstrap_os/tasks/opensuse.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/bootstrap_os/tasks/rhel.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/bootstrap_os/tasks/ubuntu.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/bootstrap_os/vars/fedora-coreos.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/bootstrap_os/vars/flatcar.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/containerd-common/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/containerd-common/meta/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/containerd-common/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/containerd-common/vars/amazon.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/containerd-common/vars/suse.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/containerd/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/containerd/handlers/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/containerd/handlers/reset.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/containerd/meta/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/containerd/molecule/default/converge.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/containerd/molecule/default/molecule.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/containerd/molecule/default/prepare.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/containerd/molecule/default/tests/test_default.py (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/containerd/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/containerd/tasks/reset.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/containerd/templates/config-v1.toml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/containerd/templates/config.toml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/containerd/templates/containerd.service.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/containerd/templates/hosts.toml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/containerd/templates/http-proxy.conf.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/cri-dockerd/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/cri-dockerd/handlers/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/cri-dockerd/meta/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/cri-dockerd/molecule/default/converge.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/cri-dockerd/molecule/default/files/10-mynet.conf (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/cri-dockerd/molecule/default/files/container.json (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/cri-dockerd/molecule/default/files/sandbox.json (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/cri-dockerd/molecule/default/molecule.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/cri-dockerd/molecule/default/prepare.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/cri-dockerd/molecule/default/tests/test_default.py (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/cri-dockerd/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/cri-dockerd/templates/cri-dockerd.service.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/cri-dockerd/templates/cri-dockerd.socket.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/cri-o/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/cri-o/files/mounts.conf (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/cri-o/handlers/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/cri-o/meta/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/cri-o/molecule/default/converge.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/cri-o/molecule/default/files/10-mynet.conf (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/cri-o/molecule/default/files/container.json (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/cri-o/molecule/default/files/sandbox.json (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/cri-o/molecule/default/molecule.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/cri-o/molecule/default/prepare.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/cri-o/molecule/default/tests/test_default.py (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/cri-o/tasks/load_vars.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/cri-o/tasks/main.yaml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/cri-o/tasks/reset.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/cri-o/tasks/setup-amazon.yaml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/cri-o/templates/config.json.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/cri-o/templates/crio.conf.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/cri-o/templates/http-proxy.conf.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/cri-o/templates/registry.conf.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/cri-o/templates/unqualified.conf.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/cri-o/vars/v1.29.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/cri-o/vars/v1.31.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/crictl/handlers/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/crictl/tasks/crictl.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/crictl/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/crictl/templates/crictl.yaml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/crun/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/docker/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/docker/files/cleanup-docker-orphans.sh (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/docker/handlers/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/docker/meta/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/docker/tasks/docker_plugin.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/docker/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/docker/tasks/pre-upgrade.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/docker/tasks/reset.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/docker/tasks/set_facts_dns.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/docker/tasks/systemd.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/docker/templates/docker-dns.conf.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/docker/templates/docker-options.conf.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/docker/templates/docker-orphan-cleanup.conf.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/docker/templates/docker.service.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/docker/templates/fedora_docker.repo.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/docker/templates/http-proxy.conf.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/docker/templates/rh_docker.repo.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/docker/vars/amazon.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/docker/vars/clearlinux.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/docker/vars/debian.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/docker/vars/fedora.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/docker/vars/kylin.yml (100%) create mode 100644 internal/resources/kubespray/project/roles/container-engine/docker/vars/openeuler.yml rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/docker/vars/redhat.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/docker/vars/suse.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/docker/vars/ubuntu.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/docker/vars/uniontech.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/gvisor/molecule/default/converge.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/gvisor/molecule/default/files/10-mynet.conf (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/gvisor/molecule/default/files/container.json (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/gvisor/molecule/default/files/sandbox.json (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/gvisor/molecule/default/molecule.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/gvisor/molecule/default/prepare.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/gvisor/molecule/default/tests/test_default.py (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/gvisor/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/kata-containers/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/kata-containers/molecule/default/converge.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/kata-containers/molecule/default/files/10-mynet.conf (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/kata-containers/molecule/default/files/container.json (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/kata-containers/molecule/default/files/sandbox.json (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/kata-containers/molecule/default/molecule.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/kata-containers/molecule/default/prepare.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/kata-containers/molecule/default/tests/test_default.py (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/kata-containers/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/kata-containers/templates/configuration-qemu.toml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/kata-containers/templates/containerd-shim-kata-v2.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/meta/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/nerdctl/handlers/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/nerdctl/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/nerdctl/templates/nerdctl.toml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/runc/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/runc/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/skopeo/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/validate-container-engine/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/youki/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/youki/molecule/default/converge.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/youki/molecule/default/files/10-mynet.conf (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/youki/molecule/default/files/container.json (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/youki/molecule/default/files/sandbox.json (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/youki/molecule/default/molecule.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/youki/molecule/default/prepare.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/youki/molecule/default/tests/test_default.py (100%) rename {kubespray => internal/resources/kubespray}/project/roles/container-engine/youki/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/download/meta/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/download/tasks/check_pull_required.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/download/tasks/download_container.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/download/tasks/download_file.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/download/tasks/extract_file.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/download/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/download/tasks/prep_download.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/download/tasks/prep_kubeadm_images.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/download/tasks/set_container_facts.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/download/templates/kubeadm-images.yaml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/etcd/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/etcd/handlers/backup.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/etcd/handlers/backup_cleanup.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/etcd/handlers/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/etcd/meta/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/etcd/tasks/check_certs.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/etcd/tasks/configure.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/etcd/tasks/gen_certs_script.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/etcd/tasks/gen_nodes_certs_script.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/etcd/tasks/install_docker.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/etcd/tasks/install_host.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/etcd/tasks/join_etcd-events_member.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/etcd/tasks/join_etcd_member.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/etcd/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/etcd/tasks/refresh_config.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/etcd/tasks/upd_ca_trust.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/etcd/templates/etcd-docker.service.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/etcd/templates/etcd-events-docker.service.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/etcd/templates/etcd-events-host.service.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/etcd/templates/etcd-events.env.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/etcd/templates/etcd-events.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/etcd/templates/etcd-host.service.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/etcd/templates/etcd.env.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/etcd/templates/etcd.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/etcd/templates/make-ssl-etcd.sh.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/etcd/templates/openssl.conf.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/etcd/vars/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/etcdctl_etcdutl/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/etcdctl_etcdutl/templates/etcdctl.sh.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/helm-apps/README.md (100%) rename {kubespray => internal/resources/kubespray}/project/roles/helm-apps/meta/argument_specs.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/helm-apps/meta/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/helm-apps/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/helm-apps/vars/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ansible/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ansible/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ansible/templates/coredns-clusterrole.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ansible/templates/coredns-clusterrolebinding.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ansible/templates/coredns-config.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ansible/templates/coredns-deployment.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ansible/templates/coredns-poddisruptionbudget.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ansible/templates/coredns-sa.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ansible/templates/coredns-svc.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ansible/templates/dashboard.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ansible/templates/dns-autoscaler-clusterrole.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ansible/templates/dns-autoscaler-clusterrolebinding.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ansible/templates/dns-autoscaler-sa.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ansible/templates/dns-autoscaler.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ansible/templates/etcd_metrics-endpoints.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ansible/templates/etcd_metrics-service.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ansible/templates/netchecker-agent-ds.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ansible/templates/netchecker-agent-hostnet-ds.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ansible/templates/netchecker-agent-sa.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ansible/templates/netchecker-ns.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ansible/templates/netchecker-server-clusterrole.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ansible/templates/netchecker-server-clusterrolebinding.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ansible/templates/netchecker-server-deployment.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ansible/templates/netchecker-server-sa.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ansible/templates/netchecker-server-svc.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ansible/templates/nodelocaldns-config.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ansible/templates/nodelocaldns-daemonset.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ansible/templates/nodelocaldns-sa.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ansible/templates/nodelocaldns-second-daemonset.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ansible/vars/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/argocd/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/argocd/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/argocd/templates/argocd-namespace.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/cluster_roles/files/k8s-cluster-critical-pc.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/cluster_roles/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/cluster_roles/templates/namespace.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/cluster_roles/templates/node-crb.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/cluster_roles/templates/vsphere-rbac.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/container_engine_accelerator/meta/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/container_engine_accelerator/nvidia_gpu/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/container_engine_accelerator/nvidia_gpu/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/container_engine_accelerator/nvidia_gpu/templates/k8s-device-plugin-nvidia-daemonset.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/container_engine_accelerator/nvidia_gpu/templates/nvidia-driver-install-daemonset.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/container_engine_accelerator/nvidia_gpu/vars/ubuntu-16.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/container_engine_accelerator/nvidia_gpu/vars/ubuntu-18.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/container_runtimes/crun/tasks/main.yaml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/container_runtimes/crun/templates/runtimeclass-crun.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/container_runtimes/gvisor/tasks/main.yaml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/container_runtimes/gvisor/templates/runtimeclass-gvisor.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/container_runtimes/kata_containers/defaults/main.yaml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/container_runtimes/kata_containers/tasks/main.yaml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/container_runtimes/kata_containers/templates/runtimeclass-kata-qemu.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/container_runtimes/meta/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/container_runtimes/youki/tasks/main.yaml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/container_runtimes/youki/templates/runtimeclass-youki.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/aws_ebs/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/aws_ebs/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/aws_ebs/templates/aws-ebs-csi-controllerservice-rbac.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/aws_ebs/templates/aws-ebs-csi-controllerservice.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/aws_ebs/templates/aws-ebs-csi-driver.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/aws_ebs/templates/aws-ebs-csi-nodeservice.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/azuredisk/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/azuredisk/tasks/azure-credential-check.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/azuredisk/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/azuredisk/templates/azure-csi-azuredisk-controller-rbac.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/azuredisk/templates/azure-csi-azuredisk-controller.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/azuredisk/templates/azure-csi-azuredisk-driver.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/azuredisk/templates/azure-csi-azuredisk-node-rbac.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/azuredisk/templates/azure-csi-azuredisk-node.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/azuredisk/templates/azure-csi-cloud-config-secret.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/azuredisk/templates/azure-csi-cloud-config.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/cinder/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/cinder/tasks/cinder-credential-check.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/cinder/tasks/cinder-write-cacert.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/cinder/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/cinder/templates/cinder-csi-cloud-config-secret.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/cinder/templates/cinder-csi-cloud-config.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/cinder/templates/cinder-csi-controllerplugin-rbac.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/cinder/templates/cinder-csi-controllerplugin.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/cinder/templates/cinder-csi-driver.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/cinder/templates/cinder-csi-nodeplugin-rbac.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/cinder/templates/cinder-csi-nodeplugin.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/cinder/templates/cinder-csi-poddisruptionbudget.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/csi_crd/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/csi_crd/templates/volumesnapshotclasses.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/csi_crd/templates/volumesnapshotcontents.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/csi_crd/templates/volumesnapshots.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/gcp_pd/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/gcp_pd/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/gcp_pd/templates/gcp-pd-csi-controller.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/gcp_pd/templates/gcp-pd-csi-cred-secret.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/gcp_pd/templates/gcp-pd-csi-node.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/gcp_pd/templates/gcp-pd-csi-sc-regional.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/gcp_pd/templates/gcp-pd-csi-sc-zonal.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/gcp_pd/templates/gcp-pd-csi-setup.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/upcloud/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/upcloud/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/upcloud/templates/upcloud-csi-controller.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/upcloud/templates/upcloud-csi-cred-secret.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/upcloud/templates/upcloud-csi-driver.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/upcloud/templates/upcloud-csi-node.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/upcloud/templates/upcloud-csi-setup.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/vsphere/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/vsphere/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/vsphere/tasks/vsphere-credentials-check.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-cloud-config.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-controller-config.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-controller-deployment.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-controller-rbac.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-controller-service.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-driver.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-namespace.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-node-rbac.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-node.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_cloud_controller/hcloud/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_cloud_controller/hcloud/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_cloud_controller/hcloud/templates/external-hcloud-cloud-controller-manager-ds-with-networks.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_cloud_controller/hcloud/templates/external-hcloud-cloud-controller-manager-ds.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_cloud_controller/hcloud/templates/external-hcloud-cloud-role-bindings.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_cloud_controller/hcloud/templates/external-hcloud-cloud-secret.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_cloud_controller/hcloud/templates/external-hcloud-cloud-service-account.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_cloud_controller/huaweicloud/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_cloud_controller/huaweicloud/tasks/huaweicloud-credential-check.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_cloud_controller/huaweicloud/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_cloud_controller/huaweicloud/templates/external-huawei-cloud-config-secret.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_cloud_controller/huaweicloud/templates/external-huawei-cloud-config.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_cloud_controller/huaweicloud/templates/external-huawei-cloud-controller-manager-ds.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_cloud_controller/huaweicloud/templates/external-huawei-cloud-controller-manager-role-bindings.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_cloud_controller/huaweicloud/templates/external-huawei-cloud-controller-manager-roles.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_cloud_controller/meta/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_cloud_controller/oci/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_cloud_controller/oci/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_cloud_controller/oci/templates/external-oci-cloud-config-secret.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_cloud_controller/oci/templates/external-oci-cloud-config.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_cloud_controller/oci/templates/external-oci-cloud-controller-manager-rbac.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_cloud_controller/oci/templates/external-oci-cloud-controller-manager.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_cloud_controller/openstack/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_cloud_controller/openstack/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_cloud_controller/openstack/tasks/openstack-credential-check.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_cloud_controller/openstack/templates/external-openstack-cloud-config-secret.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_cloud_controller/openstack/templates/external-openstack-cloud-config.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_cloud_controller/openstack/templates/external-openstack-cloud-controller-manager-ds.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_cloud_controller/openstack/templates/external-openstack-cloud-controller-manager-role-bindings.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_cloud_controller/openstack/templates/external-openstack-cloud-controller-manager-roles.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_cloud_controller/vsphere/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_cloud_controller/vsphere/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_cloud_controller/vsphere/tasks/vsphere-credentials-check.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_cloud_controller/vsphere/templates/external-vsphere-cloud-controller-manager-ds.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_cloud_controller/vsphere/templates/external-vsphere-cloud-controller-manager-role-bindings.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_cloud_controller/vsphere/templates/external-vsphere-cloud-controller-manager-roles.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_cloud_controller/vsphere/templates/external-vsphere-cpi-cloud-config-secret.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_cloud_controller/vsphere/templates/external-vsphere-cpi-cloud-config.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_provisioner/local_path_provisioner/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_provisioner/local_path_provisioner/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_provisioner/local_path_provisioner/templates/local-path-storage-clusterrolebinding.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_provisioner/local_path_provisioner/templates/local-path-storage-cm.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_provisioner/local_path_provisioner/templates/local-path-storage-cr.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_provisioner/local_path_provisioner/templates/local-path-storage-deployment.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_provisioner/local_path_provisioner/templates/local-path-storage-ns.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_provisioner/local_path_provisioner/templates/local-path-storage-sa.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_provisioner/local_path_provisioner/templates/local-path-storage-sc.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_provisioner/local_volume_provisioner/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_provisioner/local_volume_provisioner/tasks/basedirs.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_provisioner/local_volume_provisioner/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_provisioner/local_volume_provisioner/templates/local-volume-provisioner-clusterrole.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_provisioner/local_volume_provisioner/templates/local-volume-provisioner-clusterrolebinding.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_provisioner/local_volume_provisioner/templates/local-volume-provisioner-cm.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_provisioner/local_volume_provisioner/templates/local-volume-provisioner-ds.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_provisioner/local_volume_provisioner/templates/local-volume-provisioner-ns.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_provisioner/local_volume_provisioner/templates/local-volume-provisioner-sa.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_provisioner/local_volume_provisioner/templates/local-volume-provisioner-sc.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/external_provisioner/meta/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/gateway_api/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/gateway_api/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/helm/.gitkeep (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/helm/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/helm/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/helm/tasks/pyyaml-flatcar.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/helm/vars/amazon.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/helm/vars/centos-7.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/helm/vars/centos.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/helm/vars/debian.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/helm/vars/fedora.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/helm/vars/redhat-7.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/helm/vars/redhat.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/helm/vars/suse.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/helm/vars/ubuntu.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ingress_controller/alb_ingress_controller/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ingress_controller/alb_ingress_controller/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ingress_controller/alb_ingress_controller/templates/alb-ingress-clusterrole.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ingress_controller/alb_ingress_controller/templates/alb-ingress-clusterrolebinding.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ingress_controller/alb_ingress_controller/templates/alb-ingress-deploy.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ingress_controller/alb_ingress_controller/templates/alb-ingress-ns.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ingress_controller/alb_ingress_controller/templates/alb-ingress-sa.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ingress_controller/cert_manager/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ingress_controller/cert_manager/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ingress_controller/cert_manager/templates/cert-manager.crds.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ingress_controller/cert_manager/templates/cert-manager.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/00-namespace.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/admission-webhook-configuration.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/admission-webhook-job.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/clusterrole-admission-webhook.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/clusterrole-ingress-nginx.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/clusterrolebinding-admission-webhook.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/clusterrolebinding-ingress-nginx.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/cm-ingress-nginx.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/cm-tcp-services.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/cm-udp-services.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/ds-ingress-nginx-controller.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/ingressclass-nginx.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/role-admission-webhook.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/role-ingress-nginx.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/rolebinding-admission-webhook.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/rolebinding-ingress-nginx.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/sa-admission-webhook.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/sa-ingress-nginx.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/svc-ingress-nginx-controller-admission.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/svc-ingress-nginx.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/ingress_controller/meta/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/kubelet-csr-approver/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/kubelet-csr-approver/meta/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/meta/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/metallb/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/metallb/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/metallb/templates/layer2.yaml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/metallb/templates/layer3.yaml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/metallb/templates/metallb.yaml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/metallb/templates/pools.yaml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/metrics_server/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/metrics_server/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/metrics_server/templates/auth-delegator.yaml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/metrics_server/templates/auth-reader.yaml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/metrics_server/templates/metrics-apiservice.yaml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/metrics_server/templates/metrics-server-deployment.yaml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/metrics_server/templates/metrics-server-sa.yaml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/metrics_server/templates/metrics-server-service.yaml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/metrics_server/templates/resource-reader-clusterrolebinding.yaml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/metrics_server/templates/resource-reader.yaml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/network_plugin/calico/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/network_plugin/flannel/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/network_plugin/kube-ovn/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/network_plugin/kube-router/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/network_plugin/meta/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/network_plugin/multus/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/network_plugin/weave/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/node_feature_discovery/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/node_feature_discovery/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-api-crds.yaml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-clusterrole.yaml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-clusterrolebinding.yaml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-gc.yaml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-master-conf.yaml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-master.yaml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-ns.yaml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-role.yaml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-rolebinding.yaml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-service.yaml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-serviceaccount.yaml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-topologyupdater-conf.yaml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-worker-conf.yaml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-worker.yaml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/persistent_volumes/aws-ebs-csi/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/persistent_volumes/aws-ebs-csi/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/persistent_volumes/aws-ebs-csi/templates/aws-ebs-csi-storage-class.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/persistent_volumes/azuredisk-csi/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/persistent_volumes/azuredisk-csi/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/persistent_volumes/azuredisk-csi/templates/azure-csi-storage-class.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/persistent_volumes/cinder-csi/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/persistent_volumes/cinder-csi/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/persistent_volumes/cinder-csi/templates/cinder-csi-storage-class.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/persistent_volumes/gcp-pd-csi/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/persistent_volumes/gcp-pd-csi/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/persistent_volumes/gcp-pd-csi/templates/gcp-pd-csi-storage-class.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/persistent_volumes/meta/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/persistent_volumes/upcloud-csi/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/persistent_volumes/upcloud-csi/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/persistent_volumes/upcloud-csi/templates/upcloud-csi-storage-class.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/policy_controller/calico/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/policy_controller/calico/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/policy_controller/calico/templates/calico-kube-controllers.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/policy_controller/calico/templates/calico-kube-cr.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/policy_controller/calico/templates/calico-kube-crb.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/policy_controller/calico/templates/calico-kube-sa.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/policy_controller/meta/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/registry/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/registry/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/registry/templates/registry-cm.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/registry/templates/registry-ing.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/registry/templates/registry-ns.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/registry/templates/registry-pvc.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/registry/templates/registry-rs.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/registry/templates/registry-sa.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/registry/templates/registry-secrets.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/registry/templates/registry-svc.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/scheduler_plugins/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/scheduler_plugins/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/scheduler_plugins/templates/appgroup.diktyo.x-k8s.io_appgroups.yaml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/scheduler_plugins/templates/cm-scheduler-plugins.yaml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/scheduler_plugins/templates/deploy-scheduler-plugins.yaml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/scheduler_plugins/templates/namespace.yaml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/scheduler_plugins/templates/networktopology.diktyo.x-k8s.io_networktopologies.yaml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/scheduler_plugins/templates/rbac-scheduler-plugins.yaml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/scheduler_plugins/templates/sa-scheduler-plugins.yaml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/scheduler_plugins/templates/scheduling.x-k8s.io_elasticquotas.yaml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/scheduler_plugins/templates/scheduling.x-k8s.io_podgroups.yaml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/scheduler_plugins/templates/topology.node.k8s.io_noderesourcetopologies.yaml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/snapshots/cinder-csi/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/snapshots/cinder-csi/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/snapshots/cinder-csi/templates/cinder-csi-snapshot-class.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/snapshots/meta/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/snapshots/snapshot-controller/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/snapshots/snapshot-controller/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/snapshots/snapshot-controller/templates/rbac-snapshot-controller.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/snapshots/snapshot-controller/templates/snapshot-controller.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/snapshots/snapshot-controller/templates/snapshot-ns.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes-apps/vars/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/client/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/client/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/control-plane/defaults/main/etcd.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/control-plane/defaults/main/kube-proxy.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/control-plane/defaults/main/kube-scheduler.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/control-plane/defaults/main/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/control-plane/handlers/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/control-plane/meta/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/control-plane/tasks/check-api.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/control-plane/tasks/define-first-kube-control.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/control-plane/tasks/encrypt-at-rest.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/control-plane/tasks/kubeadm-backup.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/control-plane/tasks/kubeadm-etcd.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/control-plane/tasks/kubeadm-fix-apiserver.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/control-plane/tasks/kubeadm-secondary.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/control-plane/tasks/kubeadm-setup.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/control-plane/tasks/kubeadm-upgrade.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/control-plane/tasks/kubelet-fix-client-cert-rotation.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/control-plane/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/control-plane/tasks/pre-upgrade.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/control-plane/templates/admission-controls.yaml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/control-plane/templates/apiserver-audit-policy.yaml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/control-plane/templates/apiserver-audit-webhook-config.yaml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/control-plane/templates/apiserver-tracing.yaml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/control-plane/templates/eventratelimit.yaml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/control-plane/templates/k8s-certs-renew.service.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/control-plane/templates/k8s-certs-renew.sh.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/control-plane/templates/k8s-certs-renew.timer.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/control-plane/templates/kubeadm-config.v1beta3.yaml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/control-plane/templates/kubeadm-config.v1beta4.yaml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/control-plane/templates/kubeadm-controlplane.yaml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/control-plane/templates/kubescheduler-config.yaml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/control-plane/templates/podnodeselector.yaml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/control-plane/templates/podsecurity.yaml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/control-plane/templates/resourcequota.yaml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/control-plane/templates/secrets_encryption.yaml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/control-plane/templates/webhook-authorization-config.yaml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/control-plane/templates/webhook-token-auth-config.yaml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/control-plane/vars/main.yaml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/kubeadm/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/kubeadm/handlers/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/kubeadm/meta/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/kubeadm/tasks/kubeadm_etcd_node.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/kubeadm/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/kubeadm/templates/kubeadm-client.conf.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/kubeadm_common/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/kubeadm_common/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/node-label/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/node-taint/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/node/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/node/handlers/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/node/tasks/facts.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/node/tasks/install.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/node/tasks/kubelet.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/node/tasks/loadbalancer/haproxy.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/node/tasks/loadbalancer/kube-vip.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/node/tasks/loadbalancer/nginx-proxy.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/node/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/node/templates/http-proxy.conf.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/node/templates/kubelet-config.v1beta1.yaml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/node/templates/kubelet.env.v1beta1.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/node/templates/kubelet.service.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/node/templates/loadbalancer/haproxy.cfg.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/node/templates/loadbalancer/nginx.conf.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/node/templates/manifests/haproxy.manifest.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/node/templates/manifests/kube-vip.manifest.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/node/templates/manifests/nginx-proxy.manifest.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/node/templates/node-kubeconfig.yaml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/node/vars/fedora.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/node/vars/ubuntu-18.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/node/vars/ubuntu-20.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/node/vars/ubuntu-22.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/node/vars/ubuntu-24.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/preinstall/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/preinstall/files/dhclient_nodnsupdate (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/preinstall/handlers/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/preinstall/meta/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/preinstall/tasks/0010-swapoff.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/preinstall/tasks/0020-set_facts.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/preinstall/tasks/0040-verify-settings.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/preinstall/tasks/0050-create_directories.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/preinstall/tasks/0060-resolvconf.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/preinstall/tasks/0061-systemd-resolved.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/preinstall/tasks/0062-networkmanager-unmanaged-devices.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/preinstall/tasks/0063-networkmanager-dns.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/preinstall/tasks/0080-system-configurations.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/preinstall/tasks/0081-ntp-configurations.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/preinstall/tasks/0090-etchosts.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/preinstall/tasks/0100-dhclient-hooks.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/preinstall/tasks/0110-dhclient-hooks-undo.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/preinstall/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/preinstall/templates/ansible_git.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/preinstall/templates/chrony.conf.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/preinstall/templates/dhclient_dnsupdate.sh.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/preinstall/templates/dhclient_dnsupdate_rh.sh.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/preinstall/templates/ntp.conf.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/preinstall/templates/resolvconf.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/preinstall/templates/resolved.conf.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubernetes/preinstall/vars/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubespray-defaults/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubespray_defaults/defaults/main/download.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubespray_defaults/defaults/main/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubespray_defaults/vars/main/checksums.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/kubespray_defaults/vars/main/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_facts/meta/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_facts/tasks/main.yaml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_facts/tasks/no_proxy.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/calico/files/openssl.conf (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/calico/handlers/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/calico/meta/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/calico/rr/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/calico/rr/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/calico/rr/tasks/pre.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/calico/rr/tasks/update-node.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/calico/tasks/calico_apiserver_certs.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/calico/tasks/check.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/calico/tasks/install.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/calico/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/calico/tasks/peer_with_calico_rr.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/calico/tasks/peer_with_router.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/calico/tasks/pre.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/calico/tasks/repos.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/calico/tasks/reset.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/calico/tasks/typha_certs.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/calico/templates/calico-apiserver-ns.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/calico/templates/calico-apiserver.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/calico/templates/calico-config.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/calico/templates/calico-cr.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/calico/templates/calico-crb.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/calico/templates/calico-ipamconfig.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/calico/templates/calico-node-sa.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/calico/templates/calico-node.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/calico/templates/calico-typha.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/calico/templates/calicoctl.etcd.sh.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/calico/templates/calicoctl.kdd.sh.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/calico/templates/kubernetes-services-endpoint.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/calico/templates/make-ssl-calico.sh.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/calico/vars/amazon.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/calico/vars/centos-9.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/calico/vars/debian.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/calico/vars/fedora.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/calico/vars/opensuse.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/calico/vars/redhat-9.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/calico/vars/redhat.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/calico/vars/rocky-9.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/calico_defaults/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/cilium/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/cilium/tasks/apply.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/cilium/tasks/check.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/cilium/tasks/install.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/cilium/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/cilium/tasks/reset.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/cilium/tasks/reset_iface.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/cilium/templates/000-cilium-portmap.conflist.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/cilium/templates/cilium/cilium-bgp-advertisement.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/cilium/templates/cilium/cilium-bgp-cluster-config.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/cilium/templates/cilium/cilium-bgp-node-config-override.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/cilium/templates/cilium/cilium-bgp-peer-config.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/cilium/templates/cilium/cilium-bgp-peering-policy.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/cilium/templates/cilium/cilium-loadbalancer-ip-pool.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/cilium/templates/values.yaml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/cni/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/cni/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/custom_cni/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/custom_cni/meta/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/custom_cni/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/flannel/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/flannel/meta/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/flannel/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/flannel/tasks/reset.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/flannel/templates/cni-flannel-rbac.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/flannel/templates/cni-flannel.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/kube-ovn/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/kube-ovn/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/kube-ovn/templates/cni-kube-ovn-crd.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/kube-ovn/templates/cni-kube-ovn.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/kube-ovn/templates/cni-ovn.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/kube-router/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/kube-router/handlers/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/kube-router/meta/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/kube-router/tasks/annotate.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/kube-router/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/kube-router/tasks/reset.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/kube-router/templates/cni-conf.json.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/kube-router/templates/kube-router.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/kube-router/templates/kubeconfig.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/macvlan/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/macvlan/files/ifdown-local (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/macvlan/files/ifdown-macvlan (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/macvlan/files/ifup-local (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/macvlan/files/ifup-macvlan (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/macvlan/handlers/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/macvlan/meta/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/macvlan/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/macvlan/templates/10-macvlan.conf.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/macvlan/templates/99-loopback.conf.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/macvlan/templates/centos-network-macvlan.cfg.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/macvlan/templates/centos-postdown-macvlan.cfg.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/macvlan/templates/centos-postup-macvlan.cfg.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/macvlan/templates/centos-routes-macvlan.cfg.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/macvlan/templates/coreos-device-macvlan.cfg.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/macvlan/templates/coreos-interface-macvlan.cfg.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/macvlan/templates/coreos-network-macvlan.cfg.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/macvlan/templates/coreos-service-nat_ouside.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/macvlan/templates/debian-network-macvlan.cfg.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/meta/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/multus/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/multus/files/multus-clusterrole.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/multus/files/multus-clusterrolebinding.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/multus/files/multus-crd.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/multus/files/multus-serviceaccount.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/multus/meta/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/multus/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/multus/templates/multus-daemonset.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/ovn4nfv/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/weave/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/weave/meta/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/weave/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/weave/templates/10-weave.conflist.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/network_plugin/weave/templates/weave-net.yml.j2 (100%) rename {kubespray => internal/resources/kubespray}/project/roles/recover_control_plane/control-plane/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/recover_control_plane/control-plane/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/recover_control_plane/etcd/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/recover_control_plane/etcd/tasks/recover_lost_quorum.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/recover_control_plane/post-recover/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/remove-node/post-remove/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/remove-node/post-remove/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/remove-node/pre-remove/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/remove-node/remove-etcd-node/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/remove_node/pre_remove/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/remove_node/pre_remove/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/reset/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/reset/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/system_packages/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/system_packages/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/system_packages/vars/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/upgrade/post-upgrade/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/upgrade/post-upgrade/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/upgrade/pre-upgrade/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/upgrade/pre-upgrade/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/upgrade/system-upgrade/tasks/apt.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/upgrade/system-upgrade/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/upgrade/system-upgrade/tasks/yum.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/validate_inventory/meta/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/validate_inventory/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/win_nodes/kubernetes_patch/defaults/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/roles/win_nodes/kubernetes_patch/tasks/main.yml (100%) rename {kubespray => internal/resources/kubespray}/project/scale.yml (100%) rename {kubespray => internal/resources/kubespray}/project/upgrade_cluster.yml (100%) delete mode 100644 kubespray/inventory/credentials/kubeadm_certificate_key.creds delete mode 100644 kubespray/inventory/group_vars/all.yml delete mode 100644 kubespray/inventory/group_vars/all/containerd.yml delete mode 100644 kubespray/inventory/group_vars/k8s_cluster/addons.yml delete mode 100644 kubespray/inventory/group_vars/k8s_cluster/k8s-cluster.yml delete mode 100644 kubespray/inventory/group_vars/k8s_cluster/k8s-net-calico.yml delete mode 100644 kubespray/inventory/group_vars/k8s_cluster/k8s-net-cilium.yml delete mode 100644 kubespray/inventory/group_vars/k8s_cluster/k8s-net-flannel.yml delete mode 100644 kubespray/inventory/group_vars/k8s_cluster/k8s-net-kube-ovn.yml delete mode 100644 kubespray/inventory/group_vars/k8s_cluster/k8s-net-kube-router.yml delete mode 100644 kubespray/inventory/group_vars/k8s_cluster/k8s-net-macvlan.yml delete mode 100644 kubespray/inventory/group_vars/k8s_cluster/k8s-net-weave.yml delete mode 100644 kubespray/inventory/hosts delete mode 100644 kubespray/project/library/__pycache__/kube.cpython-312.pyc delete mode 100644 kubespray/project/reset.yml delete mode 120000 kubespray/project/roles/container-engine/docker/vars/openeuler.yml diff --git a/.gitignore b/.gitignore index 8da259f..071bb9f 100644 --- a/.gitignore +++ b/.gitignore @@ -11,3 +11,4 @@ temp .ropeproject *__pycache__ bin +internal/python/data \ No newline at end of file diff --git a/Makefile b/Makefile index d4ed32a..844305b 100644 --- a/Makefile +++ b/Makefile @@ -9,7 +9,8 @@ run: .PHONY: build build: - @go build -v -trimpath -ldflags "-s -w $(ADDITIONAL_LLD_FLAGS)" -o '$(BINDIR)/'$(BINNAME) ./cmd/main/main.go + @go generate ./... + @go build -v -trimpath -ldflags "-s -w" -o '$(BINDIR)/'$(BINNAME) ./cmd/main/main.go .PHONY: clean clean: diff --git a/README.md b/README.md index 8c37975..b7708f6 100644 --- a/README.md +++ b/README.md @@ -4,32 +4,16 @@ ## Примеры запуска -### Docker-образ - -```shell -touch k8s-admin.conf - -docker run -v $(pwd)/config.yaml:/application/config.yaml \ - -v $(pwd)/id_rsa_bastion_ift:/root/.ssh/id_rsa \ - --mount type=bind,source=$(pwd)/k8s-admin.conf,target=/application/k8s-admin.conf \ - harbor.kvazaric.ru/kube-forge/kube-forge:1.1-f84c27e6 apply -``` - ## С помощью исполняемого файла -Необходимо также на машине оператора иметь утилиты: - -- sshpass - -А также установить Python-библиотеки из списка "requirements.txt" - ```shell -kube-forge -c config.yaml -d . apply +kube-forge -c config.yaml apply ``` ## Параметры: - "-с" путь до конфигурационного файла -- "-d" путь до рабочей директории (там же должна быть директория kubespray) +- "-o" путь до рабочей директории (там же должна быть директория kubespray) - "-p" пароль для авторизации через SSH -- "-v" включить расширенное логирование ("-v=true") +- "-v" включить расширенное логирование +- "-h" help для основных параметров и команд diff --git a/cmd/apply-modules.go b/cmd/apply-modules.go new file mode 100644 index 0000000..f6ae966 --- /dev/null +++ b/cmd/apply-modules.go @@ -0,0 +1,20 @@ +package cmd + +import ( + "kube-forge/internal/templates" + + "github.com/spf13/cobra" +) + +func init() { + rootCmd.AddCommand(applyModulesCmd) +} + +var applyModulesCmd = &cobra.Command{ + Use: "apply-modules", + Short: "Apply only additional modules", + Run: func(cmd *cobra.Command, args []string) { + templates.ApplyK8sTemplates() + installAndConfigureModules() + }, +} diff --git a/cmd/apply.go b/cmd/apply.go new file mode 100644 index 0000000..6443bd9 --- /dev/null +++ b/cmd/apply.go @@ -0,0 +1,22 @@ +package cmd + +import ( + "kube-forge/internal/kubespray" + "kube-forge/internal/templates" + + "github.com/spf13/cobra" +) + +func init() { + rootCmd.AddCommand(applyCmd) +} + +var applyCmd = &cobra.Command{ + Use: "apply", + Short: "Apply configuration", + Run: func(cmd *cobra.Command, args []string) { + templates.ApplyK8sTemplates() + kubespray.InstallCluster("") + installAndConfigureModules() + }, +} diff --git a/cmd/main/main.go b/cmd/main/main.go index 714a331..f677c02 100644 --- a/cmd/main/main.go +++ b/cmd/main/main.go @@ -1,54 +1,9 @@ package main import ( - "flag" - "kube-forge/internal/additional" - "kube-forge/internal/config" - "kube-forge/internal/csi" - "kube-forge/internal/kubespray" - "kube-forge/internal/logging" - "kube-forge/internal/templates" - "os" + "kube-forge/cmd" ) -func installAndConfigureModules() { - csi.ApplyCharts() - additional.ApplyCharts() -} - func main() { - var password, configPath, workDir string - var verbose bool - - flag.StringVar(&password, "p", "", "Password to access hosts") - flag.StringVar(&configPath, "c", "/etc/kube-forge/config.yaml", "Path to config file") - flag.StringVar(&workDir, "d", "/var/lib/kube-forge", "Path to kube-forge work dir") - flag.BoolVar(&verbose, "v", false, "Enable verbose logging") - flag.Parse() - config := config.CreateConfig(configPath, workDir, password) - config.Verbose = verbose - - templates.ApplyK8sTemplates() - - for _, cmd := range os.Args { - switch cmd { - case "apply": - kubespray.InstallCluster("") - installAndConfigureModules() - return - case "apply-modules": - installAndConfigureModules() - return - case "upgrade": - kubespray.UpgradeCluster("") - return - case "scale": - kubespray.ScaleCluster() - return - case "reset": - kubespray.ResetCluster() - return - } - } - logging.Log.Error("No such command\nAvailable commands: apply, apply-modules, upgrade, scale, reset") + cmd.Execute() } diff --git a/cmd/reset.go b/cmd/reset.go new file mode 100644 index 0000000..b841c51 --- /dev/null +++ b/cmd/reset.go @@ -0,0 +1,21 @@ +package cmd + +import ( + "kube-forge/internal/kubespray" + "kube-forge/internal/templates" + + "github.com/spf13/cobra" +) + +func init() { + rootCmd.AddCommand(resetCmd) +} + +var resetCmd = &cobra.Command{ + Use: "reset", + Short: "Reset cluster", + Run: func(cmd *cobra.Command, args []string) { + templates.ApplyK8sTemplates() + kubespray.ResetCluster() + }, +} diff --git a/cmd/root.go b/cmd/root.go new file mode 100644 index 0000000..675a7e3 --- /dev/null +++ b/cmd/root.go @@ -0,0 +1,44 @@ +package cmd + +import ( + "fmt" + "kube-forge/internal/additional" + "kube-forge/internal/config" + "kube-forge/internal/csi" + "os" + + "github.com/spf13/cobra" +) + +func installAndConfigureModules() { + csi.ApplyCharts() + additional.ApplyCharts() +} + +func init() { + rootCmd.PersistentFlags().StringVarP(&config.ConfigFile, "config", "c", "config.yaml", "path to configuration file for cluster") + rootCmd.PersistentFlags().StringVarP(&config.Output, "output", "o", "", "directory to store k8s admin config") + rootCmd.PersistentFlags().StringVarP(&config.Password, "password", "p", "", "password to access hosts via SSH") + rootCmd.PersistentFlags().BoolVarP(&config.Verbose, "verbose", "v", false, "enable verbose logging") +} + +func Execute() { + if err := rootCmd.Execute(); err != nil { + fmt.Fprintln(os.Stderr, err) + os.Exit(1) + } +} + +var ( + rootCmd = &cobra.Command{ + Use: "kube-forge ", + Short: "Kube-forge will help you to deploy K8s clusters", + Long: `An easy to use K8s installer`, + Args: func(cmd *cobra.Command, args []string) error { + if err := cobra.MinimumNArgs(0)(cmd, args); err != nil { + return err + } + return nil + }, + } +) diff --git a/cmd/scale.go b/cmd/scale.go new file mode 100644 index 0000000..1bae71d --- /dev/null +++ b/cmd/scale.go @@ -0,0 +1,21 @@ +package cmd + +import ( + "kube-forge/internal/kubespray" + "kube-forge/internal/templates" + + "github.com/spf13/cobra" +) + +func init() { + rootCmd.AddCommand(scaleCmd) +} + +var scaleCmd = &cobra.Command{ + Use: "scale", + Short: "Scale cluster. Use when adding new nodes", + Run: func(cmd *cobra.Command, args []string) { + templates.ApplyK8sTemplates() + kubespray.ScaleCluster() + }, +} diff --git a/cmd/upgrade.go b/cmd/upgrade.go new file mode 100644 index 0000000..5938b60 --- /dev/null +++ b/cmd/upgrade.go @@ -0,0 +1,21 @@ +package cmd + +import ( + "kube-forge/internal/kubespray" + "kube-forge/internal/templates" + + "github.com/spf13/cobra" +) + +func init() { + rootCmd.AddCommand(upgradeCmd) +} + +var upgradeCmd = &cobra.Command{ + Use: "upgrade", + Short: "Upgrade cluster. Use when changing version of K8s", + Run: func(cmd *cobra.Command, args []string) { + templates.ApplyK8sTemplates() + kubespray.UpgradeCluster("") + }, +} diff --git a/cmd/utils.go b/cmd/utils.go new file mode 100644 index 0000000..b44314d --- /dev/null +++ b/cmd/utils.go @@ -0,0 +1,15 @@ +package cmd + +import ( + "log" + "os/user" +) + +func GetUserHomeDir() string { + usr, err := user.Current() + if err != nil { + log.Fatalf("cant get user home directory: %v", err) + } + homePath := usr.HomeDir + return homePath +} diff --git a/config.sample.yaml b/config.sample.yaml index 49bffaf..f1caa40 100644 --- a/config.sample.yaml +++ b/config.sample.yaml @@ -1,27 +1,27 @@ credentials: - user: sre-admin + user: georgest ask_sudo_password: false - private_key_file: /Users/georgest/.ssh/id_rsa_bastion_ift + private_key_file: /Users/georgest/.ssh/id_rsa hosts: - - hostname: t1-disk-lt-k8s-test-master-01 - ip: "10.100.20.47" + - hostname: k8s-master-1 + ip: "172.16.1.136" roles: [control_plane, etcd] - - hostname: t1-disk-lt-k8s-test-slave-01 - ip: "10.100.20.48" + - hostname: k8s-worker-1 + ip: "172.16.1.135" roles: [node] - - hostname: t1-disk-lt-k8s-test-slave-02 - ip: "10.100.20.49" + - hostname: k8s-worker-2 + ip: "172.16.1.137" roles: [node] orchestrator: - version: v1.32 + version: "1.32.4" cluster_name: cluster.local kubelet_dir: "/app/k8s/kubelet" - proxy_mode: "ipvs" # iptables, ipvs - proxy_scheduler: "rr" + proxy_mode: "ipvs" + proxy_scheduler: "lc" container_engine: install: true type: "containerd" @@ -33,27 +33,6 @@ orchestrator: - 8.8.4.4 - 1.1.1.1 disable_host_nameservers: false - coredns_external_zones: - [] - # - zones: - # - example.com - # - example.io:1053 - # nameservers: - # - 1.1.1.1 - # - 2.2.2.2 - # cache: 5 - # - zones: - # - https://mycompany.local:4453 - # nameservers: - # - 192.168.0.53 - # cache: 0 - # - zones: - # - mydomain.tld - # nameservers: - # - 10.233.0.3 - # cache: 5 - # rewrite: - # - name website.tld website.namespace.svc.cluster.local ping_access_ip: true auto_renew_certificates: true pod_security_policy_enabled: true @@ -64,24 +43,10 @@ orchestrator: skip_verify: false modules: - admin_password: changeit - - observability: - enabled: false - - cicd: - enabled: false - - secrets_storage: - enabled: false - - registry: - enabled: false - additional: cert_manager: enabled: true - account_email: g.stykalin@rockitsoft.ru + account_email: gstykalin@mail.ru storage: local_path_provisioner: data_dir: "/app/local-path-provisioner" diff --git a/go.mod b/go.mod index 7197da1..922f0e5 100644 --- a/go.mod +++ b/go.mod @@ -1,64 +1,67 @@ module kube-forge -go 1.22.0 +go 1.23.0 -toolchain go1.22.2 +toolchain go1.24.4 require ( - github.com/BurntSushi/toml v1.3.2 - github.com/Masterminds/sprig/v3 v3.2.3 + github.com/BurntSushi/toml v1.4.0 + github.com/Masterminds/sprig/v3 v3.3.0 github.com/apenella/go-ansible v1.3.0 - github.com/apenella/go-ansible/v2 v2.0.1 + github.com/apenella/go-ansible/v2 v2.2.0 github.com/ilyakaznacheev/cleanenv v1.5.0 - github.com/mittwald/go-helm-client v0.12.9 + github.com/kluctl/go-embed-python v0.0.0-3.13.1-20241219-1 + github.com/mittwald/go-helm-client v0.12.17 github.com/sirupsen/logrus v1.9.3 - golang.org/x/crypto v0.22.0 - helm.sh/helm/v3 v3.14.2 - k8s.io/api v0.30.0 - k8s.io/apimachinery v0.30.0 - k8s.io/client-go v0.30.0 - sigs.k8s.io/yaml v1.4.0 + github.com/spf13/cobra v1.9.1 + golang.org/x/crypto v0.35.0 + gopkg.in/yaml.v2 v2.4.0 + helm.sh/helm/v3 v3.17.1 ) require ( + dario.cat/mergo v1.0.1 // indirect github.com/AdaLogics/go-fuzz-headers v0.0.0-20230811130428-ced1acdcaa24 // indirect github.com/Azure/go-ansiterm v0.0.0-20230124172434-306776ec8161 // indirect github.com/MakeNowJust/heredoc v1.0.0 // indirect github.com/Masterminds/goutils v1.1.1 // indirect - github.com/Masterminds/semver/v3 v3.2.1 // indirect + github.com/Masterminds/semver/v3 v3.3.0 // indirect github.com/Masterminds/squirrel v1.5.4 // indirect - github.com/Microsoft/hcsshim v0.11.4 // indirect github.com/apenella/go-common-utils/data v0.0.0-20220913191136-86daaa87e7df // indirect github.com/apenella/go-common-utils/error v0.0.0-20220913191136-86daaa87e7df // indirect github.com/asaskevich/govalidator v0.0.0-20230301143203-a9d515a09cc2 // indirect github.com/beorn7/perks v1.0.1 // indirect - github.com/cespare/xxhash/v2 v2.2.0 // indirect + github.com/blang/semver/v4 v4.0.0 // indirect + github.com/cespare/xxhash/v2 v2.3.0 // indirect github.com/chai2010/gettext-go v1.0.2 // indirect - github.com/containerd/containerd v1.7.11 // indirect + github.com/containerd/containerd v1.7.24 // indirect + github.com/containerd/errdefs v0.3.0 // indirect github.com/containerd/log v0.1.0 // indirect - github.com/cyphar/filepath-securejoin v0.2.4 // indirect - github.com/davecgh/go-spew v1.1.1 // indirect - github.com/distribution/reference v0.5.0 // indirect - github.com/docker/cli v24.0.7+incompatible // indirect + github.com/containerd/platforms v0.2.1 // indirect + github.com/cyphar/filepath-securejoin v0.3.6 // indirect + github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect + github.com/distribution/reference v0.6.0 // indirect + github.com/docker/cli v25.0.1+incompatible // indirect github.com/docker/distribution v2.8.3+incompatible // indirect - github.com/docker/docker v24.0.7+incompatible // indirect + github.com/docker/docker v25.0.6+incompatible // indirect github.com/docker/docker-credential-helpers v0.8.0 // indirect - github.com/docker/go-connections v0.4.0 // indirect + github.com/docker/go-connections v0.5.0 // indirect github.com/docker/go-metrics v0.0.1 // indirect - github.com/docker/go-units v0.5.0 // indirect github.com/emicklei/go-restful/v3 v3.11.1 // indirect - github.com/evanphx/json-patch v5.7.0+incompatible // indirect + github.com/evanphx/json-patch v5.9.0+incompatible // indirect github.com/exponent-io/jsonpath v0.0.0-20210407135951-1de76d718b3f // indirect github.com/fatih/color v1.16.0 // indirect github.com/felixge/httpsnoop v1.0.4 // indirect + github.com/fxamacker/cbor/v2 v2.7.0 // indirect github.com/go-errors/errors v1.5.1 // indirect github.com/go-gorp/gorp/v3 v3.1.0 // indirect - github.com/go-logr/logr v1.4.1 // indirect + github.com/go-logr/logr v1.4.2 // indirect github.com/go-logr/stdr v1.2.2 // indirect - github.com/go-openapi/jsonpointer v0.20.2 // indirect + github.com/go-openapi/jsonpointer v0.21.0 // indirect github.com/go-openapi/jsonreference v0.20.4 // indirect - github.com/go-openapi/swag v0.22.7 // indirect + github.com/go-openapi/swag v0.23.0 // indirect github.com/gobwas/glob v0.2.3 // indirect + github.com/gofrs/flock v0.12.1 // indirect github.com/gogo/protobuf v1.3.2 // indirect github.com/golang/protobuf v1.5.4 // indirect github.com/google/btree v1.1.2 // indirect @@ -66,21 +69,20 @@ require ( github.com/google/go-cmp v0.6.0 // indirect github.com/google/gofuzz v1.2.0 // indirect github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510 // indirect - github.com/google/uuid v1.5.0 // indirect + github.com/google/uuid v1.6.0 // indirect github.com/gorilla/mux v1.8.1 // indirect github.com/gorilla/websocket v1.5.1 // indirect github.com/gosuri/uitable v0.0.4 // indirect github.com/gregjones/httpcache v0.0.0-20190611155906-901d90724c79 // indirect github.com/hashicorp/errwrap v1.1.0 // indirect github.com/hashicorp/go-multierror v1.1.1 // indirect - github.com/huandu/xstrings v1.4.0 // indirect - github.com/imdario/mergo v0.3.16 // indirect + github.com/huandu/xstrings v1.5.0 // indirect github.com/inconshreveable/mousetrap v1.1.0 // indirect - github.com/jmoiron/sqlx v1.3.5 // indirect + github.com/jmoiron/sqlx v1.4.0 // indirect github.com/joho/godotenv v1.5.1 // indirect github.com/josharian/intern v1.0.0 // indirect github.com/json-iterator/go v1.1.12 // indirect - github.com/klauspost/compress v1.17.4 // indirect + github.com/klauspost/compress v1.17.11 // indirect github.com/lann/builder v0.0.0-20180802200727-47ae307949d0 // indirect github.com/lann/ps v0.0.0-20150810152359-62de8c46ede0 // indirect github.com/lib/pq v1.10.9 // indirect @@ -89,74 +91,72 @@ require ( github.com/mattn/go-colorable v0.1.13 // indirect github.com/mattn/go-isatty v0.0.20 // indirect github.com/mattn/go-runewidth v0.0.15 // indirect - github.com/matttproud/golang_protobuf_extensions/v2 v2.0.0 // indirect github.com/mitchellh/copystructure v1.2.0 // indirect github.com/mitchellh/go-wordwrap v1.0.1 // indirect github.com/mitchellh/reflectwalk v1.0.2 // indirect github.com/moby/locker v1.0.1 // indirect - github.com/moby/spdystream v0.2.0 // indirect + github.com/moby/spdystream v0.5.0 // indirect github.com/moby/term v0.5.0 // indirect github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect github.com/modern-go/reflect2 v1.0.2 // indirect github.com/monochromegane/go-gitignore v0.0.0-20200626010858-205db1a8cc00 // indirect - github.com/morikuni/aec v1.0.0 // indirect github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect github.com/mxk/go-flowrate v0.0.0-20140419014527-cca7078d478f // indirect github.com/opencontainers/go-digest v1.0.0 // indirect - github.com/opencontainers/image-spec v1.1.0-rc5 // indirect + github.com/opencontainers/image-spec v1.1.0 // indirect github.com/peterbourgon/diskv v2.0.1+incompatible // indirect github.com/pkg/errors v0.9.1 // indirect - github.com/pmezard/go-difflib v1.0.0 // indirect - github.com/prometheus/client_golang v1.18.0 // indirect - github.com/prometheus/client_model v0.5.0 // indirect - github.com/prometheus/common v0.45.0 // indirect - github.com/prometheus/procfs v0.12.0 // indirect + github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect + github.com/prometheus/client_golang v1.19.1 // indirect + github.com/prometheus/client_model v0.6.1 // indirect + github.com/prometheus/common v0.55.0 // indirect + github.com/prometheus/procfs v0.15.1 // indirect github.com/rivo/uniseg v0.4.4 // indirect - github.com/rubenv/sql-migrate v1.6.0 // indirect + github.com/rubenv/sql-migrate v1.7.1 // indirect github.com/russross/blackfriday/v2 v2.1.0 // indirect - github.com/shopspring/decimal v1.3.1 // indirect - github.com/spf13/cast v1.6.0 // indirect - github.com/spf13/cobra v1.8.0 // indirect - github.com/spf13/pflag v1.0.5 // indirect + github.com/shopspring/decimal v1.4.0 // indirect + github.com/spf13/cast v1.7.0 // indirect + github.com/spf13/pflag v1.0.6 // indirect github.com/stretchr/objx v0.5.2 // indirect - github.com/stretchr/testify v1.9.0 // indirect + github.com/stretchr/testify v1.10.0 // indirect + github.com/x448/float16 v0.8.4 // indirect github.com/xeipuuv/gojsonpointer v0.0.0-20190905194746-02993c407bfb // indirect github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415 // indirect github.com/xeipuuv/gojsonschema v1.2.0 // indirect github.com/xlab/treeprint v1.2.0 // indirect - go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.46.1 // indirect - go.opentelemetry.io/otel v1.21.0 // indirect - go.opentelemetry.io/otel/metric v1.21.0 // indirect - go.opentelemetry.io/otel/trace v1.21.0 // indirect - go.starlark.net v0.0.0-20231121155337-90ade8b19d09 // indirect - golang.org/x/exp v0.0.0-20240103183307-be819d1f06fc // indirect - golang.org/x/net v0.24.0 // indirect - golang.org/x/oauth2 v0.15.0 // indirect - golang.org/x/sync v0.5.0 // indirect - golang.org/x/sys v0.19.0 // indirect - golang.org/x/term v0.19.0 // indirect - golang.org/x/text v0.14.0 // indirect - golang.org/x/time v0.5.0 // indirect - google.golang.org/appengine v1.6.8 // indirect - google.golang.org/genproto/googleapis/rpc v0.0.0-20240102182953-50ed04b92917 // indirect - google.golang.org/grpc v1.60.1 // indirect - google.golang.org/protobuf v1.33.0 // indirect - gopkg.in/evanphx/json-patch.v5 v5.7.0 // indirect + go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.53.0 // indirect + go.opentelemetry.io/otel v1.28.0 // indirect + go.opentelemetry.io/otel/metric v1.28.0 // indirect + go.opentelemetry.io/otel/trace v1.28.0 // indirect + golang.org/x/net v0.36.0 // indirect + golang.org/x/oauth2 v0.23.0 // indirect + golang.org/x/sync v0.11.0 // indirect + golang.org/x/sys v0.30.0 // indirect + golang.org/x/term v0.29.0 // indirect + golang.org/x/text v0.22.0 // indirect + golang.org/x/time v0.7.0 // indirect + google.golang.org/genproto/googleapis/rpc v0.0.0-20240826202546-f6391c0de4c7 // indirect + google.golang.org/grpc v1.65.0 // indirect + google.golang.org/protobuf v1.35.1 // indirect + gopkg.in/evanphx/json-patch.v4 v4.12.0 // indirect gopkg.in/inf.v0 v0.9.1 // indirect - gopkg.in/yaml.v2 v2.4.0 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect - k8s.io/apiextensions-apiserver v0.29.0 // indirect - k8s.io/apiserver v0.29.0 // indirect - k8s.io/cli-runtime v0.29.0 // indirect - k8s.io/component-base v0.29.0 // indirect - k8s.io/klog/v2 v2.120.1 // indirect - k8s.io/kube-openapi v0.0.0-20240228011516-70dd3763d340 // indirect - k8s.io/kubectl v0.29.0 // indirect - k8s.io/utils v0.0.0-20240102154912-e7106e64919e // indirect + k8s.io/api v0.32.2 // indirect + k8s.io/apiextensions-apiserver v0.32.2 // indirect + k8s.io/apimachinery v0.32.2 // indirect + k8s.io/apiserver v0.32.2 // indirect + k8s.io/cli-runtime v0.32.2 // indirect + k8s.io/client-go v0.32.2 // indirect + k8s.io/component-base v0.32.2 // indirect + k8s.io/klog/v2 v2.130.1 // indirect + k8s.io/kube-openapi v0.0.0-20241105132330-32ad38e42d3f // indirect + k8s.io/kubectl v0.32.1 // indirect + k8s.io/utils v0.0.0-20241104100929-3ea5e8cea738 // indirect olympos.io/encoding/edn v0.0.0-20201019073823-d3554ca0b0a3 // indirect - oras.land/oras-go v1.2.4 // indirect - sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd // indirect - sigs.k8s.io/kustomize/api v0.16.0 // indirect - sigs.k8s.io/kustomize/kyaml v0.16.0 // indirect - sigs.k8s.io/structured-merge-diff/v4 v4.4.1 // indirect + oras.land/oras-go v1.2.5 // indirect + sigs.k8s.io/json v0.0.0-20241010143419-9aa6b5e7a4b3 // indirect + sigs.k8s.io/kustomize/api v0.18.0 // indirect + sigs.k8s.io/kustomize/kyaml v0.18.1 // indirect + sigs.k8s.io/structured-merge-diff/v4 v4.4.2 // indirect + sigs.k8s.io/yaml v1.4.0 // indirect ) diff --git a/go.sum b/go.sum index 34c2f34..fe71acc 100644 --- a/go.sum +++ b/go.sum @@ -1,35 +1,38 @@ +dario.cat/mergo v1.0.1 h1:Ra4+bf83h2ztPIQYNP99R6m+Y7KfnARDfID+a+vLl4s= +dario.cat/mergo v1.0.1/go.mod h1:uNxQE+84aUszobStD9th8a29P2fMDhsBdgRYvZOxGmk= +filippo.io/edwards25519 v1.1.0 h1:FNf4tywRC1HmFuKW5xopWpigGjJKiJSV0Cqo0cJWDaA= +filippo.io/edwards25519 v1.1.0/go.mod h1:BxyFTGdWcka3PhytdK4V28tE5sGfRvvvRV7EaN4VDT4= github.com/AdaLogics/go-fuzz-headers v0.0.0-20230811130428-ced1acdcaa24 h1:bvDV9vkmnHYOMsOr4WLk+Vo07yKIzd94sVoIqshQ4bU= github.com/AdaLogics/go-fuzz-headers v0.0.0-20230811130428-ced1acdcaa24/go.mod h1:8o94RPi1/7XTJvwPpRSzSUedZrtlirdB3r9Z20bi2f8= github.com/Azure/go-ansiterm v0.0.0-20230124172434-306776ec8161 h1:L/gRVlceqvL25UVaW/CKtUDjefjrs0SPonmDGUVOYP0= github.com/Azure/go-ansiterm v0.0.0-20230124172434-306776ec8161/go.mod h1:xomTg63KZ2rFqZQzSB4Vz2SUXa1BpHTVz9L5PTmPC4E= github.com/BurntSushi/toml v1.2.1/go.mod h1:CxXYINrC8qIiEnFrOxCa7Jy5BFHlXnUU2pbicEuybxQ= -github.com/BurntSushi/toml v1.3.2 h1:o7IhLm0Msx3BaB+n3Ag7L8EVlByGnpq14C4YWiu/gL8= -github.com/BurntSushi/toml v1.3.2/go.mod h1:CxXYINrC8qIiEnFrOxCa7Jy5BFHlXnUU2pbicEuybxQ= -github.com/DATA-DOG/go-sqlmock v1.5.0 h1:Shsta01QNfFxHCfpW6YH2STWB0MudeXXEWMr20OEh60= -github.com/DATA-DOG/go-sqlmock v1.5.0/go.mod h1:f/Ixk793poVmq4qj/V1dPUg2JEAKC73Q5eFN3EC/SaM= +github.com/BurntSushi/toml v1.4.0 h1:kuoIxZQy2WRRk1pttg9asf+WVv6tWQuBNVmK8+nqPr0= +github.com/BurntSushi/toml v1.4.0/go.mod h1:ukJfTF/6rtPPRCnwkur4qwRxa8vTRFBF0uk2lLoLwho= +github.com/DATA-DOG/go-sqlmock v1.5.2 h1:OcvFkGmslmlZibjAjaHm3L//6LiuBgolP7OputlJIzU= +github.com/DATA-DOG/go-sqlmock v1.5.2/go.mod h1:88MAG/4G7SMwSE3CeA0ZKzrT5CiOU3OJ+JlNzwDqpNU= github.com/MakeNowJust/heredoc v1.0.0 h1:cXCdzVdstXyiTqTvfqk9SDHpKNjxuom+DOlyEeQ4pzQ= github.com/MakeNowJust/heredoc v1.0.0/go.mod h1:mG5amYoWBHf8vpLOuehzbGGw0EHxpZZ6lCpQ4fNJ8LE= github.com/Masterminds/goutils v1.1.1 h1:5nUrii3FMTL5diU80unEVvNevw1nH4+ZV4DSLVJLSYI= github.com/Masterminds/goutils v1.1.1/go.mod h1:8cTjp+g8YejhMuvIA5y2vz3BpJxksy863GQaJW2MFNU= -github.com/Masterminds/semver/v3 v3.2.0/go.mod h1:qvl/7zhW3nngYb5+80sSMF+FG2BjYrf8m9wsX0PNOMQ= -github.com/Masterminds/semver/v3 v3.2.1 h1:RN9w6+7QoMeJVGyfmbcgs28Br8cvmnucEXnY0rYXWg0= -github.com/Masterminds/semver/v3 v3.2.1/go.mod h1:qvl/7zhW3nngYb5+80sSMF+FG2BjYrf8m9wsX0PNOMQ= -github.com/Masterminds/sprig/v3 v3.2.3 h1:eL2fZNezLomi0uOLqjQoN6BfsDD+fyLtgbJMAj9n6YA= -github.com/Masterminds/sprig/v3 v3.2.3/go.mod h1:rXcFaZ2zZbLRJv/xSysmlgIM1u11eBaRMhvYXJNkGuM= +github.com/Masterminds/semver/v3 v3.3.0 h1:B8LGeaivUe71a5qox1ICM/JLl0NqZSW5CHyL+hmvYS0= +github.com/Masterminds/semver/v3 v3.3.0/go.mod h1:4V+yj/TJE1HU9XfppCwVMZq3I84lprf4nC11bSS5beM= +github.com/Masterminds/sprig/v3 v3.3.0 h1:mQh0Yrg1XPo6vjYXgtf5OtijNAKJRNcTdOOGZe3tPhs= +github.com/Masterminds/sprig/v3 v3.3.0/go.mod h1:Zy1iXRYNqNLUolqCpL4uhk6SHUMAOSCzdgBfDb35Lz0= github.com/Masterminds/squirrel v1.5.4 h1:uUcX/aBc8O7Fg9kaISIUsHXdKuqehiXAMQTYX8afzqM= github.com/Masterminds/squirrel v1.5.4/go.mod h1:NNaOrjSoIDfDA40n7sr2tPNZRfjzjA400rg+riTZj10= -github.com/Microsoft/go-winio v0.6.1 h1:9/kr64B9VUZrLm5YYwbGtUJnMgqWVOdUAXu6Migciow= -github.com/Microsoft/go-winio v0.6.1/go.mod h1:LRdKpFKfdobln8UmuiYcKPot9D2v6svN5+sAH+4kjUM= -github.com/Microsoft/hcsshim v0.11.4 h1:68vKo2VN8DE9AdN4tnkWnmdhqdbpUFM8OF3Airm7fz8= -github.com/Microsoft/hcsshim v0.11.4/go.mod h1:smjE4dvqPX9Zldna+t5FG3rnoHhaB7QYxPRqGcpAD9w= +github.com/Microsoft/go-winio v0.6.2 h1:F2VQgta7ecxGYO8k3ZZz3RS8fVIXVxONVUPlNERoyfY= +github.com/Microsoft/go-winio v0.6.2/go.mod h1:yd8OoFMLzJbo9gZq8j5qaps8bJ9aShtEA8Ipt1oGCvU= +github.com/Microsoft/hcsshim v0.11.7 h1:vl/nj3Bar/CvJSYo7gIQPyRWc9f3c6IeSNavBTSZNZQ= +github.com/Microsoft/hcsshim v0.11.7/go.mod h1:MV8xMfmECjl5HdO7U/3/hFVnkmSBjAjmA09d4bExKcU= github.com/Shopify/logrus-bugsnag v0.0.0-20171204204709-577dee27f20d h1:UrqY+r/OJnIp5u0s1SbQ8dVfLCZJsnvazdBP5hS4iRs= github.com/Shopify/logrus-bugsnag v0.0.0-20171204204709-577dee27f20d/go.mod h1:HI8ITrYtUY+O+ZhtlqUnD8+KwNPOyugEhfP9fdUIaEQ= github.com/alecthomas/template v0.0.0-20160405071501-a0175ee3bccc/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc= github.com/alecthomas/units v0.0.0-20151022065526-2efee857e7cf/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0= github.com/apenella/go-ansible v1.3.0 h1:INNaVzrgQMNIO9Yvnly6lA5KfN/pY3m1Z37gpmlUzPM= github.com/apenella/go-ansible v1.3.0/go.mod h1:qiLWolQqLkCoqFlPvdsKhxk7O0qjIBCPNhUKpH/vjaU= -github.com/apenella/go-ansible/v2 v2.0.1 h1:9o3805u4NAIMf1px5EKpRS2LEa2aeQbMtHB7vilt7XE= -github.com/apenella/go-ansible/v2 v2.0.1/go.mod h1:ifhiX4d0bpynb8yhdzLTmGl/38HqTYr/26PfjB1enXQ= +github.com/apenella/go-ansible/v2 v2.2.0 h1:IldFymiRy9hc+rCyZ0dj4jJfLUmW9wjzU4JxoOMy9KE= +github.com/apenella/go-ansible/v2 v2.2.0/go.mod h1:G3JNiTazO5t/PEriJFywV/4RFu2RtzAxxR7Z5SoYF78= github.com/apenella/go-common-utils/data v0.0.0-20220913191136-86daaa87e7df h1:sEikY2P+NZK/7VZUwIsnXIGElhsuFDSxh1bZYwHxdcI= github.com/apenella/go-common-utils/data v0.0.0-20220913191136-86daaa87e7df/go.mod h1:cLVL6GjUiKG/WyBzX+KD6h/XRV/HnNZIZbMNNiBgQ9o= github.com/apenella/go-common-utils/error v0.0.0-20220913191136-86daaa87e7df h1:SvlYbjlsSQDS7hbVT1h012/zdgvcwWJ+Yd9XRiiY/8s= @@ -42,6 +45,8 @@ github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24 github.com/beorn7/perks v1.0.0/go.mod h1:KWe93zE9D1o94FZ5RNwFwVgaQK1VOXiVxmqh+CedLV8= github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM= github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw= +github.com/blang/semver/v4 v4.0.0 h1:1PFHFE6yCCTv8C1TeyNNarDzntLi7wMI5i/pzqYIsAM= +github.com/blang/semver/v4 v4.0.0/go.mod h1:IbckMUScFkM3pff0VJDNKRiT6TG/YpiHIM2yvyW5YoQ= github.com/bshuster-repo/logrus-logstash-hook v1.0.0 h1:e+C0SB5R1pu//O4MQ3f9cFuPGoOVeF2fE4Og9otCc70= github.com/bshuster-repo/logrus-logstash-hook v1.0.0/go.mod h1:zsTqEiSzDgAa/8GZR7E1qaXrhYNDKBYy5/dWPTIflbk= github.com/bugsnag/bugsnag-go v0.0.0-20141110184014-b1d153021fcd h1:rFt+Y/IK1aEZkEHchZRSq9OQbsSzIT/OrI8YFFmRIng= @@ -50,62 +55,67 @@ github.com/bugsnag/osext v0.0.0-20130617224835-0dd3f918b21b h1:otBG+dV+YK+Soembj github.com/bugsnag/osext v0.0.0-20130617224835-0dd3f918b21b/go.mod h1:obH5gd0BsqsP2LwDJ9aOkm/6J86V6lyAXCoQWGw3K50= github.com/bugsnag/panicwrap v0.0.0-20151223152923-e2c28503fcd0 h1:nvj0OLI3YqYXer/kZD8Ri1aaunCxIEsOst1BVJswV0o= github.com/bugsnag/panicwrap v0.0.0-20151223152923-e2c28503fcd0/go.mod h1:D/8v3kj0zr8ZAKg1AQ6crr+5VwKN5eIywRkfhyM/+dE= -github.com/cespare/xxhash/v2 v2.2.0 h1:DC2CZ1Ep5Y4k3ZQ899DldepgrayRUGE6BBZ/cd9Cj44= -github.com/cespare/xxhash/v2 v2.2.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= +github.com/cespare/xxhash/v2 v2.3.0 h1:UL815xU9SqsFlibzuggzjXhog7bL6oX9BbNZnL2UFvs= +github.com/cespare/xxhash/v2 v2.3.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= github.com/chai2010/gettext-go v1.0.2 h1:1Lwwip6Q2QGsAdl/ZKPCwTe9fe0CjlUbqj5bFNSjIRk= github.com/chai2010/gettext-go v1.0.2/go.mod h1:y+wnP2cHYaVj19NZhYKAwEMH2CI1gNHeQQ+5AjwawxA= github.com/containerd/cgroups v1.1.0 h1:v8rEWFl6EoqHB+swVNjVoCJE8o3jX7e8nqBGPLaDFBM= github.com/containerd/cgroups v1.1.0/go.mod h1:6ppBcbh/NOOUU+dMKrykgaBnK9lCIBxHqJDGwsa1mIw= -github.com/containerd/containerd v1.7.11 h1:lfGKw3eU35sjV0aG2eYZTiwFEY1pCzxdzicHP3SZILw= -github.com/containerd/containerd v1.7.11/go.mod h1:5UluHxHTX2rdvYuZ5OJTC5m/KJNs0Zs9wVoJm9zf5ZE= +github.com/containerd/containerd v1.7.24 h1:zxszGrGjrra1yYJW/6rhm9cJ1ZQ8rkKBR48brqsa7nA= +github.com/containerd/containerd v1.7.24/go.mod h1:7QUzfURqZWCZV7RLNEn1XjUCQLEf0bkaK4GjUaZehxw= github.com/containerd/continuity v0.4.2 h1:v3y/4Yz5jwnvqPKJJ+7Wf93fyWoCB3F5EclWG023MDM= github.com/containerd/continuity v0.4.2/go.mod h1:F6PTNCKepoxEaXLQp3wDAjygEnImnZ/7o4JzpodfroQ= +github.com/containerd/errdefs v0.3.0 h1:FSZgGOeK4yuT/+DnF07/Olde/q4KBoMsaamhXxIMDp4= +github.com/containerd/errdefs v0.3.0/go.mod h1:+YBYIdtsnF4Iw6nWZhJcqGSg/dwvV7tyJ/kCkyJ2k+M= github.com/containerd/log v0.1.0 h1:TCJt7ioM2cr/tfR8GPbGf9/VRAX8D2B4PjzCpfX540I= github.com/containerd/log v0.1.0/go.mod h1:VRRf09a7mHDIRezVKTRCrOq78v577GXq3bSa3EhrzVo= -github.com/cpuguy83/go-md2man/v2 v2.0.3/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= +github.com/containerd/platforms v0.2.1 h1:zvwtM3rz2YHPQsF2CHYM8+KtB5dvhISiXh5ZpSBQv6A= +github.com/containerd/platforms v0.2.1/go.mod h1:XHCb+2/hzowdiut9rkudds9bE5yJ7npe7dG/wG+uFPw= +github.com/cpuguy83/go-md2man/v2 v2.0.6/go.mod h1:oOW0eioCTA6cOiMLiUPZOpcVxMig6NIQQ7OS05n1F4g= github.com/creack/pty v1.1.18 h1:n56/Zwd5o6whRC5PMGretI4IdRLlmBXYNjScPaBgsbY= github.com/creack/pty v1.1.18/go.mod h1:MOBLtS5ELjhRRrroQr9kyvTxUAFNvYEK993ew/Vr4O4= -github.com/cyphar/filepath-securejoin v0.2.4 h1:Ugdm7cg7i6ZK6x3xDF1oEu1nfkyfH53EtKeQYTC3kyg= -github.com/cyphar/filepath-securejoin v0.2.4/go.mod h1:aPGpWjXOXUn2NCNjFvBE6aRxGGx79pTxQpKOJNYHHl4= +github.com/cyphar/filepath-securejoin v0.3.6 h1:4d9N5ykBnSp5Xn2JkhocYDkOpURL/18CYMpo6xB9uWM= +github.com/cyphar/filepath-securejoin v0.3.6/go.mod h1:Sdj7gXlvMcPZsbhwhQ33GguGLDGQL7h7bg04C/+u9jI= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= -github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc h1:U9qPSI2PIWSS1VwoXQT9A3Wy9MM3WgvqSxFWenqJduM= +github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/distribution/distribution/v3 v3.0.0-20221208165359-362910506bc2 h1:aBfCb7iqHmDEIp6fBvC/hQUddQfg+3qdYjwzaiP9Hnc= github.com/distribution/distribution/v3 v3.0.0-20221208165359-362910506bc2/go.mod h1:WHNsWjnIn2V1LYOrME7e8KxSeKunYHsxEm4am0BUtcI= -github.com/distribution/reference v0.5.0 h1:/FUIFXtfc/x2gpa5/VGfiGLuOIdYa1t65IKK2OFGvA0= -github.com/distribution/reference v0.5.0/go.mod h1:BbU0aIcezP1/5jX/8MP0YiH4SdvB5Y4f/wlDRiLyi3E= -github.com/docker/cli v24.0.7+incompatible h1:wa/nIwYFW7BVTGa7SWPVyyXU9lgORqUb1xfI36MSkFg= -github.com/docker/cli v24.0.7+incompatible/go.mod h1:JLrzqnKDaYBop7H2jaqPtU4hHvMKP+vjCwu2uszcLI8= +github.com/distribution/reference v0.6.0 h1:0IXCQ5g4/QMHHkarYzh5l+u8T3t73zM5QvfrDyIgxBk= +github.com/distribution/reference v0.6.0/go.mod h1:BbU0aIcezP1/5jX/8MP0YiH4SdvB5Y4f/wlDRiLyi3E= +github.com/docker/cli v25.0.1+incompatible h1:mFpqnrS6Hsm3v1k7Wa/BO23oz0k121MTbTO1lpcGSkU= +github.com/docker/cli v25.0.1+incompatible/go.mod h1:JLrzqnKDaYBop7H2jaqPtU4hHvMKP+vjCwu2uszcLI8= github.com/docker/distribution v2.8.3+incompatible h1:AtKxIZ36LoNK51+Z6RpzLpddBirtxJnzDrHLEKxTAYk= github.com/docker/distribution v2.8.3+incompatible/go.mod h1:J2gT2udsDAN96Uj4KfcMRqY0/ypR+oyYUYmja8H+y+w= -github.com/docker/docker v24.0.7+incompatible h1:Wo6l37AuwP3JaMnZa226lzVXGA3F9Ig1seQen0cKYlM= -github.com/docker/docker v24.0.7+incompatible/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk= +github.com/docker/docker v25.0.6+incompatible h1:5cPwbwriIcsua2REJe8HqQV+6WlWc1byg2QSXzBxBGg= +github.com/docker/docker v25.0.6+incompatible/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk= github.com/docker/docker-credential-helpers v0.8.0 h1:YQFtbBQb4VrpoPxhFuzEBPQ9E16qz5SpHLS+uswaCp8= github.com/docker/docker-credential-helpers v0.8.0/go.mod h1:UGFXcuoQ5TxPiB54nHOZ32AWRqQdECoh/Mg0AlEYb40= -github.com/docker/go-connections v0.4.0 h1:El9xVISelRB7BuFusrZozjnkIM5YnzCViNKohAFqRJQ= -github.com/docker/go-connections v0.4.0/go.mod h1:Gbd7IOopHjR8Iph03tsViu4nIes5XhDvyHbTtUxmeec= +github.com/docker/go-connections v0.5.0 h1:USnMq7hx7gwdVZq1L49hLXaFtUdTADjXGp+uj1Br63c= +github.com/docker/go-connections v0.5.0/go.mod h1:ov60Kzw0kKElRwhNs9UlUHAE/F9Fe6GLaXnqyDdmEXc= github.com/docker/go-events v0.0.0-20190806004212-e31b211e4f1c h1:+pKlWGMw7gf6bQ+oDZB4KHQFypsfjYlq/C4rfL7D3g8= github.com/docker/go-events v0.0.0-20190806004212-e31b211e4f1c/go.mod h1:Uw6UezgYA44ePAFQYUehOuCzmy5zmg/+nl2ZfMWGkpA= github.com/docker/go-metrics v0.0.1 h1:AgB/0SvBxihN0X8OR4SjsblXkbMvalQ8cjmtKQ2rQV8= github.com/docker/go-metrics v0.0.1/go.mod h1:cG1hvH2utMXtqgqqYE9plW6lDxS3/5ayHzueweSI3Vw= -github.com/docker/go-units v0.5.0 h1:69rxXcBk27SvSaaxTtLh/8llcHD8vYHT7WSdRZ/jvr4= -github.com/docker/go-units v0.5.0/go.mod h1:fgPhTUdO+D/Jk86RDLlptpiXQzgHJF7gydDDbaIK4Dk= github.com/docker/libtrust v0.0.0-20150114040149-fa567046d9b1 h1:ZClxb8laGDf5arXfYcAtECDFgAgHklGI8CxgjHnXKJ4= github.com/docker/libtrust v0.0.0-20150114040149-fa567046d9b1/go.mod h1:cyGadeNEkKy96OOhEzfZl+yxihPEzKnqJwvfuSUqbZE= github.com/emicklei/go-restful/v3 v3.11.1 h1:S+9bSbua1z3FgCnV0KKOSSZ3mDthb5NyEPL5gEpCvyk= github.com/emicklei/go-restful/v3 v3.11.1/go.mod h1:6n3XBCmQQb25CM2LCACGz8ukIrRry+4bhvbpWn3mrbc= -github.com/evanphx/json-patch v5.7.0+incompatible h1:vgGkfT/9f8zE6tvSCe74nfpAVDQ2tG6yudJd8LBksgI= -github.com/evanphx/json-patch v5.7.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk= +github.com/evanphx/json-patch v5.9.0+incompatible h1:fBXyNpNMuTTDdquAq/uisOr2lShz4oaXpDTX2bLe7ls= +github.com/evanphx/json-patch v5.9.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk= github.com/exponent-io/jsonpath v0.0.0-20210407135951-1de76d718b3f h1:Wl78ApPPB2Wvf/TIe2xdyJxTlb6obmF18d8QdkxNDu4= github.com/exponent-io/jsonpath v0.0.0-20210407135951-1de76d718b3f/go.mod h1:OSYXu++VVOHnXeitef/D8n/6y4QV8uLHSFXX4NeXMGc= github.com/fatih/color v1.16.0 h1:zmkK9Ngbjj+K0yRhTVONQh1p/HknKYSlNT+vZCzyokM= github.com/fatih/color v1.16.0/go.mod h1:fL2Sau1YI5c0pdGEVCbKQbLXB6edEj1ZgiY4NijnWvE= github.com/felixge/httpsnoop v1.0.4 h1:NFTV2Zj1bL4mc9sqWACXbQFVBBg2W3GPvqp8/ESS2Wg= github.com/felixge/httpsnoop v1.0.4/go.mod h1:m8KPJKqk1gH5J9DgRY2ASl2lWCfGKXixSwevea8zH2U= -github.com/foxcpp/go-mockdns v1.0.0 h1:7jBqxd3WDWwi/6WhDvacvH1XsN3rOLXyHM1uhvIx6FI= -github.com/foxcpp/go-mockdns v1.0.0/go.mod h1:lgRN6+KxQBawyIghpnl5CezHFGS9VLzvtVlwxvzXTQ4= +github.com/foxcpp/go-mockdns v1.1.0 h1:jI0rD8M0wuYAxL7r/ynTrCQQq0BVqfB99Vgk7DlmewI= +github.com/foxcpp/go-mockdns v1.1.0/go.mod h1:IhLeSFGed3mJIAXPH2aiRQB+kqz7oqu8ld2qVbOu7Wk= github.com/frankban/quicktest v1.14.6 h1:7Xjx+VpznH+oBnejlPUj8oUpdxnVs4f8XU8WnHkI4W8= github.com/frankban/quicktest v1.14.6/go.mod h1:4ptaffx2x8+WTWXmUCuVU6aPUX1/Mz7zb5vbUoiM6w0= +github.com/fxamacker/cbor/v2 v2.7.0 h1:iM5WgngdRBanHcxugY4JySA0nk1wZorNOpTgCMedv5E= +github.com/fxamacker/cbor/v2 v2.7.0/go.mod h1:pxXPTn3joSm21Gbwsv0w9OSA2y1HFR9qXEeXQVeNoDQ= github.com/go-errors/errors v1.5.1 h1:ZwEMSLRCapFLflTpT7NKaAc7ukJ8ZPEjzlxt8rPN8bk= github.com/go-errors/errors v1.5.1/go.mod h1:sIVyrIiJhuEF+Pj9Ebtd6P/rEYROXFi3BopGUQ5a5Og= github.com/go-gorp/gorp/v3 v3.1.0 h1:ItKF/Vbuj31dmV4jxA1qblpSwkl9g1typ24xoe70IGs= @@ -114,23 +124,25 @@ github.com/go-kit/kit v0.8.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2 github.com/go-logfmt/logfmt v0.3.0/go.mod h1:Qt1PoO58o5twSAckw1HlFXLmHsOX5/0LbT9GBnD5lWE= github.com/go-logfmt/logfmt v0.4.0/go.mod h1:3RMwSq7FuexP4Kalkev3ejPJsZTpXXBr9+V4qmtdjCk= github.com/go-logr/logr v1.2.2/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= -github.com/go-logr/logr v1.4.1 h1:pKouT5E8xu9zeFC39JXRDukb6JFQPXM5p5I91188VAQ= -github.com/go-logr/logr v1.4.1/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY= +github.com/go-logr/logr v1.4.2 h1:6pFjapn8bFcIbiKo3XT4j/BhANplGihG6tvd+8rYgrY= +github.com/go-logr/logr v1.4.2/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY= github.com/go-logr/stdr v1.2.2 h1:hSWxHoqTgW2S2qGc0LTAI563KZ5YKYRhT3MFKZMbjag= github.com/go-logr/stdr v1.2.2/go.mod h1:mMo/vtBO5dYbehREoey6XUKy/eSumjCCveDpRre4VKE= -github.com/go-openapi/jsonpointer v0.20.2 h1:mQc3nmndL8ZBzStEo3JYF8wzmeWffDH4VbXz58sAx6Q= -github.com/go-openapi/jsonpointer v0.20.2/go.mod h1:bHen+N0u1KEO3YlmqOjTT9Adn1RfD91Ar825/PuiRVs= +github.com/go-openapi/jsonpointer v0.21.0 h1:YgdVicSA9vH5RiHs9TZW5oyafXZFc6+2Vc1rr/O9oNQ= +github.com/go-openapi/jsonpointer v0.21.0/go.mod h1:IUyH9l/+uyhIYQ/PXVA41Rexl+kOkAPDdXEYns6fzUY= github.com/go-openapi/jsonreference v0.20.4 h1:bKlDxQxQJgwpUSgOENiMPzCTBVuc7vTdXSSgNeAhojU= github.com/go-openapi/jsonreference v0.20.4/go.mod h1:5pZJyJP2MnYCpoeoMAql78cCHauHj0V9Lhc506VOpw4= -github.com/go-openapi/swag v0.22.7 h1:JWrc1uc/P9cSomxfnsFSVWoE1FW6bNbrVPmpQYpCcR8= -github.com/go-openapi/swag v0.22.7/go.mod h1:Gl91UqO+btAM0plGGxHqJcQZ1ZTy6jbmridBTsDy8A0= -github.com/go-sql-driver/mysql v1.6.0 h1:BCTh4TKNUYmOmMUcQ3IipzF5prigylS7XXjEkfCHuOE= -github.com/go-sql-driver/mysql v1.6.0/go.mod h1:DCzpHaOWr8IXmIStZouvnhqoel9Qv2LBy8hT2VhHyBg= +github.com/go-openapi/swag v0.23.0 h1:vsEVJDUo2hPJ2tu0/Xc+4noaxyEffXNIs3cOULZ+GrE= +github.com/go-openapi/swag v0.23.0/go.mod h1:esZ8ITTYEsH1V2trKHjAN8Ai7xHb8RV+YSZ577vPjgQ= +github.com/go-sql-driver/mysql v1.8.1 h1:LedoTUt/eveggdHS9qUFC1EFSa8bU2+1pZjSRpvNJ1Y= +github.com/go-sql-driver/mysql v1.8.1/go.mod h1:wEBSXgmK//2ZFJyE+qWnIsVGmvmEKlqwuVSjsCm7DZg= github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY= -github.com/go-task/slim-sprig v0.0.0-20230315185526-52ccab3ef572 h1:tfuBGBXKqDEevZMzYi5KSi8KkcZtzBcTgAUUtapy0OI= -github.com/go-task/slim-sprig v0.0.0-20230315185526-52ccab3ef572/go.mod h1:9Pwr4B2jHnOSGXyyzV8ROjYa2ojvAY6HCGYYfMoC3Ls= +github.com/go-task/slim-sprig/v3 v3.0.0 h1:sUs3vkvUymDpBKi3qH1YSqBQk9+9D/8M2mN1vB6EwHI= +github.com/go-task/slim-sprig/v3 v3.0.0/go.mod h1:W848ghGpv3Qj3dhTPRyJypKRiqCdHZiAzKg9hl15HA8= github.com/gobwas/glob v0.2.3 h1:A4xDbljILXROh+kObIiy5kIaPYD8e96x1tgBhUI5J+Y= github.com/gobwas/glob v0.2.3/go.mod h1:d3Ez4x06l9bZtSvzIay5+Yzi0fmZzPgnTbPcKjJAkT8= +github.com/gofrs/flock v0.12.1 h1:MTLVXXHf8ekldpJk3AKicLij9MdwOWkZ+a/jHHZby9E= +github.com/gofrs/flock v0.12.1/go.mod h1:9zxTsyu5xtJ9DK+1tFZyibEV7y3uwDxPPfbxeeHCoD0= github.com/gogo/protobuf v1.1.1/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ= github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q= github.com/gogo/protobuf v1.3.2/go.mod h1:P1XiOD3dCwIKUDQYPy72D8LYyHL2YPYrpS2s69NZV8Q= @@ -139,8 +151,6 @@ github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da/go.mod h1:cIg4er github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= github.com/golang/protobuf v1.3.1/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= github.com/golang/protobuf v1.3.2/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= -github.com/golang/protobuf v1.5.0/go.mod h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaSAoJOfIk= -github.com/golang/protobuf v1.5.2/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY= github.com/golang/protobuf v1.5.4 h1:i7eJL8qZTpSEXOPTxNKhASYpMn+8e5Q6AdndVa1dWek= github.com/golang/protobuf v1.5.4/go.mod h1:lnTiLA8Wa4RWRcIUkrtSVa5nRhsEGBg48fD6rSs7xps= github.com/gomodule/redigo v1.8.2 h1:H5XSIre1MB5NbPYFp+i1NBbb5qN1W8Y8YAQoAYbkm8k= @@ -150,25 +160,22 @@ github.com/google/btree v1.1.2/go.mod h1:qOPhT0dTNdNzV6Z/lhRX0YXUafgPLFUh+gZMl76 github.com/google/gnostic-models v0.6.8 h1:yo/ABAfM5IMRsS1VnXjTBvUb61tFIHozhlYvRgGre9I= github.com/google/gnostic-models v0.6.8/go.mod h1:5n7qKqH0f5wFt+aWF8CW6pZLLNOfYuF5OpfBSENuI8U= github.com/google/go-cmp v0.3.0/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= -github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.5.9/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI= github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= github.com/google/gofuzz v1.2.0 h1:xRy4A+RhZaiKjJ1bPfwQ8sedCA+YS2YcCHW6ec7JMi0= github.com/google/gofuzz v1.2.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= -github.com/google/pprof v0.0.0-20210720184732-4bb14d4b1be1 h1:K6RDEckDVWvDI9JAJYCmNdQXq6neHJOYx3V6jnqNEec= -github.com/google/pprof v0.0.0-20210720184732-4bb14d4b1be1/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= +github.com/google/pprof v0.0.0-20241029153458-d1b30febd7db h1:097atOisP2aRj7vFgYQBbFN4U4JNXUNYpxael3UzMyo= +github.com/google/pprof v0.0.0-20241029153458-d1b30febd7db/go.mod h1:vavhavw2zAxS5dIdcRluK6cSGGPlZynqzFM8NdvU144= github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510 h1:El6M4kTTCOh6aBiKaUGG7oYTSPP8MxqL4YI3kZKwcP4= github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510/go.mod h1:pupxD2MaaD3pAXIBCelhxNneeOaAeabZDe5s4K6zSpQ= -github.com/google/uuid v1.1.1/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= -github.com/google/uuid v1.5.0 h1:1p67kYwdtXjb0gL0BPiP1Av9wiZPo5A8z2cWkTZ+eyU= -github.com/google/uuid v1.5.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= +github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= +github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/gorilla/handlers v1.5.1 h1:9lRY6j8DEeeBT10CvO9hGW0gmky0BprnvDI5vfhUHH4= github.com/gorilla/handlers v1.5.1/go.mod h1:t8XrUpc4KVXb7HGyJ4/cEnwQiaxrX/hz1Zv/4g96P1Q= github.com/gorilla/mux v1.8.1 h1:TuBL49tXwgrFYWhqrNgrUNEY92u81SPhu7sTdzQEiWY= github.com/gorilla/mux v1.8.1/go.mod h1:AKf9I4AEqPTmMytcMc0KkNouC66V3BtZ4qD5fmWSiMQ= -github.com/gorilla/websocket v1.4.2/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE= github.com/gorilla/websocket v1.5.1 h1:gmztn0JnHVt9JZquRuzLw3g4wouNVzKL15iLr/zn/QY= github.com/gorilla/websocket v1.5.1/go.mod h1:x3kM2JMyaluk02fnUJpQuwD2dCS5NDG2ZHL0uE0tcaY= github.com/gosuri/uitable v0.0.4 h1:IG2xLKRvErL3uhY6e1BylFzG+aJiwQviDDTfOKeKTpY= @@ -182,18 +189,14 @@ github.com/hashicorp/go-multierror v1.1.1 h1:H5DkEtf6CXdFp0N0Em5UCwQpXMWke8IA0+l github.com/hashicorp/go-multierror v1.1.1/go.mod h1:iw975J/qwKPdAO1clOe2L8331t/9/fmwbPZ6JB6eMoM= github.com/hashicorp/golang-lru v0.5.4 h1:YDjusn29QI/Das2iO9M0BHnIbxPeyuCHsjMW+lJfyTc= github.com/hashicorp/golang-lru v0.5.4/go.mod h1:iADmTwqILo4mZ8BN3D2Q6+9jd8WM5uGBxy+E8yxSoD4= -github.com/huandu/xstrings v1.3.3/go.mod h1:y5/lhBue+AyNmUVz9RLU9xbLR0o4KIIExikq4ovT0aE= -github.com/huandu/xstrings v1.4.0 h1:D17IlohoQq4UcpqD7fDk80P7l+lwAmlFaBHgOipl2FU= -github.com/huandu/xstrings v1.4.0/go.mod h1:y5/lhBue+AyNmUVz9RLU9xbLR0o4KIIExikq4ovT0aE= +github.com/huandu/xstrings v1.5.0 h1:2ag3IFq9ZDANvthTwTiqSSZLjDc+BedvHPAp5tJy2TI= +github.com/huandu/xstrings v1.5.0/go.mod h1:y5/lhBue+AyNmUVz9RLU9xbLR0o4KIIExikq4ovT0aE= github.com/ilyakaznacheev/cleanenv v1.5.0 h1:0VNZXggJE2OYdXE87bfSSwGxeiGt9moSR2lOrsHHvr4= github.com/ilyakaznacheev/cleanenv v1.5.0/go.mod h1:a5aDzaJrLCQZsazHol1w8InnDcOX0OColm64SlIi6gk= -github.com/imdario/mergo v0.3.11/go.mod h1:jmQim1M+e3UYxmgPu/WyfjB3N3VflVyUjjjwH0dnCYA= -github.com/imdario/mergo v0.3.16 h1:wwQJbIsHYGMUyLSPrEq1CT16AhnhNJQ51+4fdHUnCl4= -github.com/imdario/mergo v0.3.16/go.mod h1:WBLT9ZmE3lPoWsEzCh9LPo3TiwVN+ZKEjmz+hD27ysY= github.com/inconshreveable/mousetrap v1.1.0 h1:wN+x4NVGpMsO7ErUn/mUI3vEoE6Jt13X2s0bqwp9tc8= github.com/inconshreveable/mousetrap v1.1.0/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw= -github.com/jmoiron/sqlx v1.3.5 h1:vFFPA71p1o5gAeqtEAwLU4dnX2napprKtHr7PYIcN3g= -github.com/jmoiron/sqlx v1.3.5/go.mod h1:nRVWtLre0KfCLJvgxzCsLVMogSvQ1zNJtpYr2Ccp0mQ= +github.com/jmoiron/sqlx v1.4.0 h1:1PLqN7S1UYp5t4SrVVnt4nUVNemrDAtxlulVe+Qgm3o= +github.com/jmoiron/sqlx v1.4.0/go.mod h1:ZrZ7UsYB/weZdl2Bxg6jCRO9c3YHl8r3ahlKmRT4JLY= github.com/joho/godotenv v1.5.1 h1:7eLL/+HRGLY0ldzfGMeQkb7vMd0as4CfYvUVzLqw0N0= github.com/joho/godotenv v1.5.1/go.mod h1:f4LDr5Voq0i2e/R5DDNOoa2zzDfwtkZa6DnEwAbqwq4= github.com/josharian/intern v1.0.0 h1:vlS4z54oSdjm0bgjRigI+G1HpF+tI+9rE5LLzOg8HmY= @@ -205,8 +208,10 @@ github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHm github.com/julienschmidt/httprouter v1.2.0/go.mod h1:SYymIcj16QtmaHHD7aYtjjsJG7VTCxuUUipMqKk8s4w= github.com/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI2bnpBCr8= github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck= -github.com/klauspost/compress v1.17.4 h1:Ej5ixsIri7BrIjBkRZLTo6ghwrEtHFk7ijlczPW4fZ4= -github.com/klauspost/compress v1.17.4/go.mod h1:/dCuZOvVtNoHsyb+cuJD3itjs3NbnF6KH9zAO4BDxPM= +github.com/klauspost/compress v1.17.11 h1:In6xLpyWOi1+C7tXUUWv2ot1QvBjxevKAaI6IXrJmUc= +github.com/klauspost/compress v1.17.11/go.mod h1:pMDklpSncoRMuLFrf1W9Ss9KT+0rH90U12bZKk7uwG0= +github.com/kluctl/go-embed-python v0.0.0-3.13.1-20241219-1 h1:x1cSEj4Ug5mpuZgUHLvUmlc5r//KHFn6iYiRSrRcVy4= +github.com/kluctl/go-embed-python v0.0.0-3.13.1-20241219-1/go.mod h1:3ebNU9QBrNpUO+Hj6bHaGpkh5pymDHQ+wwVPHTE4mCE= github.com/konsorten/go-windows-terminal-sequences v1.0.1/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= github.com/kr/logfmt v0.0.0-20140226030751-b84e30acd515/go.mod h1:+0opPa2QZZtGFBFZlji/RkVcI2GknAs/DXo4wKdlNEc= github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE= @@ -217,7 +222,6 @@ github.com/lann/builder v0.0.0-20180802200727-47ae307949d0 h1:SOEGU9fKiNWd/HOJuq github.com/lann/builder v0.0.0-20180802200727-47ae307949d0/go.mod h1:dXGbAdH5GtBTC4WfIxhKZfyBF/HBFgRZSWwZ9g/He9o= github.com/lann/ps v0.0.0-20150810152359-62de8c46ede0 h1:P6pPBnrTSX3DEVR4fDembhRWSsG5rVo6hYhAB/ADZrk= github.com/lann/ps v0.0.0-20150810152359-62de8c46ede0/go.mod h1:vmVJ0l/dxyfGW6FmdpVm2joNMFikkuWg0EoCKLGUMNw= -github.com/lib/pq v1.2.0/go.mod h1:5WUZQaWbwv1U+lTReE5YruASi9Al49XbQIvNi/34Woo= github.com/lib/pq v1.10.9 h1:YXG7RB+JIjhP29X+OtkiDnYaXQwpS4JEWq7dtCCRUEw= github.com/lib/pq v1.10.9/go.mod h1:AlVN5x4E4T544tWzH6hKfbfQvm3HdbOxrmggDNAPY9o= github.com/liggitt/tabwriter v0.0.0-20181228230101-89fcab3d43de h1:9TO3cAIGXtEhnIaL+V+BEER86oLrvS+kWobKpbJuye0= @@ -231,30 +235,27 @@ github.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWE github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y= github.com/mattn/go-runewidth v0.0.15 h1:UNAjwbU9l54TA3KzvqLGxwWjHmMgBUVhBiTjelZgg3U= github.com/mattn/go-runewidth v0.0.15/go.mod h1:Jdepj2loyihRzMpdS35Xk/zdY8IAYHsh153qUoGf23w= -github.com/mattn/go-sqlite3 v1.14.6/go.mod h1:NyWgC/yNuGj7Q9rpYnZvas74GogHl5/Z4A/KQRfk6bU= -github.com/mattn/go-sqlite3 v1.14.15 h1:vfoHhTN1af61xCRSWzFIWzx2YskyMTwHLrExkBOjvxI= -github.com/mattn/go-sqlite3 v1.14.15/go.mod h1:2eHXhiwb8IkHr+BDWZGa96P6+rkvnG63S2DGjv9HUNg= +github.com/mattn/go-sqlite3 v1.14.22 h1:2gZY6PC6kBnID23Tichd1K+Z0oS6nE/XwU+Vz/5o4kU= +github.com/mattn/go-sqlite3 v1.14.22/go.mod h1:Uh1q+B4BYcTPb+yiD3kU8Ct7aC0hY9fxUwlHK0RXw+Y= github.com/matttproud/golang_protobuf_extensions v1.0.1/go.mod h1:D8He9yQNgCq6Z5Ld7szi9bcBfOoFv/3dc6xSMkL2PC0= -github.com/matttproud/golang_protobuf_extensions/v2 v2.0.0 h1:jWpvCLoY8Z/e3VKvlsiIGKtc+UG6U5vzxaoagmhXfyg= -github.com/matttproud/golang_protobuf_extensions/v2 v2.0.0/go.mod h1:QUyp042oQthUoa9bqDv0ER0wrtXnBruoNd7aNjkbP+k= -github.com/miekg/dns v1.1.25 h1:dFwPR6SfLtrSwgDcIq2bcU/gVutB4sNApq2HBdqcakg= -github.com/miekg/dns v1.1.25/go.mod h1:bPDLeHnStXmXAq1m/Ch/hvfNHr14JKNPMBo3VZKjuso= -github.com/mitchellh/copystructure v1.0.0/go.mod h1:SNtv71yrdKgLRyLFxmLdkAbkKEFWgYaq1OVrnRcwhnw= +github.com/miekg/dns v1.1.57 h1:Jzi7ApEIzwEPLHWRcafCN9LZSBbqQpxjt/wpgvg7wcM= +github.com/miekg/dns v1.1.57/go.mod h1:uqRjCRUuEAA6qsOiJvDd+CFo/vW+y5WR6SNmHE55hZk= github.com/mitchellh/copystructure v1.2.0 h1:vpKXTN4ewci03Vljg/q9QvCGUDttBOGBIa15WveJJGw= github.com/mitchellh/copystructure v1.2.0/go.mod h1:qLl+cE2AmVv+CoeAwDPye/v+N2HKCj9FbZEVFJRxO9s= github.com/mitchellh/go-wordwrap v1.0.1 h1:TLuKupo69TCn6TQSyGxwI1EblZZEsQ0vMlAFQflz0v0= github.com/mitchellh/go-wordwrap v1.0.1/go.mod h1:R62XHJLzvMFRBbcrT7m7WgmE1eOyTSsCt+hzestvNj0= -github.com/mitchellh/reflectwalk v1.0.0/go.mod h1:mSTlrgnPZtwu0c4WaC2kGObEpuNDbx0jmZXqmk4esnw= github.com/mitchellh/reflectwalk v1.0.2 h1:G2LzWKi524PWgd3mLHV8Y5k7s6XUvT0Gef6zxSIeXaQ= github.com/mitchellh/reflectwalk v1.0.2/go.mod h1:mSTlrgnPZtwu0c4WaC2kGObEpuNDbx0jmZXqmk4esnw= -github.com/mittwald/go-helm-client v0.12.9 h1:tfI5ECgrbfAolA9TnlCeA5F2TEIvdsOxVmoSyW80lCI= -github.com/mittwald/go-helm-client v0.12.9/go.mod h1:ukR3Et5zbfBij7bFL1ZnLvPytsbBXCrI2qQYr2yVi9I= +github.com/mittwald/go-helm-client v0.12.17 h1:PncoE1u3fXuHWLineNDQ4hI5J4uVbMW3JWrtdBR86TI= +github.com/mittwald/go-helm-client v0.12.17/go.mod h1:GQxuPspUcMsxWWDtYzjRdxOAjh3LKADIfgqtUf9mjHk= github.com/moby/locker v1.0.1 h1:fOXqR41zeveg4fFODix+1Ch4mj/gT0NE1XJbp/epuBg= github.com/moby/locker v1.0.1/go.mod h1:S7SDdo5zpBK84bzzVlKr2V0hz+7x9hWbYC/kq7oQppc= -github.com/moby/spdystream v0.2.0 h1:cjW1zVyyoiM0T7b6UoySUFqzXMoqRckQtXwGPiBhOM8= -github.com/moby/spdystream v0.2.0/go.mod h1:f7i0iNDQJ059oMTcWxx8MA/zKFIuD/lY+0GqbN2Wy8c= +github.com/moby/spdystream v0.5.0 h1:7r0J1Si3QO/kjRitvSLVVFUjxMEb/YLj6S9FF62JBCU= +github.com/moby/spdystream v0.5.0/go.mod h1:xBAYlnt/ay+11ShkdFKNAG7LsyK/tmNBVvVOwrfMgdI= github.com/moby/sys/mountinfo v0.6.2 h1:BzJjoreD5BMFNmD9Rus6gdd1pLuecOFPt8wC+Vygl78= github.com/moby/sys/mountinfo v0.6.2/go.mod h1:IJb6JQeOklcdMU9F5xQ8ZALD+CUr5VlGpwtX+VE0rpI= +github.com/moby/sys/userns v0.1.0 h1:tVLXkFOxVu9A64/yh59slHVv9ahO9UIev4JZusOLG/g= +github.com/moby/sys/userns v0.1.0/go.mod h1:IHUYgu/kao6N8YZlp9Cf444ySSvCmDlmzUcYfDHOl28= github.com/moby/term v0.5.0 h1:xt8Q1nalod/v7BqbG21f8mQPqH+xAaC9C3N3wfWbVP0= github.com/moby/term v0.5.0/go.mod h1:8FzsFHVUBGZdbDsJw/ot+X+d5HLUbvklYLJ9uGfcI3Y= github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= @@ -266,21 +267,19 @@ github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9G github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk= github.com/monochromegane/go-gitignore v0.0.0-20200626010858-205db1a8cc00 h1:n6/2gBQ3RWajuToeY6ZtZTIKv2v7ThUy5KKusIT0yc0= github.com/monochromegane/go-gitignore v0.0.0-20200626010858-205db1a8cc00/go.mod h1:Pm3mSP3c5uWn86xMLZ5Sa7JB9GsEZySvHYXCTK4E9q4= -github.com/morikuni/aec v1.0.0 h1:nP9CBfwrvYnBRgY6qfDQkygYDmYwOilePFkwzv4dU8A= -github.com/morikuni/aec v1.0.0/go.mod h1:BbKIizmSmc5MMPqRYbxO4ZU0S0+P200+tUnFx7PXmsc= github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 h1:C3w9PqII01/Oq1c1nUAm88MOHcQC9l5mIlSMApZMrHA= github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= github.com/mxk/go-flowrate v0.0.0-20140419014527-cca7078d478f h1:y5//uYreIhSUg3J1GEMiLbxo1LJaP8RfCpH6pymGZus= github.com/mxk/go-flowrate v0.0.0-20140419014527-cca7078d478f/go.mod h1:ZdcZmHo+o7JKHSa8/e818NopupXU1YMK5fe1lsApnBw= -github.com/onsi/ginkgo/v2 v2.15.0 h1:79HwNRBAZHOEwrczrgSOPy+eFTTlIGELKy5as+ClttY= -github.com/onsi/ginkgo/v2 v2.15.0/go.mod h1:HlxMHtYF57y6Dpf+mc5529KKmSq9h2FpCF+/ZkwUxKM= -github.com/onsi/gomega v1.31.0 h1:54UJxxj6cPInHS3a35wm6BK/F9nHYueZ1NVujHDrnXE= -github.com/onsi/gomega v1.31.0/go.mod h1:DW9aCi7U6Yi40wNVAvT6kzFnEVEI5n3DloYBiKiT6zk= +github.com/onsi/ginkgo/v2 v2.21.0 h1:7rg/4f3rB88pb5obDgNZrNHrQ4e6WpjonchcpuBRnZM= +github.com/onsi/ginkgo/v2 v2.21.0/go.mod h1:7Du3c42kxCUegi0IImZ1wUQzMBVecgIHjR1C+NkhLQo= +github.com/onsi/gomega v1.35.1 h1:Cwbd75ZBPxFSuZ6T+rN/WCb/gOc6YgFBXLlZLhC7Ds4= +github.com/onsi/gomega v1.35.1/go.mod h1:PvZbdDc8J6XJEpDK4HCuRBm8a6Fzp9/DmhC9C7yFlog= github.com/opencontainers/go-digest v1.0.0 h1:apOUWs51W5PlhuyGyz9FCeeBIOUDA/6nW8Oi/yOhh5U= github.com/opencontainers/go-digest v1.0.0/go.mod h1:0JzlMkj0TRzQZfJkVvzbP0HBR3IKzErnv2BNG4W4MAM= -github.com/opencontainers/image-spec v1.1.0-rc5 h1:Ygwkfw9bpDvs+c9E34SdgGOj41dX/cbdlwvlWt0pnFI= -github.com/opencontainers/image-spec v1.1.0-rc5/go.mod h1:X4pATf0uXsnn3g5aiGIsVnJBR4mxhKzfwmvK/B2NTm8= +github.com/opencontainers/image-spec v1.1.0 h1:8SG7/vwALn54lVB/0yZ/MMwhFrPYtpEHQb2IpWsCzug= +github.com/opencontainers/image-spec v1.1.0/go.mod h1:W4s4sFTMaBeK1BQLXbG4AdM2szdn85PY75RI83NrTrM= github.com/peterbourgon/diskv v2.0.1+incompatible h1:UBdAOUP5p4RWqPBg048CAvpKN+vxiaj6gdUUzhl4XmI= github.com/peterbourgon/diskv v2.0.1+incompatible/go.mod h1:uqqh8zWWbv1HBMNONnaR/tNboyR3/BZd58JJSHlUSCU= github.com/phayes/freeport v0.0.0-20220201140144-74d24b5ae9f5 h1:Ii+DKncOVM8Cu1Hc+ETb5K+23HdAMvESYE3ZJ5b5cMI= @@ -288,65 +287,65 @@ github.com/phayes/freeport v0.0.0-20220201140144-74d24b5ae9f5/go.mod h1:iIss55rK github.com/pkg/errors v0.8.0/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= -github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= +github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 h1:Jamvg5psRIccs7FGNTlIRMkT8wgtp5eCXdBlqhYGL6U= +github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/poy/onpar v1.1.2 h1:QaNrNiZx0+Nar5dLgTVp5mXkyoVFIbepjyEoGSnhbAY= github.com/poy/onpar v1.1.2/go.mod h1:6X8FLNoxyr9kkmnlqpK6LSoiOtrO6MICtWwEuWkLjzg= github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw= github.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo= github.com/prometheus/client_golang v1.1.0/go.mod h1:I1FGZT9+L76gKKOs5djB6ezCbFQP1xR9D75/vuwEF3g= -github.com/prometheus/client_golang v1.18.0 h1:HzFfmkOzH5Q8L8G+kSJKUx5dtG87sewO+FoDDqP5Tbk= -github.com/prometheus/client_golang v1.18.0/go.mod h1:T+GXkCk5wSJyOqMIzVgvvjFDlkOQntgjkJWKrN5txjA= +github.com/prometheus/client_golang v1.19.1 h1:wZWJDwK+NameRJuPGDhlnFgx8e8HN3XHQeLaYJFJBOE= +github.com/prometheus/client_golang v1.19.1/go.mod h1:mP78NwGzrVks5S2H6ab8+ZZGJLZUq1hoULYBAYBw1Ho= github.com/prometheus/client_model v0.0.0-20180712105110-5c3871d89910/go.mod h1:MbSGuTsp3dbXC40dX6PRTWyKYBIrTGTE9sqQNg2J8bo= github.com/prometheus/client_model v0.0.0-20190129233127-fd36f4220a90/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= -github.com/prometheus/client_model v0.5.0 h1:VQw1hfvPvk3Uv6Qf29VrPF32JB6rtbgI6cYPYQjL0Qw= -github.com/prometheus/client_model v0.5.0/go.mod h1:dTiFglRmd66nLR9Pv9f0mZi7B7fk5Pm3gvsjB5tr+kI= +github.com/prometheus/client_model v0.6.1 h1:ZKSh/rekM+n3CeS952MLRAdFwIKqeY8b62p8ais2e9E= +github.com/prometheus/client_model v0.6.1/go.mod h1:OrxVMOVHjw3lKMa8+x6HeMGkHMQyHDk9E3jmP2AmGiY= github.com/prometheus/common v0.4.1/go.mod h1:TNfzLD0ON7rHzMJeJkieUDPYmFC7Snx/y86RQel1bk4= github.com/prometheus/common v0.6.0/go.mod h1:eBmuwkDJBwy6iBfxCBob6t6dR6ENT/y+J+Zk0j9GMYc= -github.com/prometheus/common v0.45.0 h1:2BGz0eBc2hdMDLnO/8n0jeB3oPrt2D08CekT0lneoxM= -github.com/prometheus/common v0.45.0/go.mod h1:YJmSTw9BoKxJplESWWxlbyttQR4uaEcGyv9MZjVOJsY= +github.com/prometheus/common v0.55.0 h1:KEi6DK7lXW/m7Ig5i47x0vRzuBsHuvJdi5ee6Y3G1dc= +github.com/prometheus/common v0.55.0/go.mod h1:2SECS4xJG1kd8XF9IcM1gMX6510RAEL65zxzNImwdc8= github.com/prometheus/procfs v0.0.0-20181005140218-185b4288413d/go.mod h1:c3At6R/oaqEKCNdg8wHV1ftS6bRYblBhIjjI8uT2IGk= github.com/prometheus/procfs v0.0.2/go.mod h1:TjEm7ze935MbeOT/UhFTIMYKhuLP4wbCsTZCD3I8kEA= github.com/prometheus/procfs v0.0.3/go.mod h1:4A/X28fw3Fc593LaREMrKMqOKvUAntwMDaekg4FpcdQ= -github.com/prometheus/procfs v0.12.0 h1:jluTpSng7V9hY0O2R9DzzJHYb2xULk9VTR1V1R/k6Bo= -github.com/prometheus/procfs v0.12.0/go.mod h1:pcuDEFsWDnvcgNzo4EEweacyhjeA9Zk3cnaOZAZEfOo= +github.com/prometheus/procfs v0.15.1 h1:YagwOFzUgYfKKHX6Dr+sHT7km/hxC76UB0learggepc= +github.com/prometheus/procfs v0.15.1/go.mod h1:fB45yRUv8NstnjriLhBQLuOUt+WW4BsoGhij/e3PBqk= github.com/rivo/uniseg v0.2.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc= github.com/rivo/uniseg v0.4.4 h1:8TfxU8dW6PdqD27gjM8MVNuicgxIjxpm4K7x4jp8sis= github.com/rivo/uniseg v0.4.4/go.mod h1:FN3SvrM+Zdj16jyLfmOkMNblXMcoc8DfTHruCPUcx88= -github.com/rogpeppe/go-internal v1.11.0 h1:cWPaGQEPrBb5/AsnsZesgZZ9yb1OQ+GOISoDNXVBh4M= -github.com/rogpeppe/go-internal v1.11.0/go.mod h1:ddIwULY96R17DhadqLgMfk9H9tvdUzkipdSkR5nkCZA= -github.com/rubenv/sql-migrate v1.6.0 h1:IZpcTlAx/VKXphWEpwWJ7BaMq05tYtE80zYz+8a5Il8= -github.com/rubenv/sql-migrate v1.6.0/go.mod h1:m3ilnKP7sNb4eYkLsp6cGdPOl4OBcXM6rcbzU+Oqc5k= +github.com/rogpeppe/go-internal v1.13.1 h1:KvO1DLK/DRN07sQ1LQKScxyZJuNnedQ5/wKSR38lUII= +github.com/rogpeppe/go-internal v1.13.1/go.mod h1:uMEvuHeurkdAXX61udpOXGD/AzZDWNMNyH2VO9fmH0o= +github.com/rubenv/sql-migrate v1.7.1 h1:f/o0WgfO/GqNuVg+6801K/KW3WdDSupzSjDYODmiUq4= +github.com/rubenv/sql-migrate v1.7.1/go.mod h1:Ob2Psprc0/3ggbM6wCzyYVFFuc6FyZrb2AS+ezLDFb4= github.com/russross/blackfriday/v2 v2.1.0 h1:JIOH55/0cWyOuilr9/qlrm0BSXldqnqwMsf35Ld67mk= github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= -github.com/sergi/go-diff v1.1.0 h1:we8PVUC3FE2uYfodKH/nBHMSetSfHDR6scGdBi+erh0= -github.com/sergi/go-diff v1.1.0/go.mod h1:STckp+ISIX8hZLjrqAeVduY0gWCT9IjLuqbuNXdaHfM= -github.com/shopspring/decimal v1.2.0/go.mod h1:DKyhrW/HYNuLGql+MJL6WCR6knT2jwCFRcu2hWCYk4o= -github.com/shopspring/decimal v1.3.1 h1:2Usl1nmF/WZucqkFZhnfFYxxxu8LG21F6nPQBE5gKV8= -github.com/shopspring/decimal v1.3.1/go.mod h1:DKyhrW/HYNuLGql+MJL6WCR6knT2jwCFRcu2hWCYk4o= +github.com/sergi/go-diff v1.2.0 h1:XU+rvMAioB0UC3q1MFrIQy4Vo5/4VsRDQQXHsEya6xQ= +github.com/sergi/go-diff v1.2.0/go.mod h1:STckp+ISIX8hZLjrqAeVduY0gWCT9IjLuqbuNXdaHfM= +github.com/shopspring/decimal v1.4.0 h1:bxl37RwXBklmTi0C79JfXCEBD1cqqHt0bbgBAGFp81k= +github.com/shopspring/decimal v1.4.0/go.mod h1:gawqmDU56v4yIKSwfBSFip1HdCCXN8/+DMd9qYNcwME= github.com/sirupsen/logrus v1.2.0/go.mod h1:LxeOpSwHxABJmUn/MG1IvRgCAasNZTLOkJPxbbu5VWo= github.com/sirupsen/logrus v1.9.3 h1:dueUQJ1C2q9oE3F7wvmSGAaVtTmUizReu6fjN8uqzbQ= github.com/sirupsen/logrus v1.9.3/go.mod h1:naHLuLoDiP4jHNo9R0sCBMtWGeIprob74mVsIT4qYEQ= github.com/sosedoff/ansible-vault-go v0.2.0 h1:XqkBdqbXgTuFQ++NdrZvSdUTNozeb6S3V5x7FVs17vg= github.com/sosedoff/ansible-vault-go v0.2.0/go.mod h1:wMU54HNJfY0n0KIgbpA9m15NBfaUDlJrAsaZp0FwzkI= -github.com/spf13/cast v1.3.1/go.mod h1:Qx5cxh0v+4UWYiBimWS+eyWzqEqokIECu5etghLkUJE= -github.com/spf13/cast v1.6.0 h1:GEiTHELF+vaR5dhz3VqZfFSzZjYbgeKDpBxQVS4GYJ0= -github.com/spf13/cast v1.6.0/go.mod h1:ancEpBxwJDODSW/UG4rDrAqiKolqNNh2DX3mk86cAdo= -github.com/spf13/cobra v1.8.0 h1:7aJaZx1B85qltLMc546zn58BxxfZdR/W22ej9CFoEf0= -github.com/spf13/cobra v1.8.0/go.mod h1:WXLWApfZ71AjXPya3WOlMsY9yMs7YeiHhFVlvLyhcho= -github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA= -github.com/spf13/pflag v1.0.5/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg= +github.com/spf13/cast v1.7.0 h1:ntdiHjuueXFgm5nzDRdOS4yfT43P5Fnud6DH50rz/7w= +github.com/spf13/cast v1.7.0/go.mod h1:ancEpBxwJDODSW/UG4rDrAqiKolqNNh2DX3mk86cAdo= +github.com/spf13/cobra v1.9.1 h1:CXSaggrXdbHK9CF+8ywj8Amf7PBRmPCOJugH954Nnlo= +github.com/spf13/cobra v1.9.1/go.mod h1:nDyEzZ8ogv936Cinf6g1RU9MRY64Ir93oCnqb9wxYW0= +github.com/spf13/pflag v1.0.6 h1:jFzHGLGAlb3ruxLB8MhbI6A8+AQX/2eW4qeyNZXNp2o= +github.com/spf13/pflag v1.0.6/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/objx v0.5.2 h1:xuMeJ0Sdp5ZMRXx/aWO6RZxdr3beISkG5/G/aIRr3pY= github.com/stretchr/objx v0.5.2/go.mod h1:FRsXN1f5AsAjCGJKqEizvkpNtU+EGNCLh3NxZ/8L+MA= github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= -github.com/stretchr/testify v1.5.1/go.mod h1:5W2xD1RspED5o8YsWQXVCued0rvSQ+mT+I5cxcmMvtA= github.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= -github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg= -github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= +github.com/stretchr/testify v1.10.0 h1:Xv5erBjTwe/5IxqUQTdXv5kgmIvbHo3QQyRwhJsOfJA= +github.com/stretchr/testify v1.10.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= +github.com/x448/float16 v0.8.4 h1:qLwI1I70+NjRFUR3zs1JPUCgaCXSh3SW62uAKT1mSBM= +github.com/x448/float16 v0.8.4/go.mod h1:14CWIYCyZA/cWjXOioeEpHeN/83MdbZDRQHoFcYsOfg= github.com/xeipuuv/gojsonpointer v0.0.0-20180127040702-4e3ac2762d5f/go.mod h1:N2zxlSyiKSe5eX1tZViRH5QA0qijqEDrYZiPEAiq3wU= github.com/xeipuuv/gojsonpointer v0.0.0-20190905194746-02993c407bfb h1:zGWFAtiMcyryUHoUjUJX0/lt1H2+i2Ka2n+D3DImSNo= github.com/xeipuuv/gojsonpointer v0.0.0-20190905194746-02993c407bfb/go.mod h1:N2zxlSyiKSe5eX1tZViRH5QA0qijqEDrYZiPEAiq3wU= @@ -358,7 +357,6 @@ github.com/xlab/treeprint v1.2.0 h1:HzHnuAF1plUN2zGlAFHbSQP2qJ0ZAD3XF5XD7OesXRQ= github.com/xlab/treeprint v1.2.0/go.mod h1:gj5Gd3gPdKtR1ikdDK6fnFLdmIS0X30kTTuNd/WEJu0= github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= -github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY= github.com/yvasiyarov/go-metrics v0.0.0-20140926110328-57bccd1ccd43 h1:+lm10QQTNSBd8DVTNGHx7o/IKu9HYDvLMffDhbyLccI= github.com/yvasiyarov/go-metrics v0.0.0-20140926110328-57bccd1ccd43/go.mod h1:aX5oPXxHm3bOH+xeAttToC8pqch2ScQN/JoXYupl6xs= github.com/yvasiyarov/gorelic v0.0.0-20141212073537-a9bba5b9ab50 h1:hlE8//ciYMztlGpl/VA+Zm1AcTPHYkHJPbHqE6WJUXE= @@ -367,118 +365,88 @@ github.com/yvasiyarov/newrelic_platform_go v0.0.0-20140908184405-b21fdbd4370f h1 github.com/yvasiyarov/newrelic_platform_go v0.0.0-20140908184405-b21fdbd4370f/go.mod h1:GlGEuHIJweS1mbCqG+7vt2nvWLzLLnRHbXz5JKd/Qbg= go.opencensus.io v0.24.0 h1:y73uSU6J157QMP2kn2r30vwW1A2W2WFwSCGnAVxeaD0= go.opencensus.io v0.24.0/go.mod h1:vNK8G9p7aAivkbmorf4v+7Hgx+Zs0yY+0fOtgBfjQKo= -go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.46.1 h1:aFJWCqJMNjENlcleuuOkGAPH82y0yULBScfXcIEdS24= -go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.46.1/go.mod h1:sEGXWArGqc3tVa+ekntsN65DmVbVeW+7lTKTjZF3/Fo= -go.opentelemetry.io/otel v1.21.0 h1:hzLeKBZEL7Okw2mGzZ0cc4k/A7Fta0uoPgaJCr8fsFc= -go.opentelemetry.io/otel v1.21.0/go.mod h1:QZzNPQPm1zLX4gZK4cMi+71eaorMSGT3A4znnUvNNEo= -go.opentelemetry.io/otel/metric v1.21.0 h1:tlYWfeo+Bocx5kLEloTjbcDwBuELRrIFxwdQ36PlJu4= -go.opentelemetry.io/otel/metric v1.21.0/go.mod h1:o1p3CA8nNHW8j5yuQLdc1eeqEaPfzug24uvsyIEJRWM= -go.opentelemetry.io/otel/trace v1.21.0 h1:WD9i5gzvoUPuXIXH24ZNBudiarZDKuekPqi/E8fpfLc= -go.opentelemetry.io/otel/trace v1.21.0/go.mod h1:LGbsEB0f9LGjN+OZaQQ26sohbOmiMR+BaslueVtS/qQ= -go.starlark.net v0.0.0-20231121155337-90ade8b19d09 h1:hzy3LFnSN8kuQK8h9tHl4ndF6UruMj47OqwqsS+/Ai4= -go.starlark.net v0.0.0-20231121155337-90ade8b19d09/go.mod h1:LcLNIzVOMp4oV+uusnpk+VU+SzXaJakUuBjoCSWH5dM= +go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.53.0 h1:4K4tsIXefpVJtvA/8srF4V4y0akAoPHkIslgAkjixJA= +go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.53.0/go.mod h1:jjdQuTGVsXV4vSs+CJ2qYDeDPf9yIJV23qlIzBm73Vg= +go.opentelemetry.io/otel v1.28.0 h1:/SqNcYk+idO0CxKEUOtKQClMK/MimZihKYMruSMViUo= +go.opentelemetry.io/otel v1.28.0/go.mod h1:q68ijF8Fc8CnMHKyzqL6akLO46ePnjkgfIMIjUIX9z4= +go.opentelemetry.io/otel/metric v1.28.0 h1:f0HGvSl1KRAU1DLgLGFjrwVyismPlnuU6JD6bOeuA5Q= +go.opentelemetry.io/otel/metric v1.28.0/go.mod h1:Fb1eVBFZmLVTMb6PPohq3TO9IIhUisDsbJoL/+uQW4s= +go.opentelemetry.io/otel/trace v1.28.0 h1:GhQ9cUuQGmNDd5BTCP2dAvv75RdMxEfTmYejp+lkx9g= +go.opentelemetry.io/otel/trace v1.28.0/go.mod h1:jPyXzNPg6da9+38HEwElrQiHlVMTnVfM3/yv2OlIHaI= go.uber.org/goleak v1.3.0 h1:2K3zAYmnTNqV73imy9J1T3WC+gmCePx2hEGkimedGto= go.uber.org/goleak v1.3.0/go.mod h1:CoHD4mav9JJNrW/WLlf7HGZPjdw8EucARQHekz1X6bE= golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= -golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= -golang.org/x/crypto v0.3.0/go.mod h1:hebNnKkNXi2UzZN1eVRvBB7co0a+JxK6XbPiWVs/3J4= -golang.org/x/crypto v0.22.0 h1:g1v0xeRhjcugydODzvb3mEM9SQ0HGp9s/nh3COQ/C30= -golang.org/x/crypto v0.22.0/go.mod h1:vr6Su+7cTlO45qkww3VDJlzDn0ctJvRgYbC2NvXHt+M= -golang.org/x/exp v0.0.0-20240103183307-be819d1f06fc h1:ao2WRsKSzW6KuUY9IWPwWahcHCgR0s52IfwutMfEbdM= -golang.org/x/exp v0.0.0-20240103183307-be819d1f06fc/go.mod h1:iRJReGqOEeBhDZGkGbynYwcHlctCvnjTYIamk7uXpHI= +golang.org/x/crypto v0.35.0 h1:b15kiHdrGCHrP6LvwaQ3c03kgNhhiMgvlhxHQhmg2Xs= +golang.org/x/crypto v0.35.0/go.mod h1:dy7dXNW32cAb/6/PRuTNsix8T+vJAqvuIy5Bli/x0YQ= golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= -golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4= -golang.org/x/mod v0.15.0 h1:SernR4v+D55NyBH2QiEQrlBAnj1ECL6AGrA5+dPaMY8= -golang.org/x/mod v0.15.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= +golang.org/x/mod v0.21.0 h1:vvrHzRwRfVKSiLrG+d4FMl/Qi4ukBCE6kZlTUkDYRT0= +golang.org/x/mod v0.21.0/go.mod h1:6SkKJ3Xj0I0BrPOZoBy3bdMptDDU9oJrpohJ3eWZ1fY= golang.org/x/net v0.0.0-20181114220301-adae6a3d119a/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= golang.org/x/net v0.0.0-20190613194153-d28f0bde5980/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= -golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= -golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= -golang.org/x/net v0.2.0/go.mod h1:KqCZLdyyvdV855qA2rE3GC2aiw5xGR5TEjj8smXukLY= -golang.org/x/net v0.24.0 h1:1PcaxkF854Fu3+lvBIx5SYn9wRlBzzcnHZSiaFFAb0w= -golang.org/x/net v0.24.0/go.mod h1:2Q7sJY5mzlzWjKtYUEXSlBWCdyaioyXzRB2RtU8KVE8= -golang.org/x/oauth2 v0.15.0 h1:s8pnnxNVzjWyrvYdFUQq5llS1PX2zhPXmccZv99h7uQ= -golang.org/x/oauth2 v0.15.0/go.mod h1:q48ptWNTY5XWf+JNten23lcvHpLJ0ZSxF5ttTHKVCAM= +golang.org/x/net v0.36.0 h1:vWF2fRbw4qslQsQzgFqZff+BItCvGFQqKzKIzx1rmoA= +golang.org/x/net v0.36.0/go.mod h1:bFmbeoIPfrw4sMHNhb4J9f6+tPziuGjq7Jk/38fxi1I= +golang.org/x/oauth2 v0.23.0 h1:PbgcYx2W7i4LvjJWEbf0ngHV6qJYr86PkAV3bXdLEbs= +golang.org/x/oauth2 v0.23.0/go.mod h1:XYTD2NtWslqkgxebSiOHnXEap4TF09sJSc7H1sXbhtI= golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.5.0 h1:60k92dhOjHxJkrqnwsfl8KuaHbn/5dl0lUPUklKo3qE= -golang.org/x/sync v0.5.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= +golang.org/x/sync v0.11.0 h1:GGz8+XQP4FvTTrjZPzNKTMFtSXH80RAzG+5ghFPgK9w= +golang.org/x/sync v0.11.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20181116152217-5ac8a444bdc5/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190801041406-cbf593c0f2f3/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210616094352-59db8d763f22/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220715151400-c0bba94af5f8/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.2.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.19.0 h1:q5f1RH2jigJ1MoAWp2KTp3gm5zAGFUTarQZ5U386+4o= -golang.org/x/sys v0.19.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= -golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= -golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= -golang.org/x/term v0.2.0/go.mod h1:TVmDHMZPmdnySmBfhjOoOdhjzdE1h4u1VwSiw2l1Nuc= -golang.org/x/term v0.19.0 h1:+ThwsDv+tYfnJFhF4L8jITxu1tdTWRTZpdsWgEgjL6Q= -golang.org/x/term v0.19.0/go.mod h1:2CuTdWZ7KHSQwUzKva0cbMg6q2DMI3Mmxp+gKJbskEk= +golang.org/x/sys v0.30.0 h1:QjkSwP/36a20jFYWkSue1YwXzLmsV5Gfq7Eiy72C1uc= +golang.org/x/sys v0.30.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= +golang.org/x/term v0.29.0 h1:L6pJp37ocefwRRtYPKSWOWzOtWSxVajvz2ldH/xi3iU= +golang.org/x/term v0.29.0/go.mod h1:6bl4lRlvVuDgSf3179VpIxBF0o10JUpXWOnI7nErv7s= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= -golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= -golang.org/x/text v0.3.8/go.mod h1:E6s5w1FMmriuDzIBO73fBruAKo1PCIq6d2Q6DHfQ8WQ= -golang.org/x/text v0.4.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= -golang.org/x/text v0.14.0 h1:ScX5w1eTa3QqT8oi6+ziP7dTV1S2+ALU0bI+0zXKWiQ= -golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU= -golang.org/x/time v0.5.0 h1:o7cqy6amK/52YcAKIPlM3a+Fpj35zvRj2TP+e1xFSfk= -golang.org/x/time v0.5.0/go.mod h1:3BpzKBy/shNhVucY/MWOyx10tF3SFh9QdLuxbVysPQM= +golang.org/x/text v0.22.0 h1:bofq7m3/HAFvbF51jz3Q9wLg3jkvSPuiZu/pD1XwgtM= +golang.org/x/text v0.22.0/go.mod h1:YRoo4H8PVmsu+E3Ou7cqLVH8oXWIHVoX0jqUWALQhfY= +golang.org/x/time v0.7.0 h1:ntUhktv3OPE6TgYxXWv9vKvUSJyIFJlyohwbkEwPrKQ= +golang.org/x/time v0.7.0/go.mod h1:3BpzKBy/shNhVucY/MWOyx10tF3SFh9QdLuxbVysPQM= golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= golang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= -golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc= -golang.org/x/tools v0.18.0 h1:k8NLag8AGHnn+PHbl7g43CtqZAwG60vZkLqgyZgIHgQ= -golang.org/x/tools v0.18.0/go.mod h1:GL7B4CwcLLeo59yx/9UWWuNOW1n3VZ4f5axWfML7Lcg= +golang.org/x/tools v0.26.0 h1:v/60pFQmzmT9ExmjDv2gGIfi3OqfKoEP6I5+umXlbnQ= +golang.org/x/tools v0.26.0/go.mod h1:TPVVj70c7JJ3WCazhD8OdXcZg/og+b9+tH/KxylGwH0= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= -google.golang.org/appengine v1.6.8 h1:IhEN5q69dyKagZPYMSdIjS2HqprW324FRQZJcGqPAsM= -google.golang.org/appengine v1.6.8/go.mod h1:1jJ3jBArFh5pcgW8gCtRJnepW8FzD1V44FJffLiz/Ds= -google.golang.org/genproto/googleapis/rpc v0.0.0-20240102182953-50ed04b92917 h1:6G8oQ016D88m1xAKljMlBOOGWDZkes4kMhgGFlf8WcQ= -google.golang.org/genproto/googleapis/rpc v0.0.0-20240102182953-50ed04b92917/go.mod h1:xtjpI3tXFPP051KaWnhvxkiubL/6dJ18vLVf7q2pTOU= -google.golang.org/grpc v1.60.1 h1:26+wFr+cNqSGFcOXcabYC0lUVJVRa2Sb2ortSK7VrEU= -google.golang.org/grpc v1.60.1/go.mod h1:OlCHIeLYqSSsLi6i49B5QGdzaMZK9+M7LXN2FKz4eGM= -google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw= -google.golang.org/protobuf v1.26.0/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= -google.golang.org/protobuf v1.33.0 h1:uNO2rsAINq/JlFpSdYEKIZ0uKD/R9cpdv0T+yoGwGmI= -google.golang.org/protobuf v1.33.0/go.mod h1:c6P6GXX6sHbq/GpV6MGZEdwhWPcYBgnhAHhKbcUYpos= +google.golang.org/genproto/googleapis/rpc v0.0.0-20240826202546-f6391c0de4c7 h1:2035KHhUv+EpyB+hWgJnaWKJOdX1E95w2S8Rr4uWKTs= +google.golang.org/genproto/googleapis/rpc v0.0.0-20240826202546-f6391c0de4c7/go.mod h1:UqMtugtsSgubUsoxbuAoiCXvqvErP7Gf0so0mK9tHxU= +google.golang.org/grpc v1.65.0 h1:bs/cUb4lp1G5iImFFd3u5ixQzweKizoZJAwBNLR42lc= +google.golang.org/grpc v1.65.0/go.mod h1:WgYC2ypjlB0EiQi6wdKixMqukr6lBc0Vo+oOgjrM5ZQ= +google.golang.org/protobuf v1.35.1 h1:m3LfL6/Ca+fqnjnlqQXNpFPABW1UD7mjh8KO2mKFytA= +google.golang.org/protobuf v1.35.1/go.mod h1:9fA7Ob0pmnwhb644+1+CVWFRbNajQ6iRojtC/QF5bRE= gopkg.in/alecthomas/kingpin.v2 v2.2.6/go.mod h1:FMv+mEhP44yOT+4EoQTLFTRgOQ1FBLkstjWtayDeSgw= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk= gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q= -gopkg.in/evanphx/json-patch.v5 v5.7.0 h1:dGKGylPlZ/jus2g1YqhhyzfH0gPy2R8/MYUpW/OslTY= -gopkg.in/evanphx/json-patch.v5 v5.7.0/go.mod h1:/kvTRh1TVm5wuM6OkHxqXtE/1nUZZpihg29RtuIyfvk= +gopkg.in/evanphx/json-patch.v4 v4.12.0 h1:n6jtcsulIzXPJaxegRbvFNNrZDjbij7ny3gmSPG+6V4= +gopkg.in/evanphx/json-patch.v4 v4.12.0/go.mod h1:p8EYWUEYMpynmqDbY58zCKCFZw8pRWMG4EsWvDvM72M= gopkg.in/inf.v0 v0.9.1 h1:73M5CoZyi3ZLMOyDlQh031Cx6N9NDJ2Vvfl76EDAgDc= gopkg.in/inf.v0 v0.9.1/go.mod h1:cWUDdTG/fYaXco+Dcufb5Vnc6Gp2YChqWtbxRZE0mXw= gopkg.in/yaml.v2 v2.2.1/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= -gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= -gopkg.in/yaml.v2 v2.2.8/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= -gopkg.in/yaml.v2 v2.3.0/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY= gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ= gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= @@ -486,41 +454,41 @@ gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gotest.tools/v3 v3.4.0 h1:ZazjZUfuVeZGLAmlKKuyv3IKP5orXcwtOwDQH6YVr6o= gotest.tools/v3 v3.4.0/go.mod h1:CtbdzLSsqVhDgMtKsx03ird5YTGB3ar27v0u/yKBW5g= -helm.sh/helm/v3 v3.14.2 h1:V71fv+NGZv0icBlr+in1MJXuUIHCiPG1hW9gEBISTIA= -helm.sh/helm/v3 v3.14.2/go.mod h1:2itvvDv2WSZXTllknfQo6j7u3VVgMAvm8POCDgYH424= -k8s.io/api v0.30.0 h1:siWhRq7cNjy2iHssOB9SCGNCl2spiF1dO3dABqZ8niA= -k8s.io/api v0.30.0/go.mod h1:OPlaYhoHs8EQ1ql0R/TsUgaRPhpKNxIMrKQfWUp8QSE= -k8s.io/apiextensions-apiserver v0.29.0 h1:0VuspFG7Hj+SxyF/Z/2T0uFbI5gb5LRgEyUVE3Q4lV0= -k8s.io/apiextensions-apiserver v0.29.0/go.mod h1:TKmpy3bTS0mr9pylH0nOt/QzQRrW7/h7yLdRForMZwc= -k8s.io/apimachinery v0.30.0 h1:qxVPsyDM5XS96NIh9Oj6LavoVFYff/Pon9cZeDIkHHA= -k8s.io/apimachinery v0.30.0/go.mod h1:iexa2somDaxdnj7bha06bhb43Zpa6eWH8N8dbqVjTUc= -k8s.io/apiserver v0.29.0 h1:Y1xEMjJkP+BIi0GSEv1BBrf1jLU9UPfAnnGGbbDdp7o= -k8s.io/apiserver v0.29.0/go.mod h1:31n78PsRKPmfpee7/l9NYEv67u6hOL6AfcE761HapDM= -k8s.io/cli-runtime v0.29.0 h1:q2kC3cex4rOBLfPOnMSzV2BIrrQlx97gxHJs21KxKS4= -k8s.io/cli-runtime v0.29.0/go.mod h1:VKudXp3X7wR45L+nER85YUzOQIru28HQpXr0mTdeCrk= -k8s.io/client-go v0.30.0 h1:sB1AGGlhY/o7KCyCEQ0bPWzYDL0pwOZO4vAtTSh/gJQ= -k8s.io/client-go v0.30.0/go.mod h1:g7li5O5256qe6TYdAMyX/otJqMhIiGgTapdLchhmOaY= -k8s.io/component-base v0.29.0 h1:T7rjd5wvLnPBV1vC4zWd/iWRbV8Mdxs+nGaoaFzGw3s= -k8s.io/component-base v0.29.0/go.mod h1:sADonFTQ9Zc9yFLghpDpmNXEdHyQmFIGbiuZbqAXQ1M= -k8s.io/klog/v2 v2.120.1 h1:QXU6cPEOIslTGvZaXvFWiP9VKyeet3sawzTOvdXb4Vw= -k8s.io/klog/v2 v2.120.1/go.mod h1:3Jpz1GvMt720eyJH1ckRHK1EDfpxISzJ7I9OYgaDtPE= -k8s.io/kube-openapi v0.0.0-20240228011516-70dd3763d340 h1:BZqlfIlq5YbRMFko6/PM7FjZpUb45WallggurYhKGag= -k8s.io/kube-openapi v0.0.0-20240228011516-70dd3763d340/go.mod h1:yD4MZYeKMBwQKVht279WycxKyM84kkAx2DPrTXaeb98= -k8s.io/kubectl v0.29.0 h1:Oqi48gXjikDhrBF67AYuZRTcJV4lg2l42GmvsP7FmYI= -k8s.io/kubectl v0.29.0/go.mod h1:0jMjGWIcMIQzmUaMgAzhSELv5WtHo2a8pq67DtviAJs= -k8s.io/utils v0.0.0-20240102154912-e7106e64919e h1:eQ/4ljkx21sObifjzXwlPKpdGLrCfRziVtos3ofG/sQ= -k8s.io/utils v0.0.0-20240102154912-e7106e64919e/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0= +helm.sh/helm/v3 v3.17.1 h1:gzVoAD+qVuoJU6KDMSAeo0xRJ6N1znRxz3wyuXRmJDk= +helm.sh/helm/v3 v3.17.1/go.mod h1:nvreuhuR+j78NkQcLC3TYoprCKStLyw5P4T7E5itv2w= +k8s.io/api v0.32.2 h1:bZrMLEkgizC24G9eViHGOPbW+aRo9duEISRIJKfdJuw= +k8s.io/api v0.32.2/go.mod h1:hKlhk4x1sJyYnHENsrdCWw31FEmCijNGPJO5WzHiJ6Y= +k8s.io/apiextensions-apiserver v0.32.2 h1:2YMk285jWMk2188V2AERy5yDwBYrjgWYggscghPCvV4= +k8s.io/apiextensions-apiserver v0.32.2/go.mod h1:GPwf8sph7YlJT3H6aKUWtd0E+oyShk/YHWQHf/OOgCA= +k8s.io/apimachinery v0.32.2 h1:yoQBR9ZGkA6Rgmhbp/yuT9/g+4lxtsGYwW6dR6BDPLQ= +k8s.io/apimachinery v0.32.2/go.mod h1:GpHVgxoKlTxClKcteaeuF1Ul/lDVb74KpZcxcmLDElE= +k8s.io/apiserver v0.32.2 h1:WzyxAu4mvLkQxwD9hGa4ZfExo3yZZaYzoYvvVDlM6vw= +k8s.io/apiserver v0.32.2/go.mod h1:PEwREHiHNU2oFdte7BjzA1ZyjWjuckORLIK/wLV5goM= +k8s.io/cli-runtime v0.32.2 h1:aKQR4foh9qeyckKRkNXUccP9moxzffyndZAvr+IXMks= +k8s.io/cli-runtime v0.32.2/go.mod h1:a/JpeMztz3xDa7GCyyShcwe55p8pbcCVQxvqZnIwXN8= +k8s.io/client-go v0.32.2 h1:4dYCD4Nz+9RApM2b/3BtVvBHw54QjMFUl1OLcJG5yOA= +k8s.io/client-go v0.32.2/go.mod h1:fpZ4oJXclZ3r2nDOv+Ux3XcJutfrwjKTCHz2H3sww94= +k8s.io/component-base v0.32.2 h1:1aUL5Vdmu7qNo4ZsE+569PV5zFatM9hl+lb3dEea2zU= +k8s.io/component-base v0.32.2/go.mod h1:PXJ61Vx9Lg+P5mS8TLd7bCIr+eMJRQTyXe8KvkrvJq0= +k8s.io/klog/v2 v2.130.1 h1:n9Xl7H1Xvksem4KFG4PYbdQCQxqc/tTUyrgXaOhHSzk= +k8s.io/klog/v2 v2.130.1/go.mod h1:3Jpz1GvMt720eyJH1ckRHK1EDfpxISzJ7I9OYgaDtPE= +k8s.io/kube-openapi v0.0.0-20241105132330-32ad38e42d3f h1:GA7//TjRY9yWGy1poLzYYJJ4JRdzg3+O6e8I+e+8T5Y= +k8s.io/kube-openapi v0.0.0-20241105132330-32ad38e42d3f/go.mod h1:R/HEjbvWI0qdfb8viZUeVZm0X6IZnxAydC7YU42CMw4= +k8s.io/kubectl v0.32.1 h1:/btLtXLQUU1rWx8AEvX9jrb9LaI6yeezt3sFALhB8M8= +k8s.io/kubectl v0.32.1/go.mod h1:sezNuyWi1STk4ZNPVRIFfgjqMI6XMf+oCVLjZen/pFQ= +k8s.io/utils v0.0.0-20241104100929-3ea5e8cea738 h1:M3sRQVHv7vB20Xc2ybTt7ODCeFj6JSWYFzOFnYeS6Ro= +k8s.io/utils v0.0.0-20241104100929-3ea5e8cea738/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0= olympos.io/encoding/edn v0.0.0-20201019073823-d3554ca0b0a3 h1:slmdOY3vp8a7KQbHkL+FLbvbkgMqmXojpFUO/jENuqQ= olympos.io/encoding/edn v0.0.0-20201019073823-d3554ca0b0a3/go.mod h1:oVgVk4OWVDi43qWBEyGhXgYxt7+ED4iYNpTngSLX2Iw= -oras.land/oras-go v1.2.4 h1:djpBY2/2Cs1PV87GSJlxv4voajVOMZxqqtq9AB8YNvY= -oras.land/oras-go v1.2.4/go.mod h1:DYcGfb3YF1nKjcezfX2SNlDAeQFKSXmf+qrFmrh4324= -sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd h1:EDPBXCAspyGV4jQlpZSudPeMmr1bNJefnuqLsRAsHZo= -sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd/go.mod h1:B8JuhiUyNFVKdsE8h686QcCxMaH6HrOAZj4vswFpcB0= -sigs.k8s.io/kustomize/api v0.16.0 h1:/zAR4FOQDCkgSDmVzV2uiFbuy9bhu3jEzthrHCuvm1g= -sigs.k8s.io/kustomize/api v0.16.0/go.mod h1:MnFZ7IP2YqVyVwMWoRxPtgl/5hpA+eCCrQR/866cm5c= -sigs.k8s.io/kustomize/kyaml v0.16.0 h1:6J33uKSoATlKZH16unr2XOhDI+otoe2sR3M8PDzW3K0= -sigs.k8s.io/kustomize/kyaml v0.16.0/go.mod h1:xOK/7i+vmE14N2FdFyugIshB8eF6ALpy7jI87Q2nRh4= -sigs.k8s.io/structured-merge-diff/v4 v4.4.1 h1:150L+0vs/8DA78h1u02ooW1/fFq/Lwr+sGiqlzvrtq4= -sigs.k8s.io/structured-merge-diff/v4 v4.4.1/go.mod h1:N8hJocpFajUSSeSJ9bOZ77VzejKZaXsTtZo4/u7Io08= +oras.land/oras-go v1.2.5 h1:XpYuAwAb0DfQsunIyMfeET92emK8km3W4yEzZvUbsTo= +oras.land/oras-go v1.2.5/go.mod h1:PuAwRShRZCsZb7g8Ar3jKKQR/2A/qN+pkYxIOd/FAoo= +sigs.k8s.io/json v0.0.0-20241010143419-9aa6b5e7a4b3 h1:/Rv+M11QRah1itp8VhT6HoVx1Ray9eB4DBr+K+/sCJ8= +sigs.k8s.io/json v0.0.0-20241010143419-9aa6b5e7a4b3/go.mod h1:18nIHnGi6636UCz6m8i4DhaJ65T6EruyzmoQqI2BVDo= +sigs.k8s.io/kustomize/api v0.18.0 h1:hTzp67k+3NEVInwz5BHyzc9rGxIauoXferXyjv5lWPo= +sigs.k8s.io/kustomize/api v0.18.0/go.mod h1:f8isXnX+8b+SGLHQ6yO4JG1rdkZlvhaCf/uZbLVMb0U= +sigs.k8s.io/kustomize/kyaml v0.18.1 h1:WvBo56Wzw3fjS+7vBjN6TeivvpbW9GmRaWZ9CIVmt4E= +sigs.k8s.io/kustomize/kyaml v0.18.1/go.mod h1:C3L2BFVU1jgcddNBE1TxuVLgS46TjObMwW5FT9FcjYo= +sigs.k8s.io/structured-merge-diff/v4 v4.4.2 h1:MdmvkGuXi/8io6ixD5wud3vOLwc1rj0aNqRlpuvjmwA= +sigs.k8s.io/structured-merge-diff/v4 v4.4.2/go.mod h1:N8f93tFZh9U6vpxwRArLiikrE5/2tiu1w1AGfACIGE4= sigs.k8s.io/yaml v1.4.0 h1:Mk1wCc2gy/F0THH0TAp1QYyJNzRm2KCLy3o5ASXVI5E= sigs.k8s.io/yaml v1.4.0/go.mod h1:Ejl7/uTz7PSA4eKMyQCUTnhZYNmLIl+5c2lQPGR2BPY= diff --git a/internal/config/ansible_playbook_config.go b/internal/config/ansible_playbook_config.go index 047cc8b..7af9c85 100644 --- a/internal/config/ansible_playbook_config.go +++ b/internal/config/ansible_playbook_config.go @@ -2,7 +2,7 @@ package config import ( "github.com/apenella/go-ansible/pkg/options" - "github.com/apenella/go-ansible/pkg/playbook" + "github.com/apenella/go-ansible/v2/pkg/playbook" ) type AnsiblePlaybookConfig struct { diff --git a/internal/config/config.go b/internal/config/config.go index d7bc9c2..97856b4 100644 --- a/internal/config/config.go +++ b/internal/config/config.go @@ -2,10 +2,19 @@ package config import ( "fmt" + "kube-forge/internal/files" + "path/filepath" "github.com/ilyakaznacheev/cleanenv" ) +var ( + ConfigFile string + Output string + Password string + Verbose bool +) + type Host struct { Hostname string `yaml:"hostname"` Ip string `yaml:"ip"` @@ -15,10 +24,12 @@ type Host struct { } type Config struct { - WorkDir string - KubeconfigFile string `yaml:"kubeconfig_file" env-default:"k8s-admin.conf"` - Verbose bool - Credentials struct { + BaseDir string + InventoryDir string + Verbose bool + KubeconfigFile string + InstallationName string `yaml:"installation_name" env-default:"cluster.local"` + Credentials struct { User string `yaml:"user"` Password string `yaml:"password"` AskSudoPassword bool `yaml:"ask_sudo_password"` @@ -36,21 +47,37 @@ type Config struct { var instance *Config -func CreateConfig(configPath string, workDir string, password string) *Config { +func createConfig(configFile string, out string, password string, verbose bool) *Config { instance = &Config{} - instance.WorkDir = workDir - if err := cleanenv.ReadConfig(configPath, instance); err != nil { + if err := cleanenv.ReadConfig(configFile, instance); err != nil { helper, _ := cleanenv.GetDescription(instance, nil) panic(fmt.Sprintf("%s\n%s", helper, err)) } + instance.BaseDir = files.CreateTempDir() + instance.InventoryDir = filepath.Join(instance.BaseDir, "inventory") + + files.CreateDirWithAllParents(instance.InventoryDir) + + if out != "" { + files.CreateDirWithAllParents(out) + instance.KubeconfigFile = filepath.Join(out, "k8s-admin.conf") + } else { + instance.KubeconfigFile = filepath.Join(files.GetWorkingDir(), "k8s-admin.conf") + } + if password != "" { instance.Credentials.Password = password } + + instance.Verbose = verbose return instance } func GetConfig() *Config { + if instance == nil { + createConfig(ConfigFile, Output, Password, Verbose) + } return instance } diff --git a/internal/config/helm.go b/internal/config/helm.go index ec65cf8..e5b08aa 100644 --- a/internal/config/helm.go +++ b/internal/config/helm.go @@ -4,7 +4,6 @@ import ( "io" "log" "os" - "path/filepath" "time" helm_client "github.com/mittwald/go-helm-client" @@ -30,7 +29,7 @@ type ChartSettings struct { func GetHelmClient(namespace string) helm_client.Client { config := GetConfig() - file, err := os.Open(filepath.Join(config.WorkDir, config.KubeconfigFile)) + file, err := os.Open(config.KubeconfigFile) if err != nil { log.Fatalf("failed to open file: %s", err) } @@ -46,7 +45,7 @@ func GetHelmClient(namespace string) helm_client.Client { RepositoryConfig: "/tmp/.helmrepo", Debug: true, Linting: true, // Change this to false if you don't want linting. - DebugLog: func(format string, v ...interface{}) { + DebugLog: func(format string, v ...any) { // Change this to your own logger. Default is 'log.Printf(format, v...)'. }, }, diff --git a/internal/config/kubernetes.go b/internal/config/kubernetes.go deleted file mode 100644 index e40298e..0000000 --- a/internal/config/kubernetes.go +++ /dev/null @@ -1,21 +0,0 @@ -package config - -import ( - "path/filepath" - - "k8s.io/client-go/rest" - "k8s.io/client-go/tools/clientcmd" -) - -var kubernetesConfig *rest.Config - -func GetKubernetesConfig() *rest.Config { - appConfig := GetConfig() - kubeconfigPath := filepath.Join(appConfig.WorkDir, appConfig.KubeconfigFile) - - kubernetesConfig, err := clientcmd.BuildConfigFromFlags("", kubeconfigPath) - if err != nil { - panic(err.Error()) - } - return kubernetesConfig -} diff --git a/internal/config/orchestrator.go b/internal/config/orchestrator.go index e829462..e74559c 100644 --- a/internal/config/orchestrator.go +++ b/internal/config/orchestrator.go @@ -1,9 +1,9 @@ package config type Dns struct { - Servers []string `yaml:"servers" env-default:"8.8.8.8,8.8.4.4"` - DisableHostNameservers bool `yaml:"disable_host_nameservers"` - CoreDNSExternalZones []interface{} `yaml:"coredns_external_zones"` + Servers []string `yaml:"servers" env-default:"8.8.8.8,8.8.4.4"` + DisableHostNameservers bool `yaml:"disable_host_nameservers"` + CoreDNSExternalZones []any `yaml:"coredns_external_zones"` } type RegistryMirror struct { diff --git a/internal/files/main.go b/internal/files/main.go new file mode 100644 index 0000000..e47fdfd --- /dev/null +++ b/internal/files/main.go @@ -0,0 +1,30 @@ +package files + +import ( + "kube-forge/internal/logging" + "os" +) + +func GetWorkingDir() string { + cwd, err := os.Getwd() + if err != nil { + logging.Log.Fatal(err) + } + return cwd + +} + +func CreateTempDir() string { + tempDir, err := os.MkdirTemp("", "kube-forge-") + if err != nil { + logging.Log.Fatal(err) + } + return tempDir +} + +func CreateDirWithAllParents(directory string) { + err := os.MkdirAll(directory, 0755) + if err != nil { + logging.Log.Fatal(err) + } +} diff --git a/internal/kubernetes_client/errors.go b/internal/kubernetes_client/errors.go deleted file mode 100644 index d4cb191..0000000 --- a/internal/kubernetes_client/errors.go +++ /dev/null @@ -1,5 +0,0 @@ -package kubernetes_client - -import "errors" - -var NoSuchVarInPod = errors.New("No such variable in pod!") diff --git a/internal/kubernetes_client/pod.go b/internal/kubernetes_client/pod.go deleted file mode 100644 index 1e4d077..0000000 --- a/internal/kubernetes_client/pod.go +++ /dev/null @@ -1,101 +0,0 @@ -package kubernetes_client - -import ( - "bytes" - "context" - "fmt" - "kube-forge/internal/config" - "net/http" - "strings" - "time" - - corev1 "k8s.io/api/core/v1" - metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" - "k8s.io/client-go/kubernetes" - "k8s.io/client-go/tools/remotecommand" -) - -func ExecuteCommandInPodContainer(commandArray []string, namespace string, podName string, container string) (string, error) { - clientset, err := kubernetes.NewForConfig(config.GetKubernetesConfig()) - if err != nil { - panic(err.Error()) - } - - execRequest := clientset.CoreV1().RESTClient().Post(). - Resource("pods"). - Name(podName). - Namespace(namespace). - SubResource("exec"). - Param("container", container). - Param("stderr", "true"). - Param("stdout", "true") - for _, com := range commandArray { - execRequest = execRequest.Param("command", com) - } - - stderr := bytes.NewBufferString("") - stdout := bytes.NewBufferString("") - - streamOptions := remotecommand.StreamOptions{ - Stdout: stdout, - Stderr: stderr, - Tty: false, - } - - exec, err := remotecommand.NewSPDYExecutor(config.GetKubernetesConfig(), http.MethodPost, execRequest.URL()) - if err != nil { - fmt.Println(err.Error()) - } - - err = exec.StreamWithContext(context.Background(), streamOptions) - if err != nil { - if stderr.Len() == 0 { - panic(err) - } - outputErr := stderr.String() - return outputErr, err - } - output := stdout.String() - return output, nil -} - -func GetPodByName(podName string, podNamespace string) (*corev1.Pod, error) { - clientset, err := kubernetes.NewForConfig(config.GetKubernetesConfig()) - if err != nil { - panic(err.Error()) - } - for i := 15; i > 0; i-- { - time.Sleep(time.Second * 1) - - pod, err := clientset.CoreV1(). - Pods(podNamespace). - Get(context.Background(), podName, metav1.GetOptions{}) - if err != nil || pod.Status.Phase != "Running" { - continue - } - return pod, nil - } - return nil, err -} - -func GetEnvVariableFromPodContainer(envVarName string, podNamespace string, podName string, containerName string) (string, error) { - commandArray := []string{"env"} - output, err := ExecuteCommandInPodContainer( - commandArray, podNamespace, podName, containerName, - ) - if err != nil { - return output, err - } - lines := strings.Split(output, "\n") - - for _, line := range lines { - if strings.HasPrefix(line, envVarName+"=") { - parts := strings.Split(line, "=") - if len(parts) == 2 { - value := parts[1] - return value, nil - } - } - } - return "", NoSuchVarInPod -} diff --git a/internal/kubespray/cluster.go b/internal/kubespray/cluster.go index 42ab05f..705b68b 100644 --- a/internal/kubespray/cluster.go +++ b/internal/kubespray/cluster.go @@ -23,7 +23,5 @@ func ScaleCluster() { } func ResetCluster() { - appConfig := config.GetConfig() runPlaybook("kubespray/project/reset.yml", "") - CopyK8SAdminConfig(appConfig.KubeconfigFile) } diff --git a/internal/kubespray/utility.go b/internal/kubespray/utility.go index 459c3b8..e2eb00c 100644 --- a/internal/kubespray/utility.go +++ b/internal/kubespray/utility.go @@ -2,8 +2,11 @@ package kubespray import ( "context" + "fmt" "io" "kube-forge/internal/config" + "kube-forge/internal/logging" + "kube-forge/internal/python" "os" "path/filepath" @@ -16,7 +19,7 @@ func getPlaybookParameters(tags string) playbook.AnsiblePlaybookOptions { cfg := config.GetConfig() ansiblePlaybookOptions := playbook.AnsiblePlaybookOptions{ - Inventory: filepath.Join(cfg.WorkDir, "kubespray/inventory/hosts"), + Inventory: filepath.Join(cfg.InventoryDir, "hosts"), Tags: tags, User: cfg.Credentials.User, Become: true, @@ -33,18 +36,16 @@ func getPlaybookParameters(tags string) playbook.AnsiblePlaybookOptions { return ansiblePlaybookOptions } -func CopyK8SAdminConfig(pathInDataDir string) { +func CopyK8SAdminConfig(outFile string) { config := config.GetConfig() - dataDir := config.WorkDir - var adminDefaultConfigPath = filepath.Join(dataDir, "kubespray/inventory/artifacts/admin.conf") - var adminOutConfigPath = filepath.Join(dataDir, pathInDataDir) + var adminDefaultConfigPath = filepath.Join(config.InventoryDir, "artifacts/admin.conf") source, err := os.Open(adminDefaultConfigPath) if err != nil { panic(err) } defer source.Close() - destination, err := os.Create(adminOutConfigPath) + destination, err := os.Create(outFile) if err != nil { panic(err) } @@ -53,26 +54,58 @@ func CopyK8SAdminConfig(pathInDataDir string) { if err != nil { panic(err) } + logging.Log.Info(fmt.Sprintf("K8s admin config: %s", outFile)) } func runPlaybook(playbookPath string, tags string) { config := config.GetConfig() var callbackExecute execute.Executor + epExec := python.NewPythonExec() + + envVars := map[string]string{ + "ANSIBLE_DISPLAY_SKIPPED_HOSTS": "false", + "ANSIBLE_DISPLAY_OK_HOSTS": "false", + "ANSIBLE_FORCE_COLOR": "true", + "ANSIBLE_HOST_KEY_CHECKING": "false", + } playbookOptions := getPlaybookParameters(tags) + playbookCmd := playbook.NewAnsiblePlaybookCmd( - playbook.WithPlaybooks(playbookPath), + playbook.WithPlaybooks( + filepath.Join(epExec.ResourcesFsPath, playbookPath), + ), playbook.WithPlaybookOptions(&playbookOptions), + playbook.WithBinary( + filepath.Join(epExec.PythonLibFsPath, "bin", "ansible-playbook"), + ), ) + execute := execute.NewDefaultExecute( execute.WithCmd(playbookCmd), execute.WithErrorEnrich(playbook.NewAnsiblePlaybookErrorEnrich()), + execute.WithExecutable(epExec), ) if config.Verbose { - callbackExecute = stdoutcallback.NewDebugStdoutCallbackExecute(execute) + envVars["ANSIBLE_STDOUT_CALLBACK"] = "unixy" + envVars["ANSIBLE_VERBOSITY"] = "3" + envVars["ANSIBLE_DISPLAY_SKIPPED_HOSTS"] = "true" + envVars["ANSIBLE_DISPLAY_OK_HOSTS"] = "true" } else { - callbackExecute = stdoutcallback.NewDenseStdoutCallbackExecute(execute) + envVars["ANSIBLE_STDOUT_CALLBACK"] = "dense" + envVars["ANSIBLE_ACTION_WARNINGS"] = "false" + envVars["ANSIBLE_DEVEL_WARNING"] = "false" + envVars["ANSIBLE_DEPRECATION_WARNINGS"] = "false" + envVars["ANSIBLE_DUPLICATE_YAML_DICT_KEY"] = "ignore" + envVars["ANSIBLE_HOST_PATTERN_MISMATCH"] = "ignore" + envVars["ANSIBLE_SYSTEM_WARNINGS"] = "false" + } + + callbackExecute = stdoutcallback.NewDefaultStdoutCallbackExecute(execute) + + for key, value := range envVars { + os.Setenv(key, value) } err := callbackExecute.Execute(context.Background()) diff --git a/internal/python/generate/main.go b/internal/python/generate/main.go new file mode 100644 index 0000000..c9a2870 --- /dev/null +++ b/internal/python/generate/main.go @@ -0,0 +1,27 @@ +package main + +import ( + "runtime" + "strings" + + "github.com/kluctl/go-embed-python/pip" +) + +var platforms = map[string][]string{ + "darwin-amd64": {"macosx_11_0_x86_64", "macosx_12_0_x86_64"}, + "darwin-arm64": {"macosx_11_0_arm64", "macosx_12_0_arm64"}, + "linux-amd64": {"manylinux_2_17_x86_64", "manylinux_2_28_x86_64", "manylinux2014_x86_64"}, + "linux-arm64": {"manylinux_2_17_aarch64", "manylinux_2_28_aarch64", "manylinux2014_aarch64"}, + "windows-amd64": {"win_amd64"}, +} + +func main() { + os := runtime.GOOS + + arch := runtime.GOARCH + pipPlatform := platforms[strings.Join([]string{os, arch}, "-")] + err := pip.CreateEmbeddedPipPackages("requirements.txt", os, arch, pipPlatform, "./data/") + if err != nil { + panic(err) + } +} diff --git a/internal/python/main.go b/internal/python/main.go new file mode 100644 index 0000000..77549ea --- /dev/null +++ b/internal/python/main.go @@ -0,0 +1,3 @@ +package python + +//go:generate go run ./generate diff --git a/internal/python/requirements.txt b/internal/python/requirements.txt new file mode 100644 index 0000000..0b0adba --- /dev/null +++ b/internal/python/requirements.txt @@ -0,0 +1,4 @@ +ansible +cryptography +jmespath +netaddr diff --git a/internal/python/utils.go b/internal/python/utils.go new file mode 100644 index 0000000..952f371 --- /dev/null +++ b/internal/python/utils.go @@ -0,0 +1,161 @@ +package python + +import ( + "context" + "fmt" + "io" + "kube-forge/internal/python/data" + "kube-forge/internal/resources" + "os" + "os/exec" + "path/filepath" + + executable "github.com/apenella/go-ansible/v2/pkg/execute/exec" + "github.com/kluctl/go-embed-python/embed_util" + "github.com/kluctl/go-embed-python/python" +) + +type PythonExec struct { + ep *python.EmbeddedPython + PythonLibFsPath string + ResourcesFsPath string +} + +type CmdWrapper struct { + *exec.Cmd +} + +func (c *CmdWrapper) CombinedOutput() ([]byte, error) { + return c.Cmd.CombinedOutput() +} + +func (c *CmdWrapper) Environ() []string { + return c.Cmd.Environ() +} + +func (c *CmdWrapper) Output() ([]byte, error) { + return c.Cmd.Output() +} + +func (c *CmdWrapper) Run() error { + return c.Cmd.Run() +} + +func (c *CmdWrapper) Start() error { + return c.Cmd.Start() +} + +func (c *CmdWrapper) StderrPipe() (io.ReadCloser, error) { + return c.Cmd.StderrPipe() +} + +func (c *CmdWrapper) StdinPipe() (io.WriteCloser, error) { + return c.Cmd.StdinPipe() +} + +func (c *CmdWrapper) StdoutPipe() (io.ReadCloser, error) { + return c.Cmd.StdoutPipe() +} + +func (c *CmdWrapper) String() string { + return c.Cmd.String() +} + +func (c *CmdWrapper) Wait() error { + return c.Cmd.Wait() +} + +type ErrorCmd struct { + err error +} + +func (e *ErrorCmd) CombinedOutput() ([]byte, error) { + return nil, e.err +} + +func (e *ErrorCmd) Environ() []string { + return nil +} + +func (e *ErrorCmd) Output() ([]byte, error) { + return nil, e.err +} + +func (e *ErrorCmd) Run() error { + return e.err +} + +func (e *ErrorCmd) Start() error { + return e.err +} + +func (e *ErrorCmd) StderrPipe() (io.ReadCloser, error) { + return nil, e.err +} + +func (e *ErrorCmd) StdinPipe() (io.WriteCloser, error) { + return nil, e.err +} + +func (e *ErrorCmd) StdoutPipe() (io.ReadCloser, error) { + return nil, e.err +} + +func (e *ErrorCmd) String() string { + return fmt.Sprintf("ErrorCmd: %v", e.err) +} + +func (e *ErrorCmd) Wait() error { + return e.err +} + +func NewPythonExec() *PythonExec { + tmpDir := filepath.Join(os.TempDir(), "go-ansible") + pythonDir := tmpDir + "-python" + pythonLibDir := tmpDir + "-python-lib" + resourcesDir := tmpDir + "-resources" + + pythonLibFs, err := embed_util.NewEmbeddedFilesWithTmpDir(data.Data, pythonLibDir, true) + if err != nil { + panic(err) + } + pythonLibFsPath := pythonLibFs.GetExtractedPath() + resourcesFs, _ := embed_util.NewEmbeddedFilesWithTmpDir(resources.Kubespray, resourcesDir, true) + resourcesFsPath := resourcesFs.GetExtractedPath() + + ep, _ := python.NewEmbeddedPythonWithTmpDir(pythonDir, true) + ep.AddPythonPath(pythonLibFs.GetExtractedPath()) + ep.AddPythonPath(resourcesFs.GetExtractedPath()) + + return &PythonExec{ + ep: ep, + PythonLibFsPath: pythonLibFsPath, + ResourcesFsPath: resourcesFsPath, + } +} + +func (e *PythonExec) Command(name string, arg ...string) executable.Cmder { + cmd := append([]string{name}, arg...) + execCmd, err := e.ep.PythonCmd2(cmd) + if err != nil { + return &ErrorCmd{err: fmt.Errorf("failed to create python command: %w", err)} + } + return &CmdWrapper{Cmd: execCmd} +} + +func (e *PythonExec) CommandContext(ctx context.Context, name string, arg ...string) executable.Cmder { + cmd := append([]string{name}, arg...) + execCmd, err := e.ep.PythonCmd2(cmd) + if err != nil { + return &ErrorCmd{err: fmt.Errorf("failed to create python command: %w", err)} + } + + ctxCmd := exec.CommandContext(ctx, execCmd.Path, execCmd.Args[1:]...) + ctxCmd.Env = execCmd.Env + ctxCmd.Dir = execCmd.Dir + ctxCmd.Stdin = execCmd.Stdin + ctxCmd.Stdout = execCmd.Stdout + ctxCmd.Stderr = execCmd.Stderr + + return &CmdWrapper{Cmd: ctxCmd} +} diff --git a/kubespray/project/ansible_version.yml b/internal/resources/kubespray/project/ansible_version.yml similarity index 57% rename from kubespray/project/ansible_version.yml rename to internal/resources/kubespray/project/ansible_version.yml index 009183f..c04c37a 100644 --- a/kubespray/project/ansible_version.yml +++ b/internal/resources/kubespray/project/ansible_version.yml @@ -9,14 +9,14 @@ maximal_ansible_version: 2.17.0 tags: always tasks: - - name: "Check {{ minimal_ansible_version }} <= Ansible version < {{ maximal_ansible_version }}" - assert: - msg: "Ansible must be between {{ minimal_ansible_version }} and {{ maximal_ansible_version }} exclusive - you have {{ ansible_version.string }}" - that: - - ansible_version.string is version(minimal_ansible_version, ">=") - - ansible_version.string is version(maximal_ansible_version, "<") - tags: - - check + # - name: "Check {{ minimal_ansible_version }} <= Ansible version < {{ maximal_ansible_version }}" + # assert: + # msg: "Ansible must be between {{ minimal_ansible_version }} and {{ maximal_ansible_version }} exclusive - you have {{ ansible_version.string }}" + # that: + # - ansible_version.string is version(minimal_ansible_version, ">=") + # - ansible_version.string is version(maximal_ansible_version, "<") + # tags: + # - check - name: "Check that python netaddr is installed" assert: diff --git a/kubespray/project/boilerplate.yml b/internal/resources/kubespray/project/boilerplate.yml similarity index 100% rename from kubespray/project/boilerplate.yml rename to internal/resources/kubespray/project/boilerplate.yml diff --git a/kubespray/project/cluster.yml b/internal/resources/kubespray/project/cluster.yml similarity index 100% rename from kubespray/project/cluster.yml rename to internal/resources/kubespray/project/cluster.yml diff --git a/kubespray/project/facts.yml b/internal/resources/kubespray/project/facts.yml similarity index 100% rename from kubespray/project/facts.yml rename to internal/resources/kubespray/project/facts.yml diff --git a/kubespray/project/install_etcd.yml b/internal/resources/kubespray/project/install_etcd.yml similarity index 100% rename from kubespray/project/install_etcd.yml rename to internal/resources/kubespray/project/install_etcd.yml diff --git a/kubespray/project/library/kube.py b/internal/resources/kubespray/project/library/kube.py similarity index 100% rename from kubespray/project/library/kube.py rename to internal/resources/kubespray/project/library/kube.py diff --git a/kubespray/project/modules/kube.py b/internal/resources/kubespray/project/modules/kube.py similarity index 100% rename from kubespray/project/modules/kube.py rename to internal/resources/kubespray/project/modules/kube.py diff --git a/kubespray/project/recover_control_plane.yml b/internal/resources/kubespray/project/recover_control_plane.yml similarity index 100% rename from kubespray/project/recover_control_plane.yml rename to internal/resources/kubespray/project/recover_control_plane.yml diff --git a/kubespray/project/remove_node.yml b/internal/resources/kubespray/project/remove_node.yml similarity index 100% rename from kubespray/project/remove_node.yml rename to internal/resources/kubespray/project/remove_node.yml diff --git a/internal/resources/kubespray/project/reset.yml b/internal/resources/kubespray/project/reset.yml new file mode 100644 index 0000000..0ee00d2 --- /dev/null +++ b/internal/resources/kubespray/project/reset.yml @@ -0,0 +1,24 @@ +--- +- name: Common tasks for every playbooks + import_playbook: boilerplate.yml + +- name: Gather facts + import_playbook: facts.yml + +- name: Reset cluster + hosts: etcd:k8s_cluster:calico_rr + gather_facts: false + pre_tasks: + - name: Gather information about installed services + service_facts: + + environment: "{{ proxy_disable_env }}" + roles: + - { role: kubespray_defaults } + - { + role: kubernetes/preinstall, + when: "dns_mode != 'none' and resolvconf_mode == 'host_resolvconf'", + tags: resolvconf, + dns_early: true, + } + - { role: reset, tags: reset } diff --git a/kubespray/project/roles/adduser/defaults/main.yml b/internal/resources/kubespray/project/roles/adduser/defaults/main.yml similarity index 100% rename from kubespray/project/roles/adduser/defaults/main.yml rename to internal/resources/kubespray/project/roles/adduser/defaults/main.yml diff --git a/kubespray/project/roles/adduser/molecule/default/converge.yml b/internal/resources/kubespray/project/roles/adduser/molecule/default/converge.yml similarity index 100% rename from kubespray/project/roles/adduser/molecule/default/converge.yml rename to internal/resources/kubespray/project/roles/adduser/molecule/default/converge.yml diff --git a/kubespray/project/roles/adduser/molecule/default/molecule.yml b/internal/resources/kubespray/project/roles/adduser/molecule/default/molecule.yml similarity index 100% rename from kubespray/project/roles/adduser/molecule/default/molecule.yml rename to internal/resources/kubespray/project/roles/adduser/molecule/default/molecule.yml diff --git a/kubespray/project/roles/adduser/tasks/main.yml b/internal/resources/kubespray/project/roles/adduser/tasks/main.yml similarity index 100% rename from kubespray/project/roles/adduser/tasks/main.yml rename to internal/resources/kubespray/project/roles/adduser/tasks/main.yml diff --git a/kubespray/project/roles/adduser/vars/coreos.yml b/internal/resources/kubespray/project/roles/adduser/vars/coreos.yml similarity index 100% rename from kubespray/project/roles/adduser/vars/coreos.yml rename to internal/resources/kubespray/project/roles/adduser/vars/coreos.yml diff --git a/kubespray/project/roles/adduser/vars/debian.yml b/internal/resources/kubespray/project/roles/adduser/vars/debian.yml similarity index 100% rename from kubespray/project/roles/adduser/vars/debian.yml rename to internal/resources/kubespray/project/roles/adduser/vars/debian.yml diff --git a/kubespray/project/roles/adduser/vars/redhat.yml b/internal/resources/kubespray/project/roles/adduser/vars/redhat.yml similarity index 100% rename from kubespray/project/roles/adduser/vars/redhat.yml rename to internal/resources/kubespray/project/roles/adduser/vars/redhat.yml diff --git a/kubespray/project/roles/bastion-ssh-config/defaults/main.yml b/internal/resources/kubespray/project/roles/bastion-ssh-config/defaults/main.yml similarity index 100% rename from kubespray/project/roles/bastion-ssh-config/defaults/main.yml rename to internal/resources/kubespray/project/roles/bastion-ssh-config/defaults/main.yml diff --git a/kubespray/project/roles/bastion-ssh-config/molecule/default/converge.yml b/internal/resources/kubespray/project/roles/bastion-ssh-config/molecule/default/converge.yml similarity index 100% rename from kubespray/project/roles/bastion-ssh-config/molecule/default/converge.yml rename to internal/resources/kubespray/project/roles/bastion-ssh-config/molecule/default/converge.yml diff --git a/kubespray/project/roles/bastion-ssh-config/molecule/default/molecule.yml b/internal/resources/kubespray/project/roles/bastion-ssh-config/molecule/default/molecule.yml similarity index 100% rename from kubespray/project/roles/bastion-ssh-config/molecule/default/molecule.yml rename to internal/resources/kubespray/project/roles/bastion-ssh-config/molecule/default/molecule.yml diff --git a/kubespray/project/roles/bastion-ssh-config/tasks/main.yml b/internal/resources/kubespray/project/roles/bastion-ssh-config/tasks/main.yml similarity index 100% rename from kubespray/project/roles/bastion-ssh-config/tasks/main.yml rename to internal/resources/kubespray/project/roles/bastion-ssh-config/tasks/main.yml diff --git a/kubespray/project/roles/bastion-ssh-config/templates/ssh-bastion.conf.j2 b/internal/resources/kubespray/project/roles/bastion-ssh-config/templates/ssh-bastion.conf.j2 similarity index 100% rename from kubespray/project/roles/bastion-ssh-config/templates/ssh-bastion.conf.j2 rename to internal/resources/kubespray/project/roles/bastion-ssh-config/templates/ssh-bastion.conf.j2 diff --git a/kubespray/project/roles/bootstrap-os/tasks/main.yml b/internal/resources/kubespray/project/roles/bootstrap-os/tasks/main.yml similarity index 100% rename from kubespray/project/roles/bootstrap-os/tasks/main.yml rename to internal/resources/kubespray/project/roles/bootstrap-os/tasks/main.yml diff --git a/kubespray/project/roles/bootstrap_os/defaults/main.yml b/internal/resources/kubespray/project/roles/bootstrap_os/defaults/main.yml similarity index 100% rename from kubespray/project/roles/bootstrap_os/defaults/main.yml rename to internal/resources/kubespray/project/roles/bootstrap_os/defaults/main.yml diff --git a/kubespray/project/roles/bootstrap_os/files/bootstrap.sh b/internal/resources/kubespray/project/roles/bootstrap_os/files/bootstrap.sh similarity index 100% rename from kubespray/project/roles/bootstrap_os/files/bootstrap.sh rename to internal/resources/kubespray/project/roles/bootstrap_os/files/bootstrap.sh diff --git a/kubespray/project/roles/bootstrap_os/handlers/main.yml b/internal/resources/kubespray/project/roles/bootstrap_os/handlers/main.yml similarity index 100% rename from kubespray/project/roles/bootstrap_os/handlers/main.yml rename to internal/resources/kubespray/project/roles/bootstrap_os/handlers/main.yml diff --git a/kubespray/project/roles/bootstrap_os/meta/main.yml b/internal/resources/kubespray/project/roles/bootstrap_os/meta/main.yml similarity index 100% rename from kubespray/project/roles/bootstrap_os/meta/main.yml rename to internal/resources/kubespray/project/roles/bootstrap_os/meta/main.yml diff --git a/kubespray/project/roles/bootstrap_os/molecule/default/converge.yml b/internal/resources/kubespray/project/roles/bootstrap_os/molecule/default/converge.yml similarity index 100% rename from kubespray/project/roles/bootstrap_os/molecule/default/converge.yml rename to internal/resources/kubespray/project/roles/bootstrap_os/molecule/default/converge.yml diff --git a/kubespray/project/roles/bootstrap_os/molecule/default/molecule.yml b/internal/resources/kubespray/project/roles/bootstrap_os/molecule/default/molecule.yml similarity index 100% rename from kubespray/project/roles/bootstrap_os/molecule/default/molecule.yml rename to internal/resources/kubespray/project/roles/bootstrap_os/molecule/default/molecule.yml diff --git a/kubespray/project/roles/bootstrap_os/molecule/default/tests/test_default.py b/internal/resources/kubespray/project/roles/bootstrap_os/molecule/default/tests/test_default.py similarity index 100% rename from kubespray/project/roles/bootstrap_os/molecule/default/tests/test_default.py rename to internal/resources/kubespray/project/roles/bootstrap_os/molecule/default/tests/test_default.py diff --git a/kubespray/project/roles/bootstrap_os/tasks/amzn.yml b/internal/resources/kubespray/project/roles/bootstrap_os/tasks/amzn.yml similarity index 100% rename from kubespray/project/roles/bootstrap_os/tasks/amzn.yml rename to internal/resources/kubespray/project/roles/bootstrap_os/tasks/amzn.yml diff --git a/kubespray/project/roles/bootstrap_os/tasks/centos.yml b/internal/resources/kubespray/project/roles/bootstrap_os/tasks/centos.yml similarity index 100% rename from kubespray/project/roles/bootstrap_os/tasks/centos.yml rename to internal/resources/kubespray/project/roles/bootstrap_os/tasks/centos.yml diff --git a/kubespray/project/roles/bootstrap_os/tasks/clear-linux-os.yml b/internal/resources/kubespray/project/roles/bootstrap_os/tasks/clear-linux-os.yml similarity index 100% rename from kubespray/project/roles/bootstrap_os/tasks/clear-linux-os.yml rename to internal/resources/kubespray/project/roles/bootstrap_os/tasks/clear-linux-os.yml diff --git a/kubespray/project/roles/bootstrap_os/tasks/debian.yml b/internal/resources/kubespray/project/roles/bootstrap_os/tasks/debian.yml similarity index 100% rename from kubespray/project/roles/bootstrap_os/tasks/debian.yml rename to internal/resources/kubespray/project/roles/bootstrap_os/tasks/debian.yml diff --git a/kubespray/project/roles/bootstrap_os/tasks/fedora-coreos.yml b/internal/resources/kubespray/project/roles/bootstrap_os/tasks/fedora-coreos.yml similarity index 100% rename from kubespray/project/roles/bootstrap_os/tasks/fedora-coreos.yml rename to internal/resources/kubespray/project/roles/bootstrap_os/tasks/fedora-coreos.yml diff --git a/kubespray/project/roles/bootstrap_os/tasks/fedora.yml b/internal/resources/kubespray/project/roles/bootstrap_os/tasks/fedora.yml similarity index 100% rename from kubespray/project/roles/bootstrap_os/tasks/fedora.yml rename to internal/resources/kubespray/project/roles/bootstrap_os/tasks/fedora.yml diff --git a/kubespray/project/roles/bootstrap_os/tasks/flatcar.yml b/internal/resources/kubespray/project/roles/bootstrap_os/tasks/flatcar.yml similarity index 100% rename from kubespray/project/roles/bootstrap_os/tasks/flatcar.yml rename to internal/resources/kubespray/project/roles/bootstrap_os/tasks/flatcar.yml diff --git a/kubespray/project/roles/bootstrap_os/tasks/main.yml b/internal/resources/kubespray/project/roles/bootstrap_os/tasks/main.yml similarity index 100% rename from kubespray/project/roles/bootstrap_os/tasks/main.yml rename to internal/resources/kubespray/project/roles/bootstrap_os/tasks/main.yml diff --git a/kubespray/project/roles/bootstrap_os/tasks/openEuler.yml b/internal/resources/kubespray/project/roles/bootstrap_os/tasks/openEuler.yml similarity index 100% rename from kubespray/project/roles/bootstrap_os/tasks/openEuler.yml rename to internal/resources/kubespray/project/roles/bootstrap_os/tasks/openEuler.yml diff --git a/kubespray/project/roles/bootstrap_os/tasks/opensuse-leap.yml b/internal/resources/kubespray/project/roles/bootstrap_os/tasks/opensuse-leap.yml similarity index 100% rename from kubespray/project/roles/bootstrap_os/tasks/opensuse-leap.yml rename to internal/resources/kubespray/project/roles/bootstrap_os/tasks/opensuse-leap.yml diff --git a/kubespray/project/roles/bootstrap_os/tasks/opensuse-tumbleweed.yml b/internal/resources/kubespray/project/roles/bootstrap_os/tasks/opensuse-tumbleweed.yml similarity index 100% rename from kubespray/project/roles/bootstrap_os/tasks/opensuse-tumbleweed.yml rename to internal/resources/kubespray/project/roles/bootstrap_os/tasks/opensuse-tumbleweed.yml diff --git a/kubespray/project/roles/bootstrap_os/tasks/opensuse.yml b/internal/resources/kubespray/project/roles/bootstrap_os/tasks/opensuse.yml similarity index 100% rename from kubespray/project/roles/bootstrap_os/tasks/opensuse.yml rename to internal/resources/kubespray/project/roles/bootstrap_os/tasks/opensuse.yml diff --git a/kubespray/project/roles/bootstrap_os/tasks/rhel.yml b/internal/resources/kubespray/project/roles/bootstrap_os/tasks/rhel.yml similarity index 100% rename from kubespray/project/roles/bootstrap_os/tasks/rhel.yml rename to internal/resources/kubespray/project/roles/bootstrap_os/tasks/rhel.yml diff --git a/kubespray/project/roles/bootstrap_os/tasks/ubuntu.yml b/internal/resources/kubespray/project/roles/bootstrap_os/tasks/ubuntu.yml similarity index 100% rename from kubespray/project/roles/bootstrap_os/tasks/ubuntu.yml rename to internal/resources/kubespray/project/roles/bootstrap_os/tasks/ubuntu.yml diff --git a/kubespray/project/roles/bootstrap_os/vars/fedora-coreos.yml b/internal/resources/kubespray/project/roles/bootstrap_os/vars/fedora-coreos.yml similarity index 100% rename from kubespray/project/roles/bootstrap_os/vars/fedora-coreos.yml rename to internal/resources/kubespray/project/roles/bootstrap_os/vars/fedora-coreos.yml diff --git a/kubespray/project/roles/bootstrap_os/vars/flatcar.yml b/internal/resources/kubespray/project/roles/bootstrap_os/vars/flatcar.yml similarity index 100% rename from kubespray/project/roles/bootstrap_os/vars/flatcar.yml rename to internal/resources/kubespray/project/roles/bootstrap_os/vars/flatcar.yml diff --git a/kubespray/project/roles/container-engine/containerd-common/defaults/main.yml b/internal/resources/kubespray/project/roles/container-engine/containerd-common/defaults/main.yml similarity index 100% rename from kubespray/project/roles/container-engine/containerd-common/defaults/main.yml rename to internal/resources/kubespray/project/roles/container-engine/containerd-common/defaults/main.yml diff --git a/kubespray/project/roles/container-engine/containerd-common/meta/main.yml b/internal/resources/kubespray/project/roles/container-engine/containerd-common/meta/main.yml similarity index 100% rename from kubespray/project/roles/container-engine/containerd-common/meta/main.yml rename to internal/resources/kubespray/project/roles/container-engine/containerd-common/meta/main.yml diff --git a/kubespray/project/roles/container-engine/containerd-common/tasks/main.yml b/internal/resources/kubespray/project/roles/container-engine/containerd-common/tasks/main.yml similarity index 100% rename from kubespray/project/roles/container-engine/containerd-common/tasks/main.yml rename to internal/resources/kubespray/project/roles/container-engine/containerd-common/tasks/main.yml diff --git a/kubespray/project/roles/container-engine/containerd-common/vars/amazon.yml b/internal/resources/kubespray/project/roles/container-engine/containerd-common/vars/amazon.yml similarity index 100% rename from kubespray/project/roles/container-engine/containerd-common/vars/amazon.yml rename to internal/resources/kubespray/project/roles/container-engine/containerd-common/vars/amazon.yml diff --git a/kubespray/project/roles/container-engine/containerd-common/vars/suse.yml b/internal/resources/kubespray/project/roles/container-engine/containerd-common/vars/suse.yml similarity index 100% rename from kubespray/project/roles/container-engine/containerd-common/vars/suse.yml rename to internal/resources/kubespray/project/roles/container-engine/containerd-common/vars/suse.yml diff --git a/kubespray/project/roles/container-engine/containerd/defaults/main.yml b/internal/resources/kubespray/project/roles/container-engine/containerd/defaults/main.yml similarity index 100% rename from kubespray/project/roles/container-engine/containerd/defaults/main.yml rename to internal/resources/kubespray/project/roles/container-engine/containerd/defaults/main.yml diff --git a/kubespray/project/roles/container-engine/containerd/handlers/main.yml b/internal/resources/kubespray/project/roles/container-engine/containerd/handlers/main.yml similarity index 100% rename from kubespray/project/roles/container-engine/containerd/handlers/main.yml rename to internal/resources/kubespray/project/roles/container-engine/containerd/handlers/main.yml diff --git a/kubespray/project/roles/container-engine/containerd/handlers/reset.yml b/internal/resources/kubespray/project/roles/container-engine/containerd/handlers/reset.yml similarity index 100% rename from kubespray/project/roles/container-engine/containerd/handlers/reset.yml rename to internal/resources/kubespray/project/roles/container-engine/containerd/handlers/reset.yml diff --git a/kubespray/project/roles/container-engine/containerd/meta/main.yml b/internal/resources/kubespray/project/roles/container-engine/containerd/meta/main.yml similarity index 100% rename from kubespray/project/roles/container-engine/containerd/meta/main.yml rename to internal/resources/kubespray/project/roles/container-engine/containerd/meta/main.yml diff --git a/kubespray/project/roles/container-engine/containerd/molecule/default/converge.yml b/internal/resources/kubespray/project/roles/container-engine/containerd/molecule/default/converge.yml similarity index 100% rename from kubespray/project/roles/container-engine/containerd/molecule/default/converge.yml rename to internal/resources/kubespray/project/roles/container-engine/containerd/molecule/default/converge.yml diff --git a/kubespray/project/roles/container-engine/containerd/molecule/default/molecule.yml b/internal/resources/kubespray/project/roles/container-engine/containerd/molecule/default/molecule.yml similarity index 100% rename from kubespray/project/roles/container-engine/containerd/molecule/default/molecule.yml rename to internal/resources/kubespray/project/roles/container-engine/containerd/molecule/default/molecule.yml diff --git a/kubespray/project/roles/container-engine/containerd/molecule/default/prepare.yml b/internal/resources/kubespray/project/roles/container-engine/containerd/molecule/default/prepare.yml similarity index 100% rename from kubespray/project/roles/container-engine/containerd/molecule/default/prepare.yml rename to internal/resources/kubespray/project/roles/container-engine/containerd/molecule/default/prepare.yml diff --git a/kubespray/project/roles/container-engine/containerd/molecule/default/tests/test_default.py b/internal/resources/kubespray/project/roles/container-engine/containerd/molecule/default/tests/test_default.py similarity index 100% rename from kubespray/project/roles/container-engine/containerd/molecule/default/tests/test_default.py rename to internal/resources/kubespray/project/roles/container-engine/containerd/molecule/default/tests/test_default.py diff --git a/kubespray/project/roles/container-engine/containerd/tasks/main.yml b/internal/resources/kubespray/project/roles/container-engine/containerd/tasks/main.yml similarity index 100% rename from kubespray/project/roles/container-engine/containerd/tasks/main.yml rename to internal/resources/kubespray/project/roles/container-engine/containerd/tasks/main.yml diff --git a/kubespray/project/roles/container-engine/containerd/tasks/reset.yml b/internal/resources/kubespray/project/roles/container-engine/containerd/tasks/reset.yml similarity index 100% rename from kubespray/project/roles/container-engine/containerd/tasks/reset.yml rename to internal/resources/kubespray/project/roles/container-engine/containerd/tasks/reset.yml diff --git a/kubespray/project/roles/container-engine/containerd/templates/config-v1.toml.j2 b/internal/resources/kubespray/project/roles/container-engine/containerd/templates/config-v1.toml.j2 similarity index 100% rename from kubespray/project/roles/container-engine/containerd/templates/config-v1.toml.j2 rename to internal/resources/kubespray/project/roles/container-engine/containerd/templates/config-v1.toml.j2 diff --git a/kubespray/project/roles/container-engine/containerd/templates/config.toml.j2 b/internal/resources/kubespray/project/roles/container-engine/containerd/templates/config.toml.j2 similarity index 100% rename from kubespray/project/roles/container-engine/containerd/templates/config.toml.j2 rename to internal/resources/kubespray/project/roles/container-engine/containerd/templates/config.toml.j2 diff --git a/kubespray/project/roles/container-engine/containerd/templates/containerd.service.j2 b/internal/resources/kubespray/project/roles/container-engine/containerd/templates/containerd.service.j2 similarity index 100% rename from kubespray/project/roles/container-engine/containerd/templates/containerd.service.j2 rename to internal/resources/kubespray/project/roles/container-engine/containerd/templates/containerd.service.j2 diff --git a/kubespray/project/roles/container-engine/containerd/templates/hosts.toml.j2 b/internal/resources/kubespray/project/roles/container-engine/containerd/templates/hosts.toml.j2 similarity index 100% rename from kubespray/project/roles/container-engine/containerd/templates/hosts.toml.j2 rename to internal/resources/kubespray/project/roles/container-engine/containerd/templates/hosts.toml.j2 diff --git a/kubespray/project/roles/container-engine/containerd/templates/http-proxy.conf.j2 b/internal/resources/kubespray/project/roles/container-engine/containerd/templates/http-proxy.conf.j2 similarity index 100% rename from kubespray/project/roles/container-engine/containerd/templates/http-proxy.conf.j2 rename to internal/resources/kubespray/project/roles/container-engine/containerd/templates/http-proxy.conf.j2 diff --git a/kubespray/project/roles/container-engine/cri-dockerd/defaults/main.yml b/internal/resources/kubespray/project/roles/container-engine/cri-dockerd/defaults/main.yml similarity index 100% rename from kubespray/project/roles/container-engine/cri-dockerd/defaults/main.yml rename to internal/resources/kubespray/project/roles/container-engine/cri-dockerd/defaults/main.yml diff --git a/kubespray/project/roles/container-engine/cri-dockerd/handlers/main.yml b/internal/resources/kubespray/project/roles/container-engine/cri-dockerd/handlers/main.yml similarity index 100% rename from kubespray/project/roles/container-engine/cri-dockerd/handlers/main.yml rename to internal/resources/kubespray/project/roles/container-engine/cri-dockerd/handlers/main.yml diff --git a/kubespray/project/roles/container-engine/cri-dockerd/meta/main.yml b/internal/resources/kubespray/project/roles/container-engine/cri-dockerd/meta/main.yml similarity index 100% rename from kubespray/project/roles/container-engine/cri-dockerd/meta/main.yml rename to internal/resources/kubespray/project/roles/container-engine/cri-dockerd/meta/main.yml diff --git a/kubespray/project/roles/container-engine/cri-dockerd/molecule/default/converge.yml b/internal/resources/kubespray/project/roles/container-engine/cri-dockerd/molecule/default/converge.yml similarity index 100% rename from kubespray/project/roles/container-engine/cri-dockerd/molecule/default/converge.yml rename to internal/resources/kubespray/project/roles/container-engine/cri-dockerd/molecule/default/converge.yml diff --git a/kubespray/project/roles/container-engine/cri-dockerd/molecule/default/files/10-mynet.conf b/internal/resources/kubespray/project/roles/container-engine/cri-dockerd/molecule/default/files/10-mynet.conf similarity index 100% rename from kubespray/project/roles/container-engine/cri-dockerd/molecule/default/files/10-mynet.conf rename to internal/resources/kubespray/project/roles/container-engine/cri-dockerd/molecule/default/files/10-mynet.conf diff --git a/kubespray/project/roles/container-engine/cri-dockerd/molecule/default/files/container.json b/internal/resources/kubespray/project/roles/container-engine/cri-dockerd/molecule/default/files/container.json similarity index 100% rename from kubespray/project/roles/container-engine/cri-dockerd/molecule/default/files/container.json rename to internal/resources/kubespray/project/roles/container-engine/cri-dockerd/molecule/default/files/container.json diff --git a/kubespray/project/roles/container-engine/cri-dockerd/molecule/default/files/sandbox.json b/internal/resources/kubespray/project/roles/container-engine/cri-dockerd/molecule/default/files/sandbox.json similarity index 100% rename from kubespray/project/roles/container-engine/cri-dockerd/molecule/default/files/sandbox.json rename to internal/resources/kubespray/project/roles/container-engine/cri-dockerd/molecule/default/files/sandbox.json diff --git a/kubespray/project/roles/container-engine/cri-dockerd/molecule/default/molecule.yml b/internal/resources/kubespray/project/roles/container-engine/cri-dockerd/molecule/default/molecule.yml similarity index 100% rename from kubespray/project/roles/container-engine/cri-dockerd/molecule/default/molecule.yml rename to internal/resources/kubespray/project/roles/container-engine/cri-dockerd/molecule/default/molecule.yml diff --git a/kubespray/project/roles/container-engine/cri-dockerd/molecule/default/prepare.yml b/internal/resources/kubespray/project/roles/container-engine/cri-dockerd/molecule/default/prepare.yml similarity index 100% rename from kubespray/project/roles/container-engine/cri-dockerd/molecule/default/prepare.yml rename to internal/resources/kubespray/project/roles/container-engine/cri-dockerd/molecule/default/prepare.yml diff --git a/kubespray/project/roles/container-engine/cri-dockerd/molecule/default/tests/test_default.py b/internal/resources/kubespray/project/roles/container-engine/cri-dockerd/molecule/default/tests/test_default.py similarity index 100% rename from kubespray/project/roles/container-engine/cri-dockerd/molecule/default/tests/test_default.py rename to internal/resources/kubespray/project/roles/container-engine/cri-dockerd/molecule/default/tests/test_default.py diff --git a/kubespray/project/roles/container-engine/cri-dockerd/tasks/main.yml b/internal/resources/kubespray/project/roles/container-engine/cri-dockerd/tasks/main.yml similarity index 100% rename from kubespray/project/roles/container-engine/cri-dockerd/tasks/main.yml rename to internal/resources/kubespray/project/roles/container-engine/cri-dockerd/tasks/main.yml diff --git a/kubespray/project/roles/container-engine/cri-dockerd/templates/cri-dockerd.service.j2 b/internal/resources/kubespray/project/roles/container-engine/cri-dockerd/templates/cri-dockerd.service.j2 similarity index 100% rename from kubespray/project/roles/container-engine/cri-dockerd/templates/cri-dockerd.service.j2 rename to internal/resources/kubespray/project/roles/container-engine/cri-dockerd/templates/cri-dockerd.service.j2 diff --git a/kubespray/project/roles/container-engine/cri-dockerd/templates/cri-dockerd.socket.j2 b/internal/resources/kubespray/project/roles/container-engine/cri-dockerd/templates/cri-dockerd.socket.j2 similarity index 100% rename from kubespray/project/roles/container-engine/cri-dockerd/templates/cri-dockerd.socket.j2 rename to internal/resources/kubespray/project/roles/container-engine/cri-dockerd/templates/cri-dockerd.socket.j2 diff --git a/kubespray/project/roles/container-engine/cri-o/defaults/main.yml b/internal/resources/kubespray/project/roles/container-engine/cri-o/defaults/main.yml similarity index 100% rename from kubespray/project/roles/container-engine/cri-o/defaults/main.yml rename to internal/resources/kubespray/project/roles/container-engine/cri-o/defaults/main.yml diff --git a/kubespray/project/roles/container-engine/cri-o/files/mounts.conf b/internal/resources/kubespray/project/roles/container-engine/cri-o/files/mounts.conf similarity index 100% rename from kubespray/project/roles/container-engine/cri-o/files/mounts.conf rename to internal/resources/kubespray/project/roles/container-engine/cri-o/files/mounts.conf diff --git a/kubespray/project/roles/container-engine/cri-o/handlers/main.yml b/internal/resources/kubespray/project/roles/container-engine/cri-o/handlers/main.yml similarity index 100% rename from kubespray/project/roles/container-engine/cri-o/handlers/main.yml rename to internal/resources/kubespray/project/roles/container-engine/cri-o/handlers/main.yml diff --git a/kubespray/project/roles/container-engine/cri-o/meta/main.yml b/internal/resources/kubespray/project/roles/container-engine/cri-o/meta/main.yml similarity index 100% rename from kubespray/project/roles/container-engine/cri-o/meta/main.yml rename to internal/resources/kubespray/project/roles/container-engine/cri-o/meta/main.yml diff --git a/kubespray/project/roles/container-engine/cri-o/molecule/default/converge.yml b/internal/resources/kubespray/project/roles/container-engine/cri-o/molecule/default/converge.yml similarity index 100% rename from kubespray/project/roles/container-engine/cri-o/molecule/default/converge.yml rename to internal/resources/kubespray/project/roles/container-engine/cri-o/molecule/default/converge.yml diff --git a/kubespray/project/roles/container-engine/cri-o/molecule/default/files/10-mynet.conf b/internal/resources/kubespray/project/roles/container-engine/cri-o/molecule/default/files/10-mynet.conf similarity index 100% rename from kubespray/project/roles/container-engine/cri-o/molecule/default/files/10-mynet.conf rename to internal/resources/kubespray/project/roles/container-engine/cri-o/molecule/default/files/10-mynet.conf diff --git a/kubespray/project/roles/container-engine/cri-o/molecule/default/files/container.json b/internal/resources/kubespray/project/roles/container-engine/cri-o/molecule/default/files/container.json similarity index 100% rename from kubespray/project/roles/container-engine/cri-o/molecule/default/files/container.json rename to internal/resources/kubespray/project/roles/container-engine/cri-o/molecule/default/files/container.json diff --git a/kubespray/project/roles/container-engine/cri-o/molecule/default/files/sandbox.json b/internal/resources/kubespray/project/roles/container-engine/cri-o/molecule/default/files/sandbox.json similarity index 100% rename from kubespray/project/roles/container-engine/cri-o/molecule/default/files/sandbox.json rename to internal/resources/kubespray/project/roles/container-engine/cri-o/molecule/default/files/sandbox.json diff --git a/kubespray/project/roles/container-engine/cri-o/molecule/default/molecule.yml b/internal/resources/kubespray/project/roles/container-engine/cri-o/molecule/default/molecule.yml similarity index 100% rename from kubespray/project/roles/container-engine/cri-o/molecule/default/molecule.yml rename to internal/resources/kubespray/project/roles/container-engine/cri-o/molecule/default/molecule.yml diff --git a/kubespray/project/roles/container-engine/cri-o/molecule/default/prepare.yml b/internal/resources/kubespray/project/roles/container-engine/cri-o/molecule/default/prepare.yml similarity index 100% rename from kubespray/project/roles/container-engine/cri-o/molecule/default/prepare.yml rename to internal/resources/kubespray/project/roles/container-engine/cri-o/molecule/default/prepare.yml diff --git a/kubespray/project/roles/container-engine/cri-o/molecule/default/tests/test_default.py b/internal/resources/kubespray/project/roles/container-engine/cri-o/molecule/default/tests/test_default.py similarity index 100% rename from kubespray/project/roles/container-engine/cri-o/molecule/default/tests/test_default.py rename to internal/resources/kubespray/project/roles/container-engine/cri-o/molecule/default/tests/test_default.py diff --git a/kubespray/project/roles/container-engine/cri-o/tasks/load_vars.yml b/internal/resources/kubespray/project/roles/container-engine/cri-o/tasks/load_vars.yml similarity index 100% rename from kubespray/project/roles/container-engine/cri-o/tasks/load_vars.yml rename to internal/resources/kubespray/project/roles/container-engine/cri-o/tasks/load_vars.yml diff --git a/kubespray/project/roles/container-engine/cri-o/tasks/main.yaml b/internal/resources/kubespray/project/roles/container-engine/cri-o/tasks/main.yaml similarity index 100% rename from kubespray/project/roles/container-engine/cri-o/tasks/main.yaml rename to internal/resources/kubespray/project/roles/container-engine/cri-o/tasks/main.yaml diff --git a/kubespray/project/roles/container-engine/cri-o/tasks/reset.yml b/internal/resources/kubespray/project/roles/container-engine/cri-o/tasks/reset.yml similarity index 100% rename from kubespray/project/roles/container-engine/cri-o/tasks/reset.yml rename to internal/resources/kubespray/project/roles/container-engine/cri-o/tasks/reset.yml diff --git a/kubespray/project/roles/container-engine/cri-o/tasks/setup-amazon.yaml b/internal/resources/kubespray/project/roles/container-engine/cri-o/tasks/setup-amazon.yaml similarity index 100% rename from kubespray/project/roles/container-engine/cri-o/tasks/setup-amazon.yaml rename to internal/resources/kubespray/project/roles/container-engine/cri-o/tasks/setup-amazon.yaml diff --git a/kubespray/project/roles/container-engine/cri-o/templates/config.json.j2 b/internal/resources/kubespray/project/roles/container-engine/cri-o/templates/config.json.j2 similarity index 100% rename from kubespray/project/roles/container-engine/cri-o/templates/config.json.j2 rename to internal/resources/kubespray/project/roles/container-engine/cri-o/templates/config.json.j2 diff --git a/kubespray/project/roles/container-engine/cri-o/templates/crio.conf.j2 b/internal/resources/kubespray/project/roles/container-engine/cri-o/templates/crio.conf.j2 similarity index 100% rename from kubespray/project/roles/container-engine/cri-o/templates/crio.conf.j2 rename to internal/resources/kubespray/project/roles/container-engine/cri-o/templates/crio.conf.j2 diff --git a/kubespray/project/roles/container-engine/cri-o/templates/http-proxy.conf.j2 b/internal/resources/kubespray/project/roles/container-engine/cri-o/templates/http-proxy.conf.j2 similarity index 100% rename from kubespray/project/roles/container-engine/cri-o/templates/http-proxy.conf.j2 rename to internal/resources/kubespray/project/roles/container-engine/cri-o/templates/http-proxy.conf.j2 diff --git a/kubespray/project/roles/container-engine/cri-o/templates/registry.conf.j2 b/internal/resources/kubespray/project/roles/container-engine/cri-o/templates/registry.conf.j2 similarity index 100% rename from kubespray/project/roles/container-engine/cri-o/templates/registry.conf.j2 rename to internal/resources/kubespray/project/roles/container-engine/cri-o/templates/registry.conf.j2 diff --git a/kubespray/project/roles/container-engine/cri-o/templates/unqualified.conf.j2 b/internal/resources/kubespray/project/roles/container-engine/cri-o/templates/unqualified.conf.j2 similarity index 100% rename from kubespray/project/roles/container-engine/cri-o/templates/unqualified.conf.j2 rename to internal/resources/kubespray/project/roles/container-engine/cri-o/templates/unqualified.conf.j2 diff --git a/kubespray/project/roles/container-engine/cri-o/vars/v1.29.yml b/internal/resources/kubespray/project/roles/container-engine/cri-o/vars/v1.29.yml similarity index 100% rename from kubespray/project/roles/container-engine/cri-o/vars/v1.29.yml rename to internal/resources/kubespray/project/roles/container-engine/cri-o/vars/v1.29.yml diff --git a/kubespray/project/roles/container-engine/cri-o/vars/v1.31.yml b/internal/resources/kubespray/project/roles/container-engine/cri-o/vars/v1.31.yml similarity index 100% rename from kubespray/project/roles/container-engine/cri-o/vars/v1.31.yml rename to internal/resources/kubespray/project/roles/container-engine/cri-o/vars/v1.31.yml diff --git a/kubespray/project/roles/container-engine/crictl/handlers/main.yml b/internal/resources/kubespray/project/roles/container-engine/crictl/handlers/main.yml similarity index 100% rename from kubespray/project/roles/container-engine/crictl/handlers/main.yml rename to internal/resources/kubespray/project/roles/container-engine/crictl/handlers/main.yml diff --git a/kubespray/project/roles/container-engine/crictl/tasks/crictl.yml b/internal/resources/kubespray/project/roles/container-engine/crictl/tasks/crictl.yml similarity index 100% rename from kubespray/project/roles/container-engine/crictl/tasks/crictl.yml rename to internal/resources/kubespray/project/roles/container-engine/crictl/tasks/crictl.yml diff --git a/kubespray/project/roles/container-engine/crictl/tasks/main.yml b/internal/resources/kubespray/project/roles/container-engine/crictl/tasks/main.yml similarity index 100% rename from kubespray/project/roles/container-engine/crictl/tasks/main.yml rename to internal/resources/kubespray/project/roles/container-engine/crictl/tasks/main.yml diff --git a/kubespray/project/roles/container-engine/crictl/templates/crictl.yaml.j2 b/internal/resources/kubespray/project/roles/container-engine/crictl/templates/crictl.yaml.j2 similarity index 100% rename from kubespray/project/roles/container-engine/crictl/templates/crictl.yaml.j2 rename to internal/resources/kubespray/project/roles/container-engine/crictl/templates/crictl.yaml.j2 diff --git a/kubespray/project/roles/container-engine/crun/tasks/main.yml b/internal/resources/kubespray/project/roles/container-engine/crun/tasks/main.yml similarity index 100% rename from kubespray/project/roles/container-engine/crun/tasks/main.yml rename to internal/resources/kubespray/project/roles/container-engine/crun/tasks/main.yml diff --git a/kubespray/project/roles/container-engine/docker/defaults/main.yml b/internal/resources/kubespray/project/roles/container-engine/docker/defaults/main.yml similarity index 100% rename from kubespray/project/roles/container-engine/docker/defaults/main.yml rename to internal/resources/kubespray/project/roles/container-engine/docker/defaults/main.yml diff --git a/kubespray/project/roles/container-engine/docker/files/cleanup-docker-orphans.sh b/internal/resources/kubespray/project/roles/container-engine/docker/files/cleanup-docker-orphans.sh similarity index 100% rename from kubespray/project/roles/container-engine/docker/files/cleanup-docker-orphans.sh rename to internal/resources/kubespray/project/roles/container-engine/docker/files/cleanup-docker-orphans.sh diff --git a/kubespray/project/roles/container-engine/docker/handlers/main.yml b/internal/resources/kubespray/project/roles/container-engine/docker/handlers/main.yml similarity index 100% rename from kubespray/project/roles/container-engine/docker/handlers/main.yml rename to internal/resources/kubespray/project/roles/container-engine/docker/handlers/main.yml diff --git a/kubespray/project/roles/container-engine/docker/meta/main.yml b/internal/resources/kubespray/project/roles/container-engine/docker/meta/main.yml similarity index 100% rename from kubespray/project/roles/container-engine/docker/meta/main.yml rename to internal/resources/kubespray/project/roles/container-engine/docker/meta/main.yml diff --git a/kubespray/project/roles/container-engine/docker/tasks/docker_plugin.yml b/internal/resources/kubespray/project/roles/container-engine/docker/tasks/docker_plugin.yml similarity index 100% rename from kubespray/project/roles/container-engine/docker/tasks/docker_plugin.yml rename to internal/resources/kubespray/project/roles/container-engine/docker/tasks/docker_plugin.yml diff --git a/kubespray/project/roles/container-engine/docker/tasks/main.yml b/internal/resources/kubespray/project/roles/container-engine/docker/tasks/main.yml similarity index 100% rename from kubespray/project/roles/container-engine/docker/tasks/main.yml rename to internal/resources/kubespray/project/roles/container-engine/docker/tasks/main.yml diff --git a/kubespray/project/roles/container-engine/docker/tasks/pre-upgrade.yml b/internal/resources/kubespray/project/roles/container-engine/docker/tasks/pre-upgrade.yml similarity index 100% rename from kubespray/project/roles/container-engine/docker/tasks/pre-upgrade.yml rename to internal/resources/kubespray/project/roles/container-engine/docker/tasks/pre-upgrade.yml diff --git a/kubespray/project/roles/container-engine/docker/tasks/reset.yml b/internal/resources/kubespray/project/roles/container-engine/docker/tasks/reset.yml similarity index 100% rename from kubespray/project/roles/container-engine/docker/tasks/reset.yml rename to internal/resources/kubespray/project/roles/container-engine/docker/tasks/reset.yml diff --git a/kubespray/project/roles/container-engine/docker/tasks/set_facts_dns.yml b/internal/resources/kubespray/project/roles/container-engine/docker/tasks/set_facts_dns.yml similarity index 100% rename from kubespray/project/roles/container-engine/docker/tasks/set_facts_dns.yml rename to internal/resources/kubespray/project/roles/container-engine/docker/tasks/set_facts_dns.yml diff --git a/kubespray/project/roles/container-engine/docker/tasks/systemd.yml b/internal/resources/kubespray/project/roles/container-engine/docker/tasks/systemd.yml similarity index 100% rename from kubespray/project/roles/container-engine/docker/tasks/systemd.yml rename to internal/resources/kubespray/project/roles/container-engine/docker/tasks/systemd.yml diff --git a/kubespray/project/roles/container-engine/docker/templates/docker-dns.conf.j2 b/internal/resources/kubespray/project/roles/container-engine/docker/templates/docker-dns.conf.j2 similarity index 100% rename from kubespray/project/roles/container-engine/docker/templates/docker-dns.conf.j2 rename to internal/resources/kubespray/project/roles/container-engine/docker/templates/docker-dns.conf.j2 diff --git a/kubespray/project/roles/container-engine/docker/templates/docker-options.conf.j2 b/internal/resources/kubespray/project/roles/container-engine/docker/templates/docker-options.conf.j2 similarity index 100% rename from kubespray/project/roles/container-engine/docker/templates/docker-options.conf.j2 rename to internal/resources/kubespray/project/roles/container-engine/docker/templates/docker-options.conf.j2 diff --git a/kubespray/project/roles/container-engine/docker/templates/docker-orphan-cleanup.conf.j2 b/internal/resources/kubespray/project/roles/container-engine/docker/templates/docker-orphan-cleanup.conf.j2 similarity index 100% rename from kubespray/project/roles/container-engine/docker/templates/docker-orphan-cleanup.conf.j2 rename to internal/resources/kubespray/project/roles/container-engine/docker/templates/docker-orphan-cleanup.conf.j2 diff --git a/kubespray/project/roles/container-engine/docker/templates/docker.service.j2 b/internal/resources/kubespray/project/roles/container-engine/docker/templates/docker.service.j2 similarity index 100% rename from kubespray/project/roles/container-engine/docker/templates/docker.service.j2 rename to internal/resources/kubespray/project/roles/container-engine/docker/templates/docker.service.j2 diff --git a/kubespray/project/roles/container-engine/docker/templates/fedora_docker.repo.j2 b/internal/resources/kubespray/project/roles/container-engine/docker/templates/fedora_docker.repo.j2 similarity index 100% rename from kubespray/project/roles/container-engine/docker/templates/fedora_docker.repo.j2 rename to internal/resources/kubespray/project/roles/container-engine/docker/templates/fedora_docker.repo.j2 diff --git a/kubespray/project/roles/container-engine/docker/templates/http-proxy.conf.j2 b/internal/resources/kubespray/project/roles/container-engine/docker/templates/http-proxy.conf.j2 similarity index 100% rename from kubespray/project/roles/container-engine/docker/templates/http-proxy.conf.j2 rename to internal/resources/kubespray/project/roles/container-engine/docker/templates/http-proxy.conf.j2 diff --git a/kubespray/project/roles/container-engine/docker/templates/rh_docker.repo.j2 b/internal/resources/kubespray/project/roles/container-engine/docker/templates/rh_docker.repo.j2 similarity index 100% rename from kubespray/project/roles/container-engine/docker/templates/rh_docker.repo.j2 rename to internal/resources/kubespray/project/roles/container-engine/docker/templates/rh_docker.repo.j2 diff --git a/kubespray/project/roles/container-engine/docker/vars/amazon.yml b/internal/resources/kubespray/project/roles/container-engine/docker/vars/amazon.yml similarity index 100% rename from kubespray/project/roles/container-engine/docker/vars/amazon.yml rename to internal/resources/kubespray/project/roles/container-engine/docker/vars/amazon.yml diff --git a/kubespray/project/roles/container-engine/docker/vars/clearlinux.yml b/internal/resources/kubespray/project/roles/container-engine/docker/vars/clearlinux.yml similarity index 100% rename from kubespray/project/roles/container-engine/docker/vars/clearlinux.yml rename to internal/resources/kubespray/project/roles/container-engine/docker/vars/clearlinux.yml diff --git a/kubespray/project/roles/container-engine/docker/vars/debian.yml b/internal/resources/kubespray/project/roles/container-engine/docker/vars/debian.yml similarity index 100% rename from kubespray/project/roles/container-engine/docker/vars/debian.yml rename to internal/resources/kubespray/project/roles/container-engine/docker/vars/debian.yml diff --git a/kubespray/project/roles/container-engine/docker/vars/fedora.yml b/internal/resources/kubespray/project/roles/container-engine/docker/vars/fedora.yml similarity index 100% rename from kubespray/project/roles/container-engine/docker/vars/fedora.yml rename to internal/resources/kubespray/project/roles/container-engine/docker/vars/fedora.yml diff --git a/kubespray/project/roles/container-engine/docker/vars/kylin.yml b/internal/resources/kubespray/project/roles/container-engine/docker/vars/kylin.yml similarity index 100% rename from kubespray/project/roles/container-engine/docker/vars/kylin.yml rename to internal/resources/kubespray/project/roles/container-engine/docker/vars/kylin.yml diff --git a/internal/resources/kubespray/project/roles/container-engine/docker/vars/openeuler.yml b/internal/resources/kubespray/project/roles/container-engine/docker/vars/openeuler.yml new file mode 100644 index 0000000..d79cf83 --- /dev/null +++ b/internal/resources/kubespray/project/roles/container-engine/docker/vars/openeuler.yml @@ -0,0 +1,66 @@ +--- + +docker_version: 26.1 +docker_cli_version: "{{ docker_version }}" +docker_rh_repo_base_url: 'https://download.docker.com/linux/centos/8/$basearch/stable' + +# containerd versions are only relevant for docker +containerd_versioned_pkg: + 'latest': "{{ containerd_package }}" + '1.3.7': "{{ containerd_package }}-1.3.7-3.1.el8" + '1.3.9': "{{ containerd_package }}-1.3.9-3.1.el8" + '1.4.3': "{{ containerd_package }}-1.4.3-3.2.el8" + '1.4.4': "{{ containerd_package }}-1.4.4-3.1.el8" + '1.4.6': "{{ containerd_package }}-1.4.6-3.1.el8" + '1.4.9': "{{ containerd_package }}-1.4.9-3.1.el8" + '1.4.12': "{{ containerd_package }}-1.4.12-3.1.el8" + '1.6.4': "{{ containerd_package }}-1.6.4-3.1.el8" + '1.6.6': "{{ containerd_package }}-1.6.6-3.1.el8" + '1.6.7': "{{ containerd_package }}-1.6.7-3.1.el8" + '1.6.8': "{{ containerd_package }}-1.6.8-3.1.el8" + '1.6.9': "{{ containerd_package }}-1.6.9-3.1.el8" + '1.6.10': "{{ containerd_package }}-1.6.10-3.1.el8" + '1.6.11': "{{ containerd_package }}-1.6.11-3.1.el8" + '1.6.12': "{{ containerd_package }}-1.6.12-3.1.el8" + '1.6.13': "{{ containerd_package }}-1.6.13-3.1.el8" + '1.6.14': "{{ containerd_package }}-1.6.14-3.1.el8" + '1.6.15': "{{ containerd_package }}-1.6.15-3.1.el8" + '1.6.16': "{{ containerd_package }}-1.6.16-3.1.el8" + '1.6.18': "{{ containerd_package }}-1.6.18-3.1.el8" + '1.6.28': "{{ containerd_package }}-1.6.28-3.1.el8" + '1.6.31': "{{ containerd_package }}-1.6.31-3.1.el8" + '1.6.32': "{{ containerd_package }}-1.6.32-3.1.el8" + 'stable': "{{ containerd_package }}-1.6.32-3.1.el8" + 'edge': "{{ containerd_package }}-1.6.32-3.1.el8" + +# https://docs.docker.com/engine/installation/linux/centos/#install-from-a-package +# https://download.docker.com/linux/centos/8/x86_64/stable/Packages/ +# or do 'yum --showduplicates list docker-engine' +docker_versioned_pkg: + 'latest': docker-ce + '18.09': docker-ce-3:18.09.9-3.el8 + '19.03': docker-ce-3:19.03.15-3.el8 + '23.0': docker-ce-3:23.0.6-1.el8 + '24.0': docker-ce-3:24.0.9-1.el8 + '26.0': docker-ce-26.0.2-1.el8 + '26.1': docker-ce-26.1.2-1.el8 + 'stable': docker-ce-26.1.2-1.el8 + 'edge': docker-ce-26.1.2-1.el8 + +docker_cli_versioned_pkg: + 'latest': docker-ce-cli + '18.09': docker-ce-cli-1:18.09.9-3.el8 + '19.03': docker-ce-cli-1:19.03.15-3.el8 + '23.0': docker-ce-cli-1:23.0.6-1.el8 + '24.0': docker-ce-cli-1:24.0.9-1.el8 + '26.0': docker-ce-cli-26.0.2-1.el8 + '26.1': docker-ce-cli-26.1.2-1.el8 + 'stable': docker-ce-cli-26.1.2-1.el8 + 'edge': docker-ce-cli-26.1.2-1.el8 + +docker_package_info: + enablerepo: "docker-ce" + pkgs: + - "{{ containerd_versioned_pkg[docker_containerd_version | string] }}" + - "{{ docker_cli_versioned_pkg[docker_cli_version | string] }}" + - "{{ docker_versioned_pkg[docker_version | string] }}" diff --git a/kubespray/project/roles/container-engine/docker/vars/redhat.yml b/internal/resources/kubespray/project/roles/container-engine/docker/vars/redhat.yml similarity index 100% rename from kubespray/project/roles/container-engine/docker/vars/redhat.yml rename to internal/resources/kubespray/project/roles/container-engine/docker/vars/redhat.yml diff --git a/kubespray/project/roles/container-engine/docker/vars/suse.yml b/internal/resources/kubespray/project/roles/container-engine/docker/vars/suse.yml similarity index 100% rename from kubespray/project/roles/container-engine/docker/vars/suse.yml rename to internal/resources/kubespray/project/roles/container-engine/docker/vars/suse.yml diff --git a/kubespray/project/roles/container-engine/docker/vars/ubuntu.yml b/internal/resources/kubespray/project/roles/container-engine/docker/vars/ubuntu.yml similarity index 100% rename from kubespray/project/roles/container-engine/docker/vars/ubuntu.yml rename to internal/resources/kubespray/project/roles/container-engine/docker/vars/ubuntu.yml diff --git a/kubespray/project/roles/container-engine/docker/vars/uniontech.yml b/internal/resources/kubespray/project/roles/container-engine/docker/vars/uniontech.yml similarity index 100% rename from kubespray/project/roles/container-engine/docker/vars/uniontech.yml rename to internal/resources/kubespray/project/roles/container-engine/docker/vars/uniontech.yml diff --git a/kubespray/project/roles/container-engine/gvisor/molecule/default/converge.yml b/internal/resources/kubespray/project/roles/container-engine/gvisor/molecule/default/converge.yml similarity index 100% rename from kubespray/project/roles/container-engine/gvisor/molecule/default/converge.yml rename to internal/resources/kubespray/project/roles/container-engine/gvisor/molecule/default/converge.yml diff --git a/kubespray/project/roles/container-engine/gvisor/molecule/default/files/10-mynet.conf b/internal/resources/kubespray/project/roles/container-engine/gvisor/molecule/default/files/10-mynet.conf similarity index 100% rename from kubespray/project/roles/container-engine/gvisor/molecule/default/files/10-mynet.conf rename to internal/resources/kubespray/project/roles/container-engine/gvisor/molecule/default/files/10-mynet.conf diff --git a/kubespray/project/roles/container-engine/gvisor/molecule/default/files/container.json b/internal/resources/kubespray/project/roles/container-engine/gvisor/molecule/default/files/container.json similarity index 100% rename from kubespray/project/roles/container-engine/gvisor/molecule/default/files/container.json rename to internal/resources/kubespray/project/roles/container-engine/gvisor/molecule/default/files/container.json diff --git a/kubespray/project/roles/container-engine/gvisor/molecule/default/files/sandbox.json b/internal/resources/kubespray/project/roles/container-engine/gvisor/molecule/default/files/sandbox.json similarity index 100% rename from kubespray/project/roles/container-engine/gvisor/molecule/default/files/sandbox.json rename to internal/resources/kubespray/project/roles/container-engine/gvisor/molecule/default/files/sandbox.json diff --git a/kubespray/project/roles/container-engine/gvisor/molecule/default/molecule.yml b/internal/resources/kubespray/project/roles/container-engine/gvisor/molecule/default/molecule.yml similarity index 100% rename from kubespray/project/roles/container-engine/gvisor/molecule/default/molecule.yml rename to internal/resources/kubespray/project/roles/container-engine/gvisor/molecule/default/molecule.yml diff --git a/kubespray/project/roles/container-engine/gvisor/molecule/default/prepare.yml b/internal/resources/kubespray/project/roles/container-engine/gvisor/molecule/default/prepare.yml similarity index 100% rename from kubespray/project/roles/container-engine/gvisor/molecule/default/prepare.yml rename to internal/resources/kubespray/project/roles/container-engine/gvisor/molecule/default/prepare.yml diff --git a/kubespray/project/roles/container-engine/gvisor/molecule/default/tests/test_default.py b/internal/resources/kubespray/project/roles/container-engine/gvisor/molecule/default/tests/test_default.py similarity index 100% rename from kubespray/project/roles/container-engine/gvisor/molecule/default/tests/test_default.py rename to internal/resources/kubespray/project/roles/container-engine/gvisor/molecule/default/tests/test_default.py diff --git a/kubespray/project/roles/container-engine/gvisor/tasks/main.yml b/internal/resources/kubespray/project/roles/container-engine/gvisor/tasks/main.yml similarity index 100% rename from kubespray/project/roles/container-engine/gvisor/tasks/main.yml rename to internal/resources/kubespray/project/roles/container-engine/gvisor/tasks/main.yml diff --git a/kubespray/project/roles/container-engine/kata-containers/defaults/main.yml b/internal/resources/kubespray/project/roles/container-engine/kata-containers/defaults/main.yml similarity index 100% rename from kubespray/project/roles/container-engine/kata-containers/defaults/main.yml rename to internal/resources/kubespray/project/roles/container-engine/kata-containers/defaults/main.yml diff --git a/kubespray/project/roles/container-engine/kata-containers/molecule/default/converge.yml b/internal/resources/kubespray/project/roles/container-engine/kata-containers/molecule/default/converge.yml similarity index 100% rename from kubespray/project/roles/container-engine/kata-containers/molecule/default/converge.yml rename to internal/resources/kubespray/project/roles/container-engine/kata-containers/molecule/default/converge.yml diff --git a/kubespray/project/roles/container-engine/kata-containers/molecule/default/files/10-mynet.conf b/internal/resources/kubespray/project/roles/container-engine/kata-containers/molecule/default/files/10-mynet.conf similarity index 100% rename from kubespray/project/roles/container-engine/kata-containers/molecule/default/files/10-mynet.conf rename to internal/resources/kubespray/project/roles/container-engine/kata-containers/molecule/default/files/10-mynet.conf diff --git a/kubespray/project/roles/container-engine/kata-containers/molecule/default/files/container.json b/internal/resources/kubespray/project/roles/container-engine/kata-containers/molecule/default/files/container.json similarity index 100% rename from kubespray/project/roles/container-engine/kata-containers/molecule/default/files/container.json rename to internal/resources/kubespray/project/roles/container-engine/kata-containers/molecule/default/files/container.json diff --git a/kubespray/project/roles/container-engine/kata-containers/molecule/default/files/sandbox.json b/internal/resources/kubespray/project/roles/container-engine/kata-containers/molecule/default/files/sandbox.json similarity index 100% rename from kubespray/project/roles/container-engine/kata-containers/molecule/default/files/sandbox.json rename to internal/resources/kubespray/project/roles/container-engine/kata-containers/molecule/default/files/sandbox.json diff --git a/kubespray/project/roles/container-engine/kata-containers/molecule/default/molecule.yml b/internal/resources/kubespray/project/roles/container-engine/kata-containers/molecule/default/molecule.yml similarity index 100% rename from kubespray/project/roles/container-engine/kata-containers/molecule/default/molecule.yml rename to internal/resources/kubespray/project/roles/container-engine/kata-containers/molecule/default/molecule.yml diff --git a/kubespray/project/roles/container-engine/kata-containers/molecule/default/prepare.yml b/internal/resources/kubespray/project/roles/container-engine/kata-containers/molecule/default/prepare.yml similarity index 100% rename from kubespray/project/roles/container-engine/kata-containers/molecule/default/prepare.yml rename to internal/resources/kubespray/project/roles/container-engine/kata-containers/molecule/default/prepare.yml diff --git a/kubespray/project/roles/container-engine/kata-containers/molecule/default/tests/test_default.py b/internal/resources/kubespray/project/roles/container-engine/kata-containers/molecule/default/tests/test_default.py similarity index 100% rename from kubespray/project/roles/container-engine/kata-containers/molecule/default/tests/test_default.py rename to internal/resources/kubespray/project/roles/container-engine/kata-containers/molecule/default/tests/test_default.py diff --git a/kubespray/project/roles/container-engine/kata-containers/tasks/main.yml b/internal/resources/kubespray/project/roles/container-engine/kata-containers/tasks/main.yml similarity index 100% rename from kubespray/project/roles/container-engine/kata-containers/tasks/main.yml rename to internal/resources/kubespray/project/roles/container-engine/kata-containers/tasks/main.yml diff --git a/kubespray/project/roles/container-engine/kata-containers/templates/configuration-qemu.toml.j2 b/internal/resources/kubespray/project/roles/container-engine/kata-containers/templates/configuration-qemu.toml.j2 similarity index 100% rename from kubespray/project/roles/container-engine/kata-containers/templates/configuration-qemu.toml.j2 rename to internal/resources/kubespray/project/roles/container-engine/kata-containers/templates/configuration-qemu.toml.j2 diff --git a/kubespray/project/roles/container-engine/kata-containers/templates/containerd-shim-kata-v2.j2 b/internal/resources/kubespray/project/roles/container-engine/kata-containers/templates/containerd-shim-kata-v2.j2 similarity index 100% rename from kubespray/project/roles/container-engine/kata-containers/templates/containerd-shim-kata-v2.j2 rename to internal/resources/kubespray/project/roles/container-engine/kata-containers/templates/containerd-shim-kata-v2.j2 diff --git a/kubespray/project/roles/container-engine/meta/main.yml b/internal/resources/kubespray/project/roles/container-engine/meta/main.yml similarity index 100% rename from kubespray/project/roles/container-engine/meta/main.yml rename to internal/resources/kubespray/project/roles/container-engine/meta/main.yml diff --git a/kubespray/project/roles/container-engine/nerdctl/handlers/main.yml b/internal/resources/kubespray/project/roles/container-engine/nerdctl/handlers/main.yml similarity index 100% rename from kubespray/project/roles/container-engine/nerdctl/handlers/main.yml rename to internal/resources/kubespray/project/roles/container-engine/nerdctl/handlers/main.yml diff --git a/kubespray/project/roles/container-engine/nerdctl/tasks/main.yml b/internal/resources/kubespray/project/roles/container-engine/nerdctl/tasks/main.yml similarity index 100% rename from kubespray/project/roles/container-engine/nerdctl/tasks/main.yml rename to internal/resources/kubespray/project/roles/container-engine/nerdctl/tasks/main.yml diff --git a/kubespray/project/roles/container-engine/nerdctl/templates/nerdctl.toml.j2 b/internal/resources/kubespray/project/roles/container-engine/nerdctl/templates/nerdctl.toml.j2 similarity index 100% rename from kubespray/project/roles/container-engine/nerdctl/templates/nerdctl.toml.j2 rename to internal/resources/kubespray/project/roles/container-engine/nerdctl/templates/nerdctl.toml.j2 diff --git a/kubespray/project/roles/container-engine/runc/defaults/main.yml b/internal/resources/kubespray/project/roles/container-engine/runc/defaults/main.yml similarity index 100% rename from kubespray/project/roles/container-engine/runc/defaults/main.yml rename to internal/resources/kubespray/project/roles/container-engine/runc/defaults/main.yml diff --git a/kubespray/project/roles/container-engine/runc/tasks/main.yml b/internal/resources/kubespray/project/roles/container-engine/runc/tasks/main.yml similarity index 100% rename from kubespray/project/roles/container-engine/runc/tasks/main.yml rename to internal/resources/kubespray/project/roles/container-engine/runc/tasks/main.yml diff --git a/kubespray/project/roles/container-engine/skopeo/tasks/main.yml b/internal/resources/kubespray/project/roles/container-engine/skopeo/tasks/main.yml similarity index 100% rename from kubespray/project/roles/container-engine/skopeo/tasks/main.yml rename to internal/resources/kubespray/project/roles/container-engine/skopeo/tasks/main.yml diff --git a/kubespray/project/roles/container-engine/validate-container-engine/tasks/main.yml b/internal/resources/kubespray/project/roles/container-engine/validate-container-engine/tasks/main.yml similarity index 100% rename from kubespray/project/roles/container-engine/validate-container-engine/tasks/main.yml rename to internal/resources/kubespray/project/roles/container-engine/validate-container-engine/tasks/main.yml diff --git a/kubespray/project/roles/container-engine/youki/defaults/main.yml b/internal/resources/kubespray/project/roles/container-engine/youki/defaults/main.yml similarity index 100% rename from kubespray/project/roles/container-engine/youki/defaults/main.yml rename to internal/resources/kubespray/project/roles/container-engine/youki/defaults/main.yml diff --git a/kubespray/project/roles/container-engine/youki/molecule/default/converge.yml b/internal/resources/kubespray/project/roles/container-engine/youki/molecule/default/converge.yml similarity index 100% rename from kubespray/project/roles/container-engine/youki/molecule/default/converge.yml rename to internal/resources/kubespray/project/roles/container-engine/youki/molecule/default/converge.yml diff --git a/kubespray/project/roles/container-engine/youki/molecule/default/files/10-mynet.conf b/internal/resources/kubespray/project/roles/container-engine/youki/molecule/default/files/10-mynet.conf similarity index 100% rename from kubespray/project/roles/container-engine/youki/molecule/default/files/10-mynet.conf rename to internal/resources/kubespray/project/roles/container-engine/youki/molecule/default/files/10-mynet.conf diff --git a/kubespray/project/roles/container-engine/youki/molecule/default/files/container.json b/internal/resources/kubespray/project/roles/container-engine/youki/molecule/default/files/container.json similarity index 100% rename from kubespray/project/roles/container-engine/youki/molecule/default/files/container.json rename to internal/resources/kubespray/project/roles/container-engine/youki/molecule/default/files/container.json diff --git a/kubespray/project/roles/container-engine/youki/molecule/default/files/sandbox.json b/internal/resources/kubespray/project/roles/container-engine/youki/molecule/default/files/sandbox.json similarity index 100% rename from kubespray/project/roles/container-engine/youki/molecule/default/files/sandbox.json rename to internal/resources/kubespray/project/roles/container-engine/youki/molecule/default/files/sandbox.json diff --git a/kubespray/project/roles/container-engine/youki/molecule/default/molecule.yml b/internal/resources/kubespray/project/roles/container-engine/youki/molecule/default/molecule.yml similarity index 100% rename from kubespray/project/roles/container-engine/youki/molecule/default/molecule.yml rename to internal/resources/kubespray/project/roles/container-engine/youki/molecule/default/molecule.yml diff --git a/kubespray/project/roles/container-engine/youki/molecule/default/prepare.yml b/internal/resources/kubespray/project/roles/container-engine/youki/molecule/default/prepare.yml similarity index 100% rename from kubespray/project/roles/container-engine/youki/molecule/default/prepare.yml rename to internal/resources/kubespray/project/roles/container-engine/youki/molecule/default/prepare.yml diff --git a/kubespray/project/roles/container-engine/youki/molecule/default/tests/test_default.py b/internal/resources/kubespray/project/roles/container-engine/youki/molecule/default/tests/test_default.py similarity index 100% rename from kubespray/project/roles/container-engine/youki/molecule/default/tests/test_default.py rename to internal/resources/kubespray/project/roles/container-engine/youki/molecule/default/tests/test_default.py diff --git a/kubespray/project/roles/container-engine/youki/tasks/main.yml b/internal/resources/kubespray/project/roles/container-engine/youki/tasks/main.yml similarity index 100% rename from kubespray/project/roles/container-engine/youki/tasks/main.yml rename to internal/resources/kubespray/project/roles/container-engine/youki/tasks/main.yml diff --git a/kubespray/project/roles/download/meta/main.yml b/internal/resources/kubespray/project/roles/download/meta/main.yml similarity index 100% rename from kubespray/project/roles/download/meta/main.yml rename to internal/resources/kubespray/project/roles/download/meta/main.yml diff --git a/kubespray/project/roles/download/tasks/check_pull_required.yml b/internal/resources/kubespray/project/roles/download/tasks/check_pull_required.yml similarity index 100% rename from kubespray/project/roles/download/tasks/check_pull_required.yml rename to internal/resources/kubespray/project/roles/download/tasks/check_pull_required.yml diff --git a/kubespray/project/roles/download/tasks/download_container.yml b/internal/resources/kubespray/project/roles/download/tasks/download_container.yml similarity index 100% rename from kubespray/project/roles/download/tasks/download_container.yml rename to internal/resources/kubespray/project/roles/download/tasks/download_container.yml diff --git a/kubespray/project/roles/download/tasks/download_file.yml b/internal/resources/kubespray/project/roles/download/tasks/download_file.yml similarity index 100% rename from kubespray/project/roles/download/tasks/download_file.yml rename to internal/resources/kubespray/project/roles/download/tasks/download_file.yml diff --git a/kubespray/project/roles/download/tasks/extract_file.yml b/internal/resources/kubespray/project/roles/download/tasks/extract_file.yml similarity index 100% rename from kubespray/project/roles/download/tasks/extract_file.yml rename to internal/resources/kubespray/project/roles/download/tasks/extract_file.yml diff --git a/kubespray/project/roles/download/tasks/main.yml b/internal/resources/kubespray/project/roles/download/tasks/main.yml similarity index 100% rename from kubespray/project/roles/download/tasks/main.yml rename to internal/resources/kubespray/project/roles/download/tasks/main.yml diff --git a/kubespray/project/roles/download/tasks/prep_download.yml b/internal/resources/kubespray/project/roles/download/tasks/prep_download.yml similarity index 100% rename from kubespray/project/roles/download/tasks/prep_download.yml rename to internal/resources/kubespray/project/roles/download/tasks/prep_download.yml diff --git a/kubespray/project/roles/download/tasks/prep_kubeadm_images.yml b/internal/resources/kubespray/project/roles/download/tasks/prep_kubeadm_images.yml similarity index 100% rename from kubespray/project/roles/download/tasks/prep_kubeadm_images.yml rename to internal/resources/kubespray/project/roles/download/tasks/prep_kubeadm_images.yml diff --git a/kubespray/project/roles/download/tasks/set_container_facts.yml b/internal/resources/kubespray/project/roles/download/tasks/set_container_facts.yml similarity index 100% rename from kubespray/project/roles/download/tasks/set_container_facts.yml rename to internal/resources/kubespray/project/roles/download/tasks/set_container_facts.yml diff --git a/kubespray/project/roles/download/templates/kubeadm-images.yaml.j2 b/internal/resources/kubespray/project/roles/download/templates/kubeadm-images.yaml.j2 similarity index 100% rename from kubespray/project/roles/download/templates/kubeadm-images.yaml.j2 rename to internal/resources/kubespray/project/roles/download/templates/kubeadm-images.yaml.j2 diff --git a/kubespray/project/roles/etcd/defaults/main.yml b/internal/resources/kubespray/project/roles/etcd/defaults/main.yml similarity index 100% rename from kubespray/project/roles/etcd/defaults/main.yml rename to internal/resources/kubespray/project/roles/etcd/defaults/main.yml diff --git a/kubespray/project/roles/etcd/handlers/backup.yml b/internal/resources/kubespray/project/roles/etcd/handlers/backup.yml similarity index 100% rename from kubespray/project/roles/etcd/handlers/backup.yml rename to internal/resources/kubespray/project/roles/etcd/handlers/backup.yml diff --git a/kubespray/project/roles/etcd/handlers/backup_cleanup.yml b/internal/resources/kubespray/project/roles/etcd/handlers/backup_cleanup.yml similarity index 100% rename from kubespray/project/roles/etcd/handlers/backup_cleanup.yml rename to internal/resources/kubespray/project/roles/etcd/handlers/backup_cleanup.yml diff --git a/kubespray/project/roles/etcd/handlers/main.yml b/internal/resources/kubespray/project/roles/etcd/handlers/main.yml similarity index 100% rename from kubespray/project/roles/etcd/handlers/main.yml rename to internal/resources/kubespray/project/roles/etcd/handlers/main.yml diff --git a/kubespray/project/roles/etcd/meta/main.yml b/internal/resources/kubespray/project/roles/etcd/meta/main.yml similarity index 100% rename from kubespray/project/roles/etcd/meta/main.yml rename to internal/resources/kubespray/project/roles/etcd/meta/main.yml diff --git a/kubespray/project/roles/etcd/tasks/check_certs.yml b/internal/resources/kubespray/project/roles/etcd/tasks/check_certs.yml similarity index 100% rename from kubespray/project/roles/etcd/tasks/check_certs.yml rename to internal/resources/kubespray/project/roles/etcd/tasks/check_certs.yml diff --git a/kubespray/project/roles/etcd/tasks/configure.yml b/internal/resources/kubespray/project/roles/etcd/tasks/configure.yml similarity index 100% rename from kubespray/project/roles/etcd/tasks/configure.yml rename to internal/resources/kubespray/project/roles/etcd/tasks/configure.yml diff --git a/kubespray/project/roles/etcd/tasks/gen_certs_script.yml b/internal/resources/kubespray/project/roles/etcd/tasks/gen_certs_script.yml similarity index 100% rename from kubespray/project/roles/etcd/tasks/gen_certs_script.yml rename to internal/resources/kubespray/project/roles/etcd/tasks/gen_certs_script.yml diff --git a/kubespray/project/roles/etcd/tasks/gen_nodes_certs_script.yml b/internal/resources/kubespray/project/roles/etcd/tasks/gen_nodes_certs_script.yml similarity index 100% rename from kubespray/project/roles/etcd/tasks/gen_nodes_certs_script.yml rename to internal/resources/kubespray/project/roles/etcd/tasks/gen_nodes_certs_script.yml diff --git a/kubespray/project/roles/etcd/tasks/install_docker.yml b/internal/resources/kubespray/project/roles/etcd/tasks/install_docker.yml similarity index 100% rename from kubespray/project/roles/etcd/tasks/install_docker.yml rename to internal/resources/kubespray/project/roles/etcd/tasks/install_docker.yml diff --git a/kubespray/project/roles/etcd/tasks/install_host.yml b/internal/resources/kubespray/project/roles/etcd/tasks/install_host.yml similarity index 100% rename from kubespray/project/roles/etcd/tasks/install_host.yml rename to internal/resources/kubespray/project/roles/etcd/tasks/install_host.yml diff --git a/kubespray/project/roles/etcd/tasks/join_etcd-events_member.yml b/internal/resources/kubespray/project/roles/etcd/tasks/join_etcd-events_member.yml similarity index 100% rename from kubespray/project/roles/etcd/tasks/join_etcd-events_member.yml rename to internal/resources/kubespray/project/roles/etcd/tasks/join_etcd-events_member.yml diff --git a/kubespray/project/roles/etcd/tasks/join_etcd_member.yml b/internal/resources/kubespray/project/roles/etcd/tasks/join_etcd_member.yml similarity index 100% rename from kubespray/project/roles/etcd/tasks/join_etcd_member.yml rename to internal/resources/kubespray/project/roles/etcd/tasks/join_etcd_member.yml diff --git a/kubespray/project/roles/etcd/tasks/main.yml b/internal/resources/kubespray/project/roles/etcd/tasks/main.yml similarity index 100% rename from kubespray/project/roles/etcd/tasks/main.yml rename to internal/resources/kubespray/project/roles/etcd/tasks/main.yml diff --git a/kubespray/project/roles/etcd/tasks/refresh_config.yml b/internal/resources/kubespray/project/roles/etcd/tasks/refresh_config.yml similarity index 100% rename from kubespray/project/roles/etcd/tasks/refresh_config.yml rename to internal/resources/kubespray/project/roles/etcd/tasks/refresh_config.yml diff --git a/kubespray/project/roles/etcd/tasks/upd_ca_trust.yml b/internal/resources/kubespray/project/roles/etcd/tasks/upd_ca_trust.yml similarity index 100% rename from kubespray/project/roles/etcd/tasks/upd_ca_trust.yml rename to internal/resources/kubespray/project/roles/etcd/tasks/upd_ca_trust.yml diff --git a/kubespray/project/roles/etcd/templates/etcd-docker.service.j2 b/internal/resources/kubespray/project/roles/etcd/templates/etcd-docker.service.j2 similarity index 100% rename from kubespray/project/roles/etcd/templates/etcd-docker.service.j2 rename to internal/resources/kubespray/project/roles/etcd/templates/etcd-docker.service.j2 diff --git a/kubespray/project/roles/etcd/templates/etcd-events-docker.service.j2 b/internal/resources/kubespray/project/roles/etcd/templates/etcd-events-docker.service.j2 similarity index 100% rename from kubespray/project/roles/etcd/templates/etcd-events-docker.service.j2 rename to internal/resources/kubespray/project/roles/etcd/templates/etcd-events-docker.service.j2 diff --git a/kubespray/project/roles/etcd/templates/etcd-events-host.service.j2 b/internal/resources/kubespray/project/roles/etcd/templates/etcd-events-host.service.j2 similarity index 100% rename from kubespray/project/roles/etcd/templates/etcd-events-host.service.j2 rename to internal/resources/kubespray/project/roles/etcd/templates/etcd-events-host.service.j2 diff --git a/kubespray/project/roles/etcd/templates/etcd-events.env.j2 b/internal/resources/kubespray/project/roles/etcd/templates/etcd-events.env.j2 similarity index 100% rename from kubespray/project/roles/etcd/templates/etcd-events.env.j2 rename to internal/resources/kubespray/project/roles/etcd/templates/etcd-events.env.j2 diff --git a/kubespray/project/roles/etcd/templates/etcd-events.j2 b/internal/resources/kubespray/project/roles/etcd/templates/etcd-events.j2 similarity index 100% rename from kubespray/project/roles/etcd/templates/etcd-events.j2 rename to internal/resources/kubespray/project/roles/etcd/templates/etcd-events.j2 diff --git a/kubespray/project/roles/etcd/templates/etcd-host.service.j2 b/internal/resources/kubespray/project/roles/etcd/templates/etcd-host.service.j2 similarity index 100% rename from kubespray/project/roles/etcd/templates/etcd-host.service.j2 rename to internal/resources/kubespray/project/roles/etcd/templates/etcd-host.service.j2 diff --git a/kubespray/project/roles/etcd/templates/etcd.env.j2 b/internal/resources/kubespray/project/roles/etcd/templates/etcd.env.j2 similarity index 100% rename from kubespray/project/roles/etcd/templates/etcd.env.j2 rename to internal/resources/kubespray/project/roles/etcd/templates/etcd.env.j2 diff --git a/kubespray/project/roles/etcd/templates/etcd.j2 b/internal/resources/kubespray/project/roles/etcd/templates/etcd.j2 similarity index 100% rename from kubespray/project/roles/etcd/templates/etcd.j2 rename to internal/resources/kubespray/project/roles/etcd/templates/etcd.j2 diff --git a/kubespray/project/roles/etcd/templates/make-ssl-etcd.sh.j2 b/internal/resources/kubespray/project/roles/etcd/templates/make-ssl-etcd.sh.j2 similarity index 100% rename from kubespray/project/roles/etcd/templates/make-ssl-etcd.sh.j2 rename to internal/resources/kubespray/project/roles/etcd/templates/make-ssl-etcd.sh.j2 diff --git a/kubespray/project/roles/etcd/templates/openssl.conf.j2 b/internal/resources/kubespray/project/roles/etcd/templates/openssl.conf.j2 similarity index 100% rename from kubespray/project/roles/etcd/templates/openssl.conf.j2 rename to internal/resources/kubespray/project/roles/etcd/templates/openssl.conf.j2 diff --git a/kubespray/project/roles/etcd/vars/main.yml b/internal/resources/kubespray/project/roles/etcd/vars/main.yml similarity index 100% rename from kubespray/project/roles/etcd/vars/main.yml rename to internal/resources/kubespray/project/roles/etcd/vars/main.yml diff --git a/kubespray/project/roles/etcdctl_etcdutl/tasks/main.yml b/internal/resources/kubespray/project/roles/etcdctl_etcdutl/tasks/main.yml similarity index 100% rename from kubespray/project/roles/etcdctl_etcdutl/tasks/main.yml rename to internal/resources/kubespray/project/roles/etcdctl_etcdutl/tasks/main.yml diff --git a/kubespray/project/roles/etcdctl_etcdutl/templates/etcdctl.sh.j2 b/internal/resources/kubespray/project/roles/etcdctl_etcdutl/templates/etcdctl.sh.j2 similarity index 100% rename from kubespray/project/roles/etcdctl_etcdutl/templates/etcdctl.sh.j2 rename to internal/resources/kubespray/project/roles/etcdctl_etcdutl/templates/etcdctl.sh.j2 diff --git a/kubespray/project/roles/helm-apps/README.md b/internal/resources/kubespray/project/roles/helm-apps/README.md similarity index 100% rename from kubespray/project/roles/helm-apps/README.md rename to internal/resources/kubespray/project/roles/helm-apps/README.md diff --git a/kubespray/project/roles/helm-apps/meta/argument_specs.yml b/internal/resources/kubespray/project/roles/helm-apps/meta/argument_specs.yml similarity index 100% rename from kubespray/project/roles/helm-apps/meta/argument_specs.yml rename to internal/resources/kubespray/project/roles/helm-apps/meta/argument_specs.yml diff --git a/kubespray/project/roles/helm-apps/meta/main.yml b/internal/resources/kubespray/project/roles/helm-apps/meta/main.yml similarity index 100% rename from kubespray/project/roles/helm-apps/meta/main.yml rename to internal/resources/kubespray/project/roles/helm-apps/meta/main.yml diff --git a/kubespray/project/roles/helm-apps/tasks/main.yml b/internal/resources/kubespray/project/roles/helm-apps/tasks/main.yml similarity index 100% rename from kubespray/project/roles/helm-apps/tasks/main.yml rename to internal/resources/kubespray/project/roles/helm-apps/tasks/main.yml diff --git a/kubespray/project/roles/helm-apps/vars/main.yml b/internal/resources/kubespray/project/roles/helm-apps/vars/main.yml similarity index 100% rename from kubespray/project/roles/helm-apps/vars/main.yml rename to internal/resources/kubespray/project/roles/helm-apps/vars/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/ansible/defaults/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/ansible/defaults/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ansible/defaults/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/ansible/defaults/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/ansible/tasks/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/ansible/tasks/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ansible/tasks/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/ansible/tasks/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/ansible/templates/coredns-clusterrole.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/ansible/templates/coredns-clusterrole.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ansible/templates/coredns-clusterrole.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/ansible/templates/coredns-clusterrole.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/ansible/templates/coredns-clusterrolebinding.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/ansible/templates/coredns-clusterrolebinding.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ansible/templates/coredns-clusterrolebinding.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/ansible/templates/coredns-clusterrolebinding.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/ansible/templates/coredns-config.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/ansible/templates/coredns-config.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ansible/templates/coredns-config.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/ansible/templates/coredns-config.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/ansible/templates/coredns-deployment.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/ansible/templates/coredns-deployment.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ansible/templates/coredns-deployment.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/ansible/templates/coredns-deployment.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/ansible/templates/coredns-poddisruptionbudget.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/ansible/templates/coredns-poddisruptionbudget.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ansible/templates/coredns-poddisruptionbudget.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/ansible/templates/coredns-poddisruptionbudget.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/ansible/templates/coredns-sa.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/ansible/templates/coredns-sa.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ansible/templates/coredns-sa.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/ansible/templates/coredns-sa.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/ansible/templates/coredns-svc.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/ansible/templates/coredns-svc.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ansible/templates/coredns-svc.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/ansible/templates/coredns-svc.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/ansible/templates/dashboard.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/ansible/templates/dashboard.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ansible/templates/dashboard.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/ansible/templates/dashboard.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/ansible/templates/dns-autoscaler-clusterrole.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/ansible/templates/dns-autoscaler-clusterrole.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ansible/templates/dns-autoscaler-clusterrole.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/ansible/templates/dns-autoscaler-clusterrole.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/ansible/templates/dns-autoscaler-clusterrolebinding.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/ansible/templates/dns-autoscaler-clusterrolebinding.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ansible/templates/dns-autoscaler-clusterrolebinding.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/ansible/templates/dns-autoscaler-clusterrolebinding.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/ansible/templates/dns-autoscaler-sa.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/ansible/templates/dns-autoscaler-sa.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ansible/templates/dns-autoscaler-sa.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/ansible/templates/dns-autoscaler-sa.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/ansible/templates/dns-autoscaler.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/ansible/templates/dns-autoscaler.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ansible/templates/dns-autoscaler.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/ansible/templates/dns-autoscaler.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/ansible/templates/etcd_metrics-endpoints.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/ansible/templates/etcd_metrics-endpoints.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ansible/templates/etcd_metrics-endpoints.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/ansible/templates/etcd_metrics-endpoints.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/ansible/templates/etcd_metrics-service.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/ansible/templates/etcd_metrics-service.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ansible/templates/etcd_metrics-service.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/ansible/templates/etcd_metrics-service.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/ansible/templates/netchecker-agent-ds.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/ansible/templates/netchecker-agent-ds.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ansible/templates/netchecker-agent-ds.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/ansible/templates/netchecker-agent-ds.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/ansible/templates/netchecker-agent-hostnet-ds.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/ansible/templates/netchecker-agent-hostnet-ds.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ansible/templates/netchecker-agent-hostnet-ds.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/ansible/templates/netchecker-agent-hostnet-ds.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/ansible/templates/netchecker-agent-sa.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/ansible/templates/netchecker-agent-sa.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ansible/templates/netchecker-agent-sa.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/ansible/templates/netchecker-agent-sa.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/ansible/templates/netchecker-ns.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/ansible/templates/netchecker-ns.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ansible/templates/netchecker-ns.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/ansible/templates/netchecker-ns.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/ansible/templates/netchecker-server-clusterrole.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/ansible/templates/netchecker-server-clusterrole.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ansible/templates/netchecker-server-clusterrole.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/ansible/templates/netchecker-server-clusterrole.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/ansible/templates/netchecker-server-clusterrolebinding.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/ansible/templates/netchecker-server-clusterrolebinding.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ansible/templates/netchecker-server-clusterrolebinding.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/ansible/templates/netchecker-server-clusterrolebinding.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/ansible/templates/netchecker-server-deployment.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/ansible/templates/netchecker-server-deployment.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ansible/templates/netchecker-server-deployment.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/ansible/templates/netchecker-server-deployment.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/ansible/templates/netchecker-server-sa.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/ansible/templates/netchecker-server-sa.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ansible/templates/netchecker-server-sa.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/ansible/templates/netchecker-server-sa.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/ansible/templates/netchecker-server-svc.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/ansible/templates/netchecker-server-svc.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ansible/templates/netchecker-server-svc.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/ansible/templates/netchecker-server-svc.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/ansible/templates/nodelocaldns-config.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/ansible/templates/nodelocaldns-config.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ansible/templates/nodelocaldns-config.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/ansible/templates/nodelocaldns-config.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/ansible/templates/nodelocaldns-daemonset.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/ansible/templates/nodelocaldns-daemonset.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ansible/templates/nodelocaldns-daemonset.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/ansible/templates/nodelocaldns-daemonset.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/ansible/templates/nodelocaldns-sa.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/ansible/templates/nodelocaldns-sa.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ansible/templates/nodelocaldns-sa.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/ansible/templates/nodelocaldns-sa.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/ansible/templates/nodelocaldns-second-daemonset.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/ansible/templates/nodelocaldns-second-daemonset.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ansible/templates/nodelocaldns-second-daemonset.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/ansible/templates/nodelocaldns-second-daemonset.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/ansible/vars/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/ansible/vars/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ansible/vars/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/ansible/vars/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/argocd/defaults/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/argocd/defaults/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/argocd/defaults/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/argocd/defaults/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/argocd/tasks/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/argocd/tasks/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/argocd/tasks/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/argocd/tasks/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/argocd/templates/argocd-namespace.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/argocd/templates/argocd-namespace.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/argocd/templates/argocd-namespace.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/argocd/templates/argocd-namespace.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/cluster_roles/files/k8s-cluster-critical-pc.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/cluster_roles/files/k8s-cluster-critical-pc.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/cluster_roles/files/k8s-cluster-critical-pc.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/cluster_roles/files/k8s-cluster-critical-pc.yml diff --git a/kubespray/project/roles/kubernetes-apps/cluster_roles/tasks/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/cluster_roles/tasks/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/cluster_roles/tasks/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/cluster_roles/tasks/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/cluster_roles/templates/namespace.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/cluster_roles/templates/namespace.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/cluster_roles/templates/namespace.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/cluster_roles/templates/namespace.j2 diff --git a/kubespray/project/roles/kubernetes-apps/cluster_roles/templates/node-crb.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/cluster_roles/templates/node-crb.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/cluster_roles/templates/node-crb.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/cluster_roles/templates/node-crb.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/cluster_roles/templates/vsphere-rbac.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/cluster_roles/templates/vsphere-rbac.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/cluster_roles/templates/vsphere-rbac.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/cluster_roles/templates/vsphere-rbac.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/container_engine_accelerator/meta/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/container_engine_accelerator/meta/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/container_engine_accelerator/meta/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/container_engine_accelerator/meta/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/container_engine_accelerator/nvidia_gpu/defaults/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/container_engine_accelerator/nvidia_gpu/defaults/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/container_engine_accelerator/nvidia_gpu/defaults/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/container_engine_accelerator/nvidia_gpu/defaults/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/container_engine_accelerator/nvidia_gpu/tasks/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/container_engine_accelerator/nvidia_gpu/tasks/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/container_engine_accelerator/nvidia_gpu/tasks/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/container_engine_accelerator/nvidia_gpu/tasks/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/container_engine_accelerator/nvidia_gpu/templates/k8s-device-plugin-nvidia-daemonset.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/container_engine_accelerator/nvidia_gpu/templates/k8s-device-plugin-nvidia-daemonset.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/container_engine_accelerator/nvidia_gpu/templates/k8s-device-plugin-nvidia-daemonset.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/container_engine_accelerator/nvidia_gpu/templates/k8s-device-plugin-nvidia-daemonset.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/container_engine_accelerator/nvidia_gpu/templates/nvidia-driver-install-daemonset.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/container_engine_accelerator/nvidia_gpu/templates/nvidia-driver-install-daemonset.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/container_engine_accelerator/nvidia_gpu/templates/nvidia-driver-install-daemonset.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/container_engine_accelerator/nvidia_gpu/templates/nvidia-driver-install-daemonset.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/container_engine_accelerator/nvidia_gpu/vars/ubuntu-16.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/container_engine_accelerator/nvidia_gpu/vars/ubuntu-16.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/container_engine_accelerator/nvidia_gpu/vars/ubuntu-16.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/container_engine_accelerator/nvidia_gpu/vars/ubuntu-16.yml diff --git a/kubespray/project/roles/kubernetes-apps/container_engine_accelerator/nvidia_gpu/vars/ubuntu-18.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/container_engine_accelerator/nvidia_gpu/vars/ubuntu-18.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/container_engine_accelerator/nvidia_gpu/vars/ubuntu-18.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/container_engine_accelerator/nvidia_gpu/vars/ubuntu-18.yml diff --git a/kubespray/project/roles/kubernetes-apps/container_runtimes/crun/tasks/main.yaml b/internal/resources/kubespray/project/roles/kubernetes-apps/container_runtimes/crun/tasks/main.yaml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/container_runtimes/crun/tasks/main.yaml rename to internal/resources/kubespray/project/roles/kubernetes-apps/container_runtimes/crun/tasks/main.yaml diff --git a/kubespray/project/roles/kubernetes-apps/container_runtimes/crun/templates/runtimeclass-crun.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/container_runtimes/crun/templates/runtimeclass-crun.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/container_runtimes/crun/templates/runtimeclass-crun.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/container_runtimes/crun/templates/runtimeclass-crun.yml diff --git a/kubespray/project/roles/kubernetes-apps/container_runtimes/gvisor/tasks/main.yaml b/internal/resources/kubespray/project/roles/kubernetes-apps/container_runtimes/gvisor/tasks/main.yaml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/container_runtimes/gvisor/tasks/main.yaml rename to internal/resources/kubespray/project/roles/kubernetes-apps/container_runtimes/gvisor/tasks/main.yaml diff --git a/kubespray/project/roles/kubernetes-apps/container_runtimes/gvisor/templates/runtimeclass-gvisor.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/container_runtimes/gvisor/templates/runtimeclass-gvisor.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/container_runtimes/gvisor/templates/runtimeclass-gvisor.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/container_runtimes/gvisor/templates/runtimeclass-gvisor.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/container_runtimes/kata_containers/defaults/main.yaml b/internal/resources/kubespray/project/roles/kubernetes-apps/container_runtimes/kata_containers/defaults/main.yaml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/container_runtimes/kata_containers/defaults/main.yaml rename to internal/resources/kubespray/project/roles/kubernetes-apps/container_runtimes/kata_containers/defaults/main.yaml diff --git a/kubespray/project/roles/kubernetes-apps/container_runtimes/kata_containers/tasks/main.yaml b/internal/resources/kubespray/project/roles/kubernetes-apps/container_runtimes/kata_containers/tasks/main.yaml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/container_runtimes/kata_containers/tasks/main.yaml rename to internal/resources/kubespray/project/roles/kubernetes-apps/container_runtimes/kata_containers/tasks/main.yaml diff --git a/kubespray/project/roles/kubernetes-apps/container_runtimes/kata_containers/templates/runtimeclass-kata-qemu.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/container_runtimes/kata_containers/templates/runtimeclass-kata-qemu.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/container_runtimes/kata_containers/templates/runtimeclass-kata-qemu.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/container_runtimes/kata_containers/templates/runtimeclass-kata-qemu.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/container_runtimes/meta/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/container_runtimes/meta/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/container_runtimes/meta/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/container_runtimes/meta/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/container_runtimes/youki/tasks/main.yaml b/internal/resources/kubespray/project/roles/kubernetes-apps/container_runtimes/youki/tasks/main.yaml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/container_runtimes/youki/tasks/main.yaml rename to internal/resources/kubespray/project/roles/kubernetes-apps/container_runtimes/youki/tasks/main.yaml diff --git a/kubespray/project/roles/kubernetes-apps/container_runtimes/youki/templates/runtimeclass-youki.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/container_runtimes/youki/templates/runtimeclass-youki.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/container_runtimes/youki/templates/runtimeclass-youki.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/container_runtimes/youki/templates/runtimeclass-youki.yml diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/aws_ebs/defaults/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/aws_ebs/defaults/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/aws_ebs/defaults/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/aws_ebs/defaults/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/aws_ebs/tasks/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/aws_ebs/tasks/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/aws_ebs/tasks/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/aws_ebs/tasks/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/aws_ebs/templates/aws-ebs-csi-controllerservice-rbac.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/aws_ebs/templates/aws-ebs-csi-controllerservice-rbac.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/aws_ebs/templates/aws-ebs-csi-controllerservice-rbac.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/aws_ebs/templates/aws-ebs-csi-controllerservice-rbac.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/aws_ebs/templates/aws-ebs-csi-controllerservice.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/aws_ebs/templates/aws-ebs-csi-controllerservice.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/aws_ebs/templates/aws-ebs-csi-controllerservice.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/aws_ebs/templates/aws-ebs-csi-controllerservice.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/aws_ebs/templates/aws-ebs-csi-driver.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/aws_ebs/templates/aws-ebs-csi-driver.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/aws_ebs/templates/aws-ebs-csi-driver.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/aws_ebs/templates/aws-ebs-csi-driver.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/aws_ebs/templates/aws-ebs-csi-nodeservice.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/aws_ebs/templates/aws-ebs-csi-nodeservice.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/aws_ebs/templates/aws-ebs-csi-nodeservice.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/aws_ebs/templates/aws-ebs-csi-nodeservice.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/azuredisk/defaults/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/azuredisk/defaults/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/azuredisk/defaults/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/azuredisk/defaults/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/azuredisk/tasks/azure-credential-check.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/azuredisk/tasks/azure-credential-check.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/azuredisk/tasks/azure-credential-check.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/azuredisk/tasks/azure-credential-check.yml diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/azuredisk/tasks/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/azuredisk/tasks/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/azuredisk/tasks/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/azuredisk/tasks/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/azuredisk/templates/azure-csi-azuredisk-controller-rbac.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/azuredisk/templates/azure-csi-azuredisk-controller-rbac.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/azuredisk/templates/azure-csi-azuredisk-controller-rbac.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/azuredisk/templates/azure-csi-azuredisk-controller-rbac.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/azuredisk/templates/azure-csi-azuredisk-controller.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/azuredisk/templates/azure-csi-azuredisk-controller.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/azuredisk/templates/azure-csi-azuredisk-controller.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/azuredisk/templates/azure-csi-azuredisk-controller.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/azuredisk/templates/azure-csi-azuredisk-driver.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/azuredisk/templates/azure-csi-azuredisk-driver.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/azuredisk/templates/azure-csi-azuredisk-driver.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/azuredisk/templates/azure-csi-azuredisk-driver.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/azuredisk/templates/azure-csi-azuredisk-node-rbac.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/azuredisk/templates/azure-csi-azuredisk-node-rbac.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/azuredisk/templates/azure-csi-azuredisk-node-rbac.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/azuredisk/templates/azure-csi-azuredisk-node-rbac.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/azuredisk/templates/azure-csi-azuredisk-node.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/azuredisk/templates/azure-csi-azuredisk-node.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/azuredisk/templates/azure-csi-azuredisk-node.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/azuredisk/templates/azure-csi-azuredisk-node.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/azuredisk/templates/azure-csi-cloud-config-secret.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/azuredisk/templates/azure-csi-cloud-config-secret.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/azuredisk/templates/azure-csi-cloud-config-secret.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/azuredisk/templates/azure-csi-cloud-config-secret.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/azuredisk/templates/azure-csi-cloud-config.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/azuredisk/templates/azure-csi-cloud-config.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/azuredisk/templates/azure-csi-cloud-config.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/azuredisk/templates/azure-csi-cloud-config.j2 diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/cinder/defaults/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/cinder/defaults/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/cinder/defaults/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/cinder/defaults/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/cinder/tasks/cinder-credential-check.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/cinder/tasks/cinder-credential-check.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/cinder/tasks/cinder-credential-check.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/cinder/tasks/cinder-credential-check.yml diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/cinder/tasks/cinder-write-cacert.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/cinder/tasks/cinder-write-cacert.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/cinder/tasks/cinder-write-cacert.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/cinder/tasks/cinder-write-cacert.yml diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/cinder/tasks/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/cinder/tasks/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/cinder/tasks/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/cinder/tasks/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/cinder/templates/cinder-csi-cloud-config-secret.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/cinder/templates/cinder-csi-cloud-config-secret.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/cinder/templates/cinder-csi-cloud-config-secret.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/cinder/templates/cinder-csi-cloud-config-secret.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/cinder/templates/cinder-csi-cloud-config.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/cinder/templates/cinder-csi-cloud-config.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/cinder/templates/cinder-csi-cloud-config.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/cinder/templates/cinder-csi-cloud-config.j2 diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/cinder/templates/cinder-csi-controllerplugin-rbac.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/cinder/templates/cinder-csi-controllerplugin-rbac.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/cinder/templates/cinder-csi-controllerplugin-rbac.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/cinder/templates/cinder-csi-controllerplugin-rbac.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/cinder/templates/cinder-csi-controllerplugin.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/cinder/templates/cinder-csi-controllerplugin.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/cinder/templates/cinder-csi-controllerplugin.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/cinder/templates/cinder-csi-controllerplugin.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/cinder/templates/cinder-csi-driver.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/cinder/templates/cinder-csi-driver.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/cinder/templates/cinder-csi-driver.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/cinder/templates/cinder-csi-driver.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/cinder/templates/cinder-csi-nodeplugin-rbac.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/cinder/templates/cinder-csi-nodeplugin-rbac.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/cinder/templates/cinder-csi-nodeplugin-rbac.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/cinder/templates/cinder-csi-nodeplugin-rbac.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/cinder/templates/cinder-csi-nodeplugin.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/cinder/templates/cinder-csi-nodeplugin.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/cinder/templates/cinder-csi-nodeplugin.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/cinder/templates/cinder-csi-nodeplugin.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/cinder/templates/cinder-csi-poddisruptionbudget.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/cinder/templates/cinder-csi-poddisruptionbudget.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/cinder/templates/cinder-csi-poddisruptionbudget.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/cinder/templates/cinder-csi-poddisruptionbudget.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/csi_crd/tasks/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/csi_crd/tasks/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/csi_crd/tasks/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/csi_crd/tasks/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/csi_crd/templates/volumesnapshotclasses.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/csi_crd/templates/volumesnapshotclasses.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/csi_crd/templates/volumesnapshotclasses.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/csi_crd/templates/volumesnapshotclasses.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/csi_crd/templates/volumesnapshotcontents.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/csi_crd/templates/volumesnapshotcontents.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/csi_crd/templates/volumesnapshotcontents.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/csi_crd/templates/volumesnapshotcontents.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/csi_crd/templates/volumesnapshots.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/csi_crd/templates/volumesnapshots.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/csi_crd/templates/volumesnapshots.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/csi_crd/templates/volumesnapshots.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/gcp_pd/defaults/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/gcp_pd/defaults/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/gcp_pd/defaults/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/gcp_pd/defaults/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/gcp_pd/tasks/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/gcp_pd/tasks/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/gcp_pd/tasks/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/gcp_pd/tasks/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/gcp_pd/templates/gcp-pd-csi-controller.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/gcp_pd/templates/gcp-pd-csi-controller.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/gcp_pd/templates/gcp-pd-csi-controller.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/gcp_pd/templates/gcp-pd-csi-controller.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/gcp_pd/templates/gcp-pd-csi-cred-secret.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/gcp_pd/templates/gcp-pd-csi-cred-secret.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/gcp_pd/templates/gcp-pd-csi-cred-secret.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/gcp_pd/templates/gcp-pd-csi-cred-secret.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/gcp_pd/templates/gcp-pd-csi-node.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/gcp_pd/templates/gcp-pd-csi-node.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/gcp_pd/templates/gcp-pd-csi-node.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/gcp_pd/templates/gcp-pd-csi-node.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/gcp_pd/templates/gcp-pd-csi-sc-regional.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/gcp_pd/templates/gcp-pd-csi-sc-regional.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/gcp_pd/templates/gcp-pd-csi-sc-regional.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/gcp_pd/templates/gcp-pd-csi-sc-regional.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/gcp_pd/templates/gcp-pd-csi-sc-zonal.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/gcp_pd/templates/gcp-pd-csi-sc-zonal.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/gcp_pd/templates/gcp-pd-csi-sc-zonal.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/gcp_pd/templates/gcp-pd-csi-sc-zonal.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/gcp_pd/templates/gcp-pd-csi-setup.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/gcp_pd/templates/gcp-pd-csi-setup.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/gcp_pd/templates/gcp-pd-csi-setup.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/gcp_pd/templates/gcp-pd-csi-setup.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/upcloud/defaults/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/upcloud/defaults/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/upcloud/defaults/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/upcloud/defaults/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/upcloud/tasks/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/upcloud/tasks/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/upcloud/tasks/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/upcloud/tasks/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/upcloud/templates/upcloud-csi-controller.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/upcloud/templates/upcloud-csi-controller.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/upcloud/templates/upcloud-csi-controller.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/upcloud/templates/upcloud-csi-controller.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/upcloud/templates/upcloud-csi-cred-secret.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/upcloud/templates/upcloud-csi-cred-secret.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/upcloud/templates/upcloud-csi-cred-secret.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/upcloud/templates/upcloud-csi-cred-secret.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/upcloud/templates/upcloud-csi-driver.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/upcloud/templates/upcloud-csi-driver.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/upcloud/templates/upcloud-csi-driver.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/upcloud/templates/upcloud-csi-driver.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/upcloud/templates/upcloud-csi-node.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/upcloud/templates/upcloud-csi-node.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/upcloud/templates/upcloud-csi-node.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/upcloud/templates/upcloud-csi-node.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/upcloud/templates/upcloud-csi-setup.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/upcloud/templates/upcloud-csi-setup.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/upcloud/templates/upcloud-csi-setup.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/upcloud/templates/upcloud-csi-setup.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/vsphere/defaults/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/vsphere/defaults/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/vsphere/defaults/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/vsphere/defaults/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/vsphere/tasks/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/vsphere/tasks/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/vsphere/tasks/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/vsphere/tasks/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/vsphere/tasks/vsphere-credentials-check.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/vsphere/tasks/vsphere-credentials-check.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/vsphere/tasks/vsphere-credentials-check.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/vsphere/tasks/vsphere-credentials-check.yml diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-cloud-config.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-cloud-config.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-cloud-config.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-cloud-config.j2 diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-controller-config.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-controller-config.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-controller-config.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-controller-config.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-controller-deployment.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-controller-deployment.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-controller-deployment.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-controller-deployment.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-controller-rbac.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-controller-rbac.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-controller-rbac.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-controller-rbac.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-controller-service.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-controller-service.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-controller-service.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-controller-service.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-driver.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-driver.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-driver.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-driver.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-namespace.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-namespace.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-namespace.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-namespace.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-node-rbac.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-node-rbac.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-node-rbac.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-node-rbac.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-node.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-node.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-node.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-node.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/defaults/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/defaults/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/defaults/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/defaults/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/external_cloud_controller/hcloud/defaults/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/hcloud/defaults/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_cloud_controller/hcloud/defaults/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/hcloud/defaults/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/external_cloud_controller/hcloud/tasks/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/hcloud/tasks/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_cloud_controller/hcloud/tasks/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/hcloud/tasks/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/external_cloud_controller/hcloud/templates/external-hcloud-cloud-controller-manager-ds-with-networks.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/hcloud/templates/external-hcloud-cloud-controller-manager-ds-with-networks.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_cloud_controller/hcloud/templates/external-hcloud-cloud-controller-manager-ds-with-networks.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/hcloud/templates/external-hcloud-cloud-controller-manager-ds-with-networks.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/external_cloud_controller/hcloud/templates/external-hcloud-cloud-controller-manager-ds.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/hcloud/templates/external-hcloud-cloud-controller-manager-ds.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_cloud_controller/hcloud/templates/external-hcloud-cloud-controller-manager-ds.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/hcloud/templates/external-hcloud-cloud-controller-manager-ds.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/external_cloud_controller/hcloud/templates/external-hcloud-cloud-role-bindings.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/hcloud/templates/external-hcloud-cloud-role-bindings.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_cloud_controller/hcloud/templates/external-hcloud-cloud-role-bindings.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/hcloud/templates/external-hcloud-cloud-role-bindings.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/external_cloud_controller/hcloud/templates/external-hcloud-cloud-secret.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/hcloud/templates/external-hcloud-cloud-secret.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_cloud_controller/hcloud/templates/external-hcloud-cloud-secret.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/hcloud/templates/external-hcloud-cloud-secret.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/external_cloud_controller/hcloud/templates/external-hcloud-cloud-service-account.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/hcloud/templates/external-hcloud-cloud-service-account.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_cloud_controller/hcloud/templates/external-hcloud-cloud-service-account.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/hcloud/templates/external-hcloud-cloud-service-account.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/external_cloud_controller/huaweicloud/defaults/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/huaweicloud/defaults/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_cloud_controller/huaweicloud/defaults/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/huaweicloud/defaults/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/external_cloud_controller/huaweicloud/tasks/huaweicloud-credential-check.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/huaweicloud/tasks/huaweicloud-credential-check.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_cloud_controller/huaweicloud/tasks/huaweicloud-credential-check.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/huaweicloud/tasks/huaweicloud-credential-check.yml diff --git a/kubespray/project/roles/kubernetes-apps/external_cloud_controller/huaweicloud/tasks/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/huaweicloud/tasks/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_cloud_controller/huaweicloud/tasks/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/huaweicloud/tasks/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/external_cloud_controller/huaweicloud/templates/external-huawei-cloud-config-secret.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/huaweicloud/templates/external-huawei-cloud-config-secret.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_cloud_controller/huaweicloud/templates/external-huawei-cloud-config-secret.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/huaweicloud/templates/external-huawei-cloud-config-secret.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/external_cloud_controller/huaweicloud/templates/external-huawei-cloud-config.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/huaweicloud/templates/external-huawei-cloud-config.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_cloud_controller/huaweicloud/templates/external-huawei-cloud-config.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/huaweicloud/templates/external-huawei-cloud-config.j2 diff --git a/kubespray/project/roles/kubernetes-apps/external_cloud_controller/huaweicloud/templates/external-huawei-cloud-controller-manager-ds.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/huaweicloud/templates/external-huawei-cloud-controller-manager-ds.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_cloud_controller/huaweicloud/templates/external-huawei-cloud-controller-manager-ds.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/huaweicloud/templates/external-huawei-cloud-controller-manager-ds.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/external_cloud_controller/huaweicloud/templates/external-huawei-cloud-controller-manager-role-bindings.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/huaweicloud/templates/external-huawei-cloud-controller-manager-role-bindings.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_cloud_controller/huaweicloud/templates/external-huawei-cloud-controller-manager-role-bindings.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/huaweicloud/templates/external-huawei-cloud-controller-manager-role-bindings.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/external_cloud_controller/huaweicloud/templates/external-huawei-cloud-controller-manager-roles.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/huaweicloud/templates/external-huawei-cloud-controller-manager-roles.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_cloud_controller/huaweicloud/templates/external-huawei-cloud-controller-manager-roles.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/huaweicloud/templates/external-huawei-cloud-controller-manager-roles.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/external_cloud_controller/meta/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/meta/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_cloud_controller/meta/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/meta/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/external_cloud_controller/oci/defaults/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/oci/defaults/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_cloud_controller/oci/defaults/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/oci/defaults/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/external_cloud_controller/oci/tasks/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/oci/tasks/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_cloud_controller/oci/tasks/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/oci/tasks/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/external_cloud_controller/oci/templates/external-oci-cloud-config-secret.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/oci/templates/external-oci-cloud-config-secret.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_cloud_controller/oci/templates/external-oci-cloud-config-secret.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/oci/templates/external-oci-cloud-config-secret.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/external_cloud_controller/oci/templates/external-oci-cloud-config.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/oci/templates/external-oci-cloud-config.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_cloud_controller/oci/templates/external-oci-cloud-config.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/oci/templates/external-oci-cloud-config.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/external_cloud_controller/oci/templates/external-oci-cloud-controller-manager-rbac.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/oci/templates/external-oci-cloud-controller-manager-rbac.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_cloud_controller/oci/templates/external-oci-cloud-controller-manager-rbac.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/oci/templates/external-oci-cloud-controller-manager-rbac.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/external_cloud_controller/oci/templates/external-oci-cloud-controller-manager.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/oci/templates/external-oci-cloud-controller-manager.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_cloud_controller/oci/templates/external-oci-cloud-controller-manager.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/oci/templates/external-oci-cloud-controller-manager.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/external_cloud_controller/openstack/defaults/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/openstack/defaults/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_cloud_controller/openstack/defaults/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/openstack/defaults/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/external_cloud_controller/openstack/tasks/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/openstack/tasks/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_cloud_controller/openstack/tasks/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/openstack/tasks/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/external_cloud_controller/openstack/tasks/openstack-credential-check.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/openstack/tasks/openstack-credential-check.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_cloud_controller/openstack/tasks/openstack-credential-check.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/openstack/tasks/openstack-credential-check.yml diff --git a/kubespray/project/roles/kubernetes-apps/external_cloud_controller/openstack/templates/external-openstack-cloud-config-secret.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/openstack/templates/external-openstack-cloud-config-secret.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_cloud_controller/openstack/templates/external-openstack-cloud-config-secret.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/openstack/templates/external-openstack-cloud-config-secret.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/external_cloud_controller/openstack/templates/external-openstack-cloud-config.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/openstack/templates/external-openstack-cloud-config.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_cloud_controller/openstack/templates/external-openstack-cloud-config.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/openstack/templates/external-openstack-cloud-config.j2 diff --git a/kubespray/project/roles/kubernetes-apps/external_cloud_controller/openstack/templates/external-openstack-cloud-controller-manager-ds.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/openstack/templates/external-openstack-cloud-controller-manager-ds.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_cloud_controller/openstack/templates/external-openstack-cloud-controller-manager-ds.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/openstack/templates/external-openstack-cloud-controller-manager-ds.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/external_cloud_controller/openstack/templates/external-openstack-cloud-controller-manager-role-bindings.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/openstack/templates/external-openstack-cloud-controller-manager-role-bindings.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_cloud_controller/openstack/templates/external-openstack-cloud-controller-manager-role-bindings.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/openstack/templates/external-openstack-cloud-controller-manager-role-bindings.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/external_cloud_controller/openstack/templates/external-openstack-cloud-controller-manager-roles.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/openstack/templates/external-openstack-cloud-controller-manager-roles.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_cloud_controller/openstack/templates/external-openstack-cloud-controller-manager-roles.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/openstack/templates/external-openstack-cloud-controller-manager-roles.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/external_cloud_controller/vsphere/defaults/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/vsphere/defaults/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_cloud_controller/vsphere/defaults/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/vsphere/defaults/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/external_cloud_controller/vsphere/tasks/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/vsphere/tasks/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_cloud_controller/vsphere/tasks/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/vsphere/tasks/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/external_cloud_controller/vsphere/tasks/vsphere-credentials-check.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/vsphere/tasks/vsphere-credentials-check.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_cloud_controller/vsphere/tasks/vsphere-credentials-check.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/vsphere/tasks/vsphere-credentials-check.yml diff --git a/kubespray/project/roles/kubernetes-apps/external_cloud_controller/vsphere/templates/external-vsphere-cloud-controller-manager-ds.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/vsphere/templates/external-vsphere-cloud-controller-manager-ds.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_cloud_controller/vsphere/templates/external-vsphere-cloud-controller-manager-ds.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/vsphere/templates/external-vsphere-cloud-controller-manager-ds.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/external_cloud_controller/vsphere/templates/external-vsphere-cloud-controller-manager-role-bindings.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/vsphere/templates/external-vsphere-cloud-controller-manager-role-bindings.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_cloud_controller/vsphere/templates/external-vsphere-cloud-controller-manager-role-bindings.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/vsphere/templates/external-vsphere-cloud-controller-manager-role-bindings.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/external_cloud_controller/vsphere/templates/external-vsphere-cloud-controller-manager-roles.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/vsphere/templates/external-vsphere-cloud-controller-manager-roles.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_cloud_controller/vsphere/templates/external-vsphere-cloud-controller-manager-roles.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/vsphere/templates/external-vsphere-cloud-controller-manager-roles.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/external_cloud_controller/vsphere/templates/external-vsphere-cpi-cloud-config-secret.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/vsphere/templates/external-vsphere-cpi-cloud-config-secret.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_cloud_controller/vsphere/templates/external-vsphere-cpi-cloud-config-secret.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/vsphere/templates/external-vsphere-cpi-cloud-config-secret.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/external_cloud_controller/vsphere/templates/external-vsphere-cpi-cloud-config.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/vsphere/templates/external-vsphere-cpi-cloud-config.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_cloud_controller/vsphere/templates/external-vsphere-cpi-cloud-config.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_cloud_controller/vsphere/templates/external-vsphere-cpi-cloud-config.j2 diff --git a/kubespray/project/roles/kubernetes-apps/external_provisioner/local_path_provisioner/defaults/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/external_provisioner/local_path_provisioner/defaults/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_provisioner/local_path_provisioner/defaults/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_provisioner/local_path_provisioner/defaults/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/external_provisioner/local_path_provisioner/tasks/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/external_provisioner/local_path_provisioner/tasks/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_provisioner/local_path_provisioner/tasks/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_provisioner/local_path_provisioner/tasks/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/external_provisioner/local_path_provisioner/templates/local-path-storage-clusterrolebinding.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/external_provisioner/local_path_provisioner/templates/local-path-storage-clusterrolebinding.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_provisioner/local_path_provisioner/templates/local-path-storage-clusterrolebinding.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_provisioner/local_path_provisioner/templates/local-path-storage-clusterrolebinding.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/external_provisioner/local_path_provisioner/templates/local-path-storage-cm.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/external_provisioner/local_path_provisioner/templates/local-path-storage-cm.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_provisioner/local_path_provisioner/templates/local-path-storage-cm.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_provisioner/local_path_provisioner/templates/local-path-storage-cm.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/external_provisioner/local_path_provisioner/templates/local-path-storage-cr.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/external_provisioner/local_path_provisioner/templates/local-path-storage-cr.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_provisioner/local_path_provisioner/templates/local-path-storage-cr.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_provisioner/local_path_provisioner/templates/local-path-storage-cr.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/external_provisioner/local_path_provisioner/templates/local-path-storage-deployment.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/external_provisioner/local_path_provisioner/templates/local-path-storage-deployment.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_provisioner/local_path_provisioner/templates/local-path-storage-deployment.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_provisioner/local_path_provisioner/templates/local-path-storage-deployment.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/external_provisioner/local_path_provisioner/templates/local-path-storage-ns.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/external_provisioner/local_path_provisioner/templates/local-path-storage-ns.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_provisioner/local_path_provisioner/templates/local-path-storage-ns.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_provisioner/local_path_provisioner/templates/local-path-storage-ns.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/external_provisioner/local_path_provisioner/templates/local-path-storage-sa.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/external_provisioner/local_path_provisioner/templates/local-path-storage-sa.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_provisioner/local_path_provisioner/templates/local-path-storage-sa.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_provisioner/local_path_provisioner/templates/local-path-storage-sa.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/external_provisioner/local_path_provisioner/templates/local-path-storage-sc.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/external_provisioner/local_path_provisioner/templates/local-path-storage-sc.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_provisioner/local_path_provisioner/templates/local-path-storage-sc.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_provisioner/local_path_provisioner/templates/local-path-storage-sc.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/external_provisioner/local_volume_provisioner/defaults/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/external_provisioner/local_volume_provisioner/defaults/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_provisioner/local_volume_provisioner/defaults/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_provisioner/local_volume_provisioner/defaults/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/external_provisioner/local_volume_provisioner/tasks/basedirs.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/external_provisioner/local_volume_provisioner/tasks/basedirs.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_provisioner/local_volume_provisioner/tasks/basedirs.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_provisioner/local_volume_provisioner/tasks/basedirs.yml diff --git a/kubespray/project/roles/kubernetes-apps/external_provisioner/local_volume_provisioner/tasks/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/external_provisioner/local_volume_provisioner/tasks/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_provisioner/local_volume_provisioner/tasks/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_provisioner/local_volume_provisioner/tasks/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/external_provisioner/local_volume_provisioner/templates/local-volume-provisioner-clusterrole.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/external_provisioner/local_volume_provisioner/templates/local-volume-provisioner-clusterrole.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_provisioner/local_volume_provisioner/templates/local-volume-provisioner-clusterrole.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_provisioner/local_volume_provisioner/templates/local-volume-provisioner-clusterrole.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/external_provisioner/local_volume_provisioner/templates/local-volume-provisioner-clusterrolebinding.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/external_provisioner/local_volume_provisioner/templates/local-volume-provisioner-clusterrolebinding.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_provisioner/local_volume_provisioner/templates/local-volume-provisioner-clusterrolebinding.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_provisioner/local_volume_provisioner/templates/local-volume-provisioner-clusterrolebinding.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/external_provisioner/local_volume_provisioner/templates/local-volume-provisioner-cm.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/external_provisioner/local_volume_provisioner/templates/local-volume-provisioner-cm.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_provisioner/local_volume_provisioner/templates/local-volume-provisioner-cm.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_provisioner/local_volume_provisioner/templates/local-volume-provisioner-cm.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/external_provisioner/local_volume_provisioner/templates/local-volume-provisioner-ds.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/external_provisioner/local_volume_provisioner/templates/local-volume-provisioner-ds.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_provisioner/local_volume_provisioner/templates/local-volume-provisioner-ds.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_provisioner/local_volume_provisioner/templates/local-volume-provisioner-ds.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/external_provisioner/local_volume_provisioner/templates/local-volume-provisioner-ns.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/external_provisioner/local_volume_provisioner/templates/local-volume-provisioner-ns.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_provisioner/local_volume_provisioner/templates/local-volume-provisioner-ns.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_provisioner/local_volume_provisioner/templates/local-volume-provisioner-ns.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/external_provisioner/local_volume_provisioner/templates/local-volume-provisioner-sa.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/external_provisioner/local_volume_provisioner/templates/local-volume-provisioner-sa.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_provisioner/local_volume_provisioner/templates/local-volume-provisioner-sa.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_provisioner/local_volume_provisioner/templates/local-volume-provisioner-sa.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/external_provisioner/local_volume_provisioner/templates/local-volume-provisioner-sc.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/external_provisioner/local_volume_provisioner/templates/local-volume-provisioner-sc.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_provisioner/local_volume_provisioner/templates/local-volume-provisioner-sc.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_provisioner/local_volume_provisioner/templates/local-volume-provisioner-sc.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/external_provisioner/meta/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/external_provisioner/meta/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/external_provisioner/meta/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/external_provisioner/meta/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/gateway_api/defaults/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/gateway_api/defaults/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/gateway_api/defaults/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/gateway_api/defaults/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/gateway_api/tasks/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/gateway_api/tasks/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/gateway_api/tasks/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/gateway_api/tasks/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/helm/.gitkeep b/internal/resources/kubespray/project/roles/kubernetes-apps/helm/.gitkeep similarity index 100% rename from kubespray/project/roles/kubernetes-apps/helm/.gitkeep rename to internal/resources/kubespray/project/roles/kubernetes-apps/helm/.gitkeep diff --git a/kubespray/project/roles/kubernetes-apps/helm/defaults/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/helm/defaults/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/helm/defaults/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/helm/defaults/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/helm/tasks/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/helm/tasks/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/helm/tasks/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/helm/tasks/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/helm/tasks/pyyaml-flatcar.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/helm/tasks/pyyaml-flatcar.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/helm/tasks/pyyaml-flatcar.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/helm/tasks/pyyaml-flatcar.yml diff --git a/kubespray/project/roles/kubernetes-apps/helm/vars/amazon.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/helm/vars/amazon.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/helm/vars/amazon.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/helm/vars/amazon.yml diff --git a/kubespray/project/roles/kubernetes-apps/helm/vars/centos-7.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/helm/vars/centos-7.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/helm/vars/centos-7.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/helm/vars/centos-7.yml diff --git a/kubespray/project/roles/kubernetes-apps/helm/vars/centos.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/helm/vars/centos.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/helm/vars/centos.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/helm/vars/centos.yml diff --git a/kubespray/project/roles/kubernetes-apps/helm/vars/debian.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/helm/vars/debian.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/helm/vars/debian.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/helm/vars/debian.yml diff --git a/kubespray/project/roles/kubernetes-apps/helm/vars/fedora.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/helm/vars/fedora.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/helm/vars/fedora.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/helm/vars/fedora.yml diff --git a/kubespray/project/roles/kubernetes-apps/helm/vars/redhat-7.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/helm/vars/redhat-7.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/helm/vars/redhat-7.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/helm/vars/redhat-7.yml diff --git a/kubespray/project/roles/kubernetes-apps/helm/vars/redhat.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/helm/vars/redhat.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/helm/vars/redhat.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/helm/vars/redhat.yml diff --git a/kubespray/project/roles/kubernetes-apps/helm/vars/suse.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/helm/vars/suse.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/helm/vars/suse.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/helm/vars/suse.yml diff --git a/kubespray/project/roles/kubernetes-apps/helm/vars/ubuntu.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/helm/vars/ubuntu.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/helm/vars/ubuntu.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/helm/vars/ubuntu.yml diff --git a/kubespray/project/roles/kubernetes-apps/ingress_controller/alb_ingress_controller/defaults/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/alb_ingress_controller/defaults/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ingress_controller/alb_ingress_controller/defaults/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/alb_ingress_controller/defaults/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/ingress_controller/alb_ingress_controller/tasks/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/alb_ingress_controller/tasks/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ingress_controller/alb_ingress_controller/tasks/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/alb_ingress_controller/tasks/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/ingress_controller/alb_ingress_controller/templates/alb-ingress-clusterrole.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/alb_ingress_controller/templates/alb-ingress-clusterrole.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ingress_controller/alb_ingress_controller/templates/alb-ingress-clusterrole.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/alb_ingress_controller/templates/alb-ingress-clusterrole.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/ingress_controller/alb_ingress_controller/templates/alb-ingress-clusterrolebinding.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/alb_ingress_controller/templates/alb-ingress-clusterrolebinding.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ingress_controller/alb_ingress_controller/templates/alb-ingress-clusterrolebinding.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/alb_ingress_controller/templates/alb-ingress-clusterrolebinding.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/ingress_controller/alb_ingress_controller/templates/alb-ingress-deploy.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/alb_ingress_controller/templates/alb-ingress-deploy.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ingress_controller/alb_ingress_controller/templates/alb-ingress-deploy.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/alb_ingress_controller/templates/alb-ingress-deploy.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/ingress_controller/alb_ingress_controller/templates/alb-ingress-ns.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/alb_ingress_controller/templates/alb-ingress-ns.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ingress_controller/alb_ingress_controller/templates/alb-ingress-ns.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/alb_ingress_controller/templates/alb-ingress-ns.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/ingress_controller/alb_ingress_controller/templates/alb-ingress-sa.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/alb_ingress_controller/templates/alb-ingress-sa.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ingress_controller/alb_ingress_controller/templates/alb-ingress-sa.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/alb_ingress_controller/templates/alb-ingress-sa.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/ingress_controller/cert_manager/defaults/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/cert_manager/defaults/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ingress_controller/cert_manager/defaults/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/cert_manager/defaults/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/ingress_controller/cert_manager/tasks/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/cert_manager/tasks/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ingress_controller/cert_manager/tasks/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/cert_manager/tasks/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/ingress_controller/cert_manager/templates/cert-manager.crds.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/cert_manager/templates/cert-manager.crds.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ingress_controller/cert_manager/templates/cert-manager.crds.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/cert_manager/templates/cert-manager.crds.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/ingress_controller/cert_manager/templates/cert-manager.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/cert_manager/templates/cert-manager.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ingress_controller/cert_manager/templates/cert-manager.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/cert_manager/templates/cert-manager.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/defaults/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/defaults/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/defaults/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/defaults/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/tasks/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/tasks/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/tasks/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/tasks/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/00-namespace.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/00-namespace.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/00-namespace.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/00-namespace.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/admission-webhook-configuration.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/admission-webhook-configuration.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/admission-webhook-configuration.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/admission-webhook-configuration.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/admission-webhook-job.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/admission-webhook-job.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/admission-webhook-job.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/admission-webhook-job.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/clusterrole-admission-webhook.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/clusterrole-admission-webhook.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/clusterrole-admission-webhook.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/clusterrole-admission-webhook.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/clusterrole-ingress-nginx.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/clusterrole-ingress-nginx.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/clusterrole-ingress-nginx.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/clusterrole-ingress-nginx.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/clusterrolebinding-admission-webhook.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/clusterrolebinding-admission-webhook.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/clusterrolebinding-admission-webhook.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/clusterrolebinding-admission-webhook.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/clusterrolebinding-ingress-nginx.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/clusterrolebinding-ingress-nginx.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/clusterrolebinding-ingress-nginx.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/clusterrolebinding-ingress-nginx.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/cm-ingress-nginx.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/cm-ingress-nginx.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/cm-ingress-nginx.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/cm-ingress-nginx.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/cm-tcp-services.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/cm-tcp-services.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/cm-tcp-services.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/cm-tcp-services.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/cm-udp-services.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/cm-udp-services.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/cm-udp-services.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/cm-udp-services.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/ds-ingress-nginx-controller.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/ds-ingress-nginx-controller.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/ds-ingress-nginx-controller.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/ds-ingress-nginx-controller.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/ingressclass-nginx.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/ingressclass-nginx.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/ingressclass-nginx.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/ingressclass-nginx.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/role-admission-webhook.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/role-admission-webhook.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/role-admission-webhook.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/role-admission-webhook.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/role-ingress-nginx.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/role-ingress-nginx.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/role-ingress-nginx.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/role-ingress-nginx.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/rolebinding-admission-webhook.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/rolebinding-admission-webhook.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/rolebinding-admission-webhook.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/rolebinding-admission-webhook.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/rolebinding-ingress-nginx.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/rolebinding-ingress-nginx.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/rolebinding-ingress-nginx.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/rolebinding-ingress-nginx.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/sa-admission-webhook.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/sa-admission-webhook.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/sa-admission-webhook.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/sa-admission-webhook.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/sa-ingress-nginx.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/sa-ingress-nginx.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/sa-ingress-nginx.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/sa-ingress-nginx.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/svc-ingress-nginx-controller-admission.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/svc-ingress-nginx-controller-admission.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/svc-ingress-nginx-controller-admission.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/svc-ingress-nginx-controller-admission.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/svc-ingress-nginx.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/svc-ingress-nginx.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/svc-ingress-nginx.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/svc-ingress-nginx.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/ingress_controller/meta/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/meta/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/ingress_controller/meta/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/ingress_controller/meta/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/kubelet-csr-approver/defaults/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/kubelet-csr-approver/defaults/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/kubelet-csr-approver/defaults/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/kubelet-csr-approver/defaults/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/kubelet-csr-approver/meta/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/kubelet-csr-approver/meta/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/kubelet-csr-approver/meta/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/kubelet-csr-approver/meta/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/meta/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/meta/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/meta/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/meta/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/metallb/defaults/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/metallb/defaults/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/metallb/defaults/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/metallb/defaults/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/metallb/tasks/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/metallb/tasks/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/metallb/tasks/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/metallb/tasks/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/metallb/templates/layer2.yaml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/metallb/templates/layer2.yaml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/metallb/templates/layer2.yaml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/metallb/templates/layer2.yaml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/metallb/templates/layer3.yaml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/metallb/templates/layer3.yaml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/metallb/templates/layer3.yaml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/metallb/templates/layer3.yaml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/metallb/templates/metallb.yaml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/metallb/templates/metallb.yaml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/metallb/templates/metallb.yaml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/metallb/templates/metallb.yaml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/metallb/templates/pools.yaml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/metallb/templates/pools.yaml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/metallb/templates/pools.yaml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/metallb/templates/pools.yaml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/metrics_server/defaults/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/metrics_server/defaults/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/metrics_server/defaults/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/metrics_server/defaults/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/metrics_server/tasks/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/metrics_server/tasks/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/metrics_server/tasks/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/metrics_server/tasks/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/metrics_server/templates/auth-delegator.yaml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/metrics_server/templates/auth-delegator.yaml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/metrics_server/templates/auth-delegator.yaml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/metrics_server/templates/auth-delegator.yaml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/metrics_server/templates/auth-reader.yaml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/metrics_server/templates/auth-reader.yaml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/metrics_server/templates/auth-reader.yaml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/metrics_server/templates/auth-reader.yaml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/metrics_server/templates/metrics-apiservice.yaml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/metrics_server/templates/metrics-apiservice.yaml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/metrics_server/templates/metrics-apiservice.yaml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/metrics_server/templates/metrics-apiservice.yaml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/metrics_server/templates/metrics-server-deployment.yaml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/metrics_server/templates/metrics-server-deployment.yaml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/metrics_server/templates/metrics-server-deployment.yaml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/metrics_server/templates/metrics-server-deployment.yaml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/metrics_server/templates/metrics-server-sa.yaml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/metrics_server/templates/metrics-server-sa.yaml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/metrics_server/templates/metrics-server-sa.yaml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/metrics_server/templates/metrics-server-sa.yaml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/metrics_server/templates/metrics-server-service.yaml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/metrics_server/templates/metrics-server-service.yaml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/metrics_server/templates/metrics-server-service.yaml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/metrics_server/templates/metrics-server-service.yaml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/metrics_server/templates/resource-reader-clusterrolebinding.yaml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/metrics_server/templates/resource-reader-clusterrolebinding.yaml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/metrics_server/templates/resource-reader-clusterrolebinding.yaml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/metrics_server/templates/resource-reader-clusterrolebinding.yaml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/metrics_server/templates/resource-reader.yaml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/metrics_server/templates/resource-reader.yaml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/metrics_server/templates/resource-reader.yaml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/metrics_server/templates/resource-reader.yaml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/network_plugin/calico/tasks/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/network_plugin/calico/tasks/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/network_plugin/calico/tasks/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/network_plugin/calico/tasks/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/network_plugin/flannel/tasks/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/network_plugin/flannel/tasks/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/network_plugin/flannel/tasks/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/network_plugin/flannel/tasks/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/network_plugin/kube-ovn/tasks/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/network_plugin/kube-ovn/tasks/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/network_plugin/kube-ovn/tasks/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/network_plugin/kube-ovn/tasks/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/network_plugin/kube-router/tasks/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/network_plugin/kube-router/tasks/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/network_plugin/kube-router/tasks/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/network_plugin/kube-router/tasks/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/network_plugin/meta/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/network_plugin/meta/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/network_plugin/meta/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/network_plugin/meta/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/network_plugin/multus/tasks/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/network_plugin/multus/tasks/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/network_plugin/multus/tasks/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/network_plugin/multus/tasks/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/network_plugin/weave/tasks/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/network_plugin/weave/tasks/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/network_plugin/weave/tasks/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/network_plugin/weave/tasks/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/node_feature_discovery/defaults/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/node_feature_discovery/defaults/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/node_feature_discovery/defaults/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/node_feature_discovery/defaults/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/node_feature_discovery/tasks/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/node_feature_discovery/tasks/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/node_feature_discovery/tasks/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/node_feature_discovery/tasks/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-api-crds.yaml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-api-crds.yaml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-api-crds.yaml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-api-crds.yaml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-clusterrole.yaml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-clusterrole.yaml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-clusterrole.yaml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-clusterrole.yaml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-clusterrolebinding.yaml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-clusterrolebinding.yaml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-clusterrolebinding.yaml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-clusterrolebinding.yaml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-gc.yaml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-gc.yaml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-gc.yaml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-gc.yaml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-master-conf.yaml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-master-conf.yaml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-master-conf.yaml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-master-conf.yaml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-master.yaml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-master.yaml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-master.yaml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-master.yaml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-ns.yaml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-ns.yaml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-ns.yaml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-ns.yaml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-role.yaml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-role.yaml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-role.yaml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-role.yaml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-rolebinding.yaml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-rolebinding.yaml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-rolebinding.yaml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-rolebinding.yaml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-service.yaml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-service.yaml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-service.yaml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-service.yaml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-serviceaccount.yaml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-serviceaccount.yaml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-serviceaccount.yaml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-serviceaccount.yaml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-topologyupdater-conf.yaml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-topologyupdater-conf.yaml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-topologyupdater-conf.yaml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-topologyupdater-conf.yaml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-worker-conf.yaml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-worker-conf.yaml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-worker-conf.yaml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-worker-conf.yaml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-worker.yaml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-worker.yaml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-worker.yaml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/node_feature_discovery/templates/nfd-worker.yaml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/persistent_volumes/aws-ebs-csi/defaults/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/persistent_volumes/aws-ebs-csi/defaults/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/persistent_volumes/aws-ebs-csi/defaults/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/persistent_volumes/aws-ebs-csi/defaults/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/persistent_volumes/aws-ebs-csi/tasks/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/persistent_volumes/aws-ebs-csi/tasks/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/persistent_volumes/aws-ebs-csi/tasks/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/persistent_volumes/aws-ebs-csi/tasks/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/persistent_volumes/aws-ebs-csi/templates/aws-ebs-csi-storage-class.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/persistent_volumes/aws-ebs-csi/templates/aws-ebs-csi-storage-class.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/persistent_volumes/aws-ebs-csi/templates/aws-ebs-csi-storage-class.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/persistent_volumes/aws-ebs-csi/templates/aws-ebs-csi-storage-class.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/persistent_volumes/azuredisk-csi/defaults/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/persistent_volumes/azuredisk-csi/defaults/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/persistent_volumes/azuredisk-csi/defaults/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/persistent_volumes/azuredisk-csi/defaults/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/persistent_volumes/azuredisk-csi/tasks/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/persistent_volumes/azuredisk-csi/tasks/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/persistent_volumes/azuredisk-csi/tasks/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/persistent_volumes/azuredisk-csi/tasks/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/persistent_volumes/azuredisk-csi/templates/azure-csi-storage-class.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/persistent_volumes/azuredisk-csi/templates/azure-csi-storage-class.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/persistent_volumes/azuredisk-csi/templates/azure-csi-storage-class.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/persistent_volumes/azuredisk-csi/templates/azure-csi-storage-class.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/persistent_volumes/cinder-csi/defaults/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/persistent_volumes/cinder-csi/defaults/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/persistent_volumes/cinder-csi/defaults/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/persistent_volumes/cinder-csi/defaults/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/persistent_volumes/cinder-csi/tasks/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/persistent_volumes/cinder-csi/tasks/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/persistent_volumes/cinder-csi/tasks/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/persistent_volumes/cinder-csi/tasks/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/persistent_volumes/cinder-csi/templates/cinder-csi-storage-class.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/persistent_volumes/cinder-csi/templates/cinder-csi-storage-class.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/persistent_volumes/cinder-csi/templates/cinder-csi-storage-class.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/persistent_volumes/cinder-csi/templates/cinder-csi-storage-class.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/persistent_volumes/gcp-pd-csi/defaults/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/persistent_volumes/gcp-pd-csi/defaults/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/persistent_volumes/gcp-pd-csi/defaults/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/persistent_volumes/gcp-pd-csi/defaults/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/persistent_volumes/gcp-pd-csi/tasks/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/persistent_volumes/gcp-pd-csi/tasks/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/persistent_volumes/gcp-pd-csi/tasks/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/persistent_volumes/gcp-pd-csi/tasks/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/persistent_volumes/gcp-pd-csi/templates/gcp-pd-csi-storage-class.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/persistent_volumes/gcp-pd-csi/templates/gcp-pd-csi-storage-class.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/persistent_volumes/gcp-pd-csi/templates/gcp-pd-csi-storage-class.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/persistent_volumes/gcp-pd-csi/templates/gcp-pd-csi-storage-class.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/persistent_volumes/meta/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/persistent_volumes/meta/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/persistent_volumes/meta/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/persistent_volumes/meta/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/persistent_volumes/upcloud-csi/defaults/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/persistent_volumes/upcloud-csi/defaults/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/persistent_volumes/upcloud-csi/defaults/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/persistent_volumes/upcloud-csi/defaults/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/persistent_volumes/upcloud-csi/tasks/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/persistent_volumes/upcloud-csi/tasks/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/persistent_volumes/upcloud-csi/tasks/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/persistent_volumes/upcloud-csi/tasks/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/persistent_volumes/upcloud-csi/templates/upcloud-csi-storage-class.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/persistent_volumes/upcloud-csi/templates/upcloud-csi-storage-class.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/persistent_volumes/upcloud-csi/templates/upcloud-csi-storage-class.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/persistent_volumes/upcloud-csi/templates/upcloud-csi-storage-class.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/policy_controller/calico/defaults/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/policy_controller/calico/defaults/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/policy_controller/calico/defaults/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/policy_controller/calico/defaults/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/policy_controller/calico/tasks/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/policy_controller/calico/tasks/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/policy_controller/calico/tasks/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/policy_controller/calico/tasks/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/policy_controller/calico/templates/calico-kube-controllers.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/policy_controller/calico/templates/calico-kube-controllers.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/policy_controller/calico/templates/calico-kube-controllers.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/policy_controller/calico/templates/calico-kube-controllers.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/policy_controller/calico/templates/calico-kube-cr.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/policy_controller/calico/templates/calico-kube-cr.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/policy_controller/calico/templates/calico-kube-cr.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/policy_controller/calico/templates/calico-kube-cr.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/policy_controller/calico/templates/calico-kube-crb.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/policy_controller/calico/templates/calico-kube-crb.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/policy_controller/calico/templates/calico-kube-crb.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/policy_controller/calico/templates/calico-kube-crb.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/policy_controller/calico/templates/calico-kube-sa.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/policy_controller/calico/templates/calico-kube-sa.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/policy_controller/calico/templates/calico-kube-sa.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/policy_controller/calico/templates/calico-kube-sa.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/policy_controller/meta/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/policy_controller/meta/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/policy_controller/meta/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/policy_controller/meta/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/registry/defaults/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/registry/defaults/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/registry/defaults/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/registry/defaults/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/registry/tasks/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/registry/tasks/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/registry/tasks/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/registry/tasks/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/registry/templates/registry-cm.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/registry/templates/registry-cm.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/registry/templates/registry-cm.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/registry/templates/registry-cm.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/registry/templates/registry-ing.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/registry/templates/registry-ing.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/registry/templates/registry-ing.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/registry/templates/registry-ing.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/registry/templates/registry-ns.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/registry/templates/registry-ns.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/registry/templates/registry-ns.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/registry/templates/registry-ns.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/registry/templates/registry-pvc.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/registry/templates/registry-pvc.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/registry/templates/registry-pvc.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/registry/templates/registry-pvc.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/registry/templates/registry-rs.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/registry/templates/registry-rs.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/registry/templates/registry-rs.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/registry/templates/registry-rs.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/registry/templates/registry-sa.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/registry/templates/registry-sa.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/registry/templates/registry-sa.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/registry/templates/registry-sa.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/registry/templates/registry-secrets.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/registry/templates/registry-secrets.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/registry/templates/registry-secrets.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/registry/templates/registry-secrets.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/registry/templates/registry-svc.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/registry/templates/registry-svc.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/registry/templates/registry-svc.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/registry/templates/registry-svc.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/scheduler_plugins/defaults/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/scheduler_plugins/defaults/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/scheduler_plugins/defaults/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/scheduler_plugins/defaults/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/scheduler_plugins/tasks/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/scheduler_plugins/tasks/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/scheduler_plugins/tasks/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/scheduler_plugins/tasks/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/scheduler_plugins/templates/appgroup.diktyo.x-k8s.io_appgroups.yaml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/scheduler_plugins/templates/appgroup.diktyo.x-k8s.io_appgroups.yaml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/scheduler_plugins/templates/appgroup.diktyo.x-k8s.io_appgroups.yaml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/scheduler_plugins/templates/appgroup.diktyo.x-k8s.io_appgroups.yaml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/scheduler_plugins/templates/cm-scheduler-plugins.yaml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/scheduler_plugins/templates/cm-scheduler-plugins.yaml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/scheduler_plugins/templates/cm-scheduler-plugins.yaml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/scheduler_plugins/templates/cm-scheduler-plugins.yaml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/scheduler_plugins/templates/deploy-scheduler-plugins.yaml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/scheduler_plugins/templates/deploy-scheduler-plugins.yaml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/scheduler_plugins/templates/deploy-scheduler-plugins.yaml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/scheduler_plugins/templates/deploy-scheduler-plugins.yaml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/scheduler_plugins/templates/namespace.yaml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/scheduler_plugins/templates/namespace.yaml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/scheduler_plugins/templates/namespace.yaml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/scheduler_plugins/templates/namespace.yaml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/scheduler_plugins/templates/networktopology.diktyo.x-k8s.io_networktopologies.yaml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/scheduler_plugins/templates/networktopology.diktyo.x-k8s.io_networktopologies.yaml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/scheduler_plugins/templates/networktopology.diktyo.x-k8s.io_networktopologies.yaml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/scheduler_plugins/templates/networktopology.diktyo.x-k8s.io_networktopologies.yaml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/scheduler_plugins/templates/rbac-scheduler-plugins.yaml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/scheduler_plugins/templates/rbac-scheduler-plugins.yaml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/scheduler_plugins/templates/rbac-scheduler-plugins.yaml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/scheduler_plugins/templates/rbac-scheduler-plugins.yaml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/scheduler_plugins/templates/sa-scheduler-plugins.yaml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/scheduler_plugins/templates/sa-scheduler-plugins.yaml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/scheduler_plugins/templates/sa-scheduler-plugins.yaml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/scheduler_plugins/templates/sa-scheduler-plugins.yaml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/scheduler_plugins/templates/scheduling.x-k8s.io_elasticquotas.yaml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/scheduler_plugins/templates/scheduling.x-k8s.io_elasticquotas.yaml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/scheduler_plugins/templates/scheduling.x-k8s.io_elasticquotas.yaml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/scheduler_plugins/templates/scheduling.x-k8s.io_elasticquotas.yaml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/scheduler_plugins/templates/scheduling.x-k8s.io_podgroups.yaml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/scheduler_plugins/templates/scheduling.x-k8s.io_podgroups.yaml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/scheduler_plugins/templates/scheduling.x-k8s.io_podgroups.yaml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/scheduler_plugins/templates/scheduling.x-k8s.io_podgroups.yaml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/scheduler_plugins/templates/topology.node.k8s.io_noderesourcetopologies.yaml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/scheduler_plugins/templates/topology.node.k8s.io_noderesourcetopologies.yaml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/scheduler_plugins/templates/topology.node.k8s.io_noderesourcetopologies.yaml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/scheduler_plugins/templates/topology.node.k8s.io_noderesourcetopologies.yaml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/snapshots/cinder-csi/defaults/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/snapshots/cinder-csi/defaults/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/snapshots/cinder-csi/defaults/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/snapshots/cinder-csi/defaults/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/snapshots/cinder-csi/tasks/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/snapshots/cinder-csi/tasks/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/snapshots/cinder-csi/tasks/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/snapshots/cinder-csi/tasks/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/snapshots/cinder-csi/templates/cinder-csi-snapshot-class.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/snapshots/cinder-csi/templates/cinder-csi-snapshot-class.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/snapshots/cinder-csi/templates/cinder-csi-snapshot-class.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/snapshots/cinder-csi/templates/cinder-csi-snapshot-class.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/snapshots/meta/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/snapshots/meta/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/snapshots/meta/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/snapshots/meta/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/snapshots/snapshot-controller/defaults/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/snapshots/snapshot-controller/defaults/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/snapshots/snapshot-controller/defaults/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/snapshots/snapshot-controller/defaults/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/snapshots/snapshot-controller/tasks/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/snapshots/snapshot-controller/tasks/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/snapshots/snapshot-controller/tasks/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/snapshots/snapshot-controller/tasks/main.yml diff --git a/kubespray/project/roles/kubernetes-apps/snapshots/snapshot-controller/templates/rbac-snapshot-controller.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/snapshots/snapshot-controller/templates/rbac-snapshot-controller.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/snapshots/snapshot-controller/templates/rbac-snapshot-controller.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/snapshots/snapshot-controller/templates/rbac-snapshot-controller.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/snapshots/snapshot-controller/templates/snapshot-controller.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/snapshots/snapshot-controller/templates/snapshot-controller.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/snapshots/snapshot-controller/templates/snapshot-controller.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/snapshots/snapshot-controller/templates/snapshot-controller.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/snapshots/snapshot-controller/templates/snapshot-ns.yml.j2 b/internal/resources/kubespray/project/roles/kubernetes-apps/snapshots/snapshot-controller/templates/snapshot-ns.yml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes-apps/snapshots/snapshot-controller/templates/snapshot-ns.yml.j2 rename to internal/resources/kubespray/project/roles/kubernetes-apps/snapshots/snapshot-controller/templates/snapshot-ns.yml.j2 diff --git a/kubespray/project/roles/kubernetes-apps/vars/main.yml b/internal/resources/kubespray/project/roles/kubernetes-apps/vars/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes-apps/vars/main.yml rename to internal/resources/kubespray/project/roles/kubernetes-apps/vars/main.yml diff --git a/kubespray/project/roles/kubernetes/client/defaults/main.yml b/internal/resources/kubespray/project/roles/kubernetes/client/defaults/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes/client/defaults/main.yml rename to internal/resources/kubespray/project/roles/kubernetes/client/defaults/main.yml diff --git a/kubespray/project/roles/kubernetes/client/tasks/main.yml b/internal/resources/kubespray/project/roles/kubernetes/client/tasks/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes/client/tasks/main.yml rename to internal/resources/kubespray/project/roles/kubernetes/client/tasks/main.yml diff --git a/kubespray/project/roles/kubernetes/control-plane/defaults/main/etcd.yml b/internal/resources/kubespray/project/roles/kubernetes/control-plane/defaults/main/etcd.yml similarity index 100% rename from kubespray/project/roles/kubernetes/control-plane/defaults/main/etcd.yml rename to internal/resources/kubespray/project/roles/kubernetes/control-plane/defaults/main/etcd.yml diff --git a/kubespray/project/roles/kubernetes/control-plane/defaults/main/kube-proxy.yml b/internal/resources/kubespray/project/roles/kubernetes/control-plane/defaults/main/kube-proxy.yml similarity index 100% rename from kubespray/project/roles/kubernetes/control-plane/defaults/main/kube-proxy.yml rename to internal/resources/kubespray/project/roles/kubernetes/control-plane/defaults/main/kube-proxy.yml diff --git a/kubespray/project/roles/kubernetes/control-plane/defaults/main/kube-scheduler.yml b/internal/resources/kubespray/project/roles/kubernetes/control-plane/defaults/main/kube-scheduler.yml similarity index 100% rename from kubespray/project/roles/kubernetes/control-plane/defaults/main/kube-scheduler.yml rename to internal/resources/kubespray/project/roles/kubernetes/control-plane/defaults/main/kube-scheduler.yml diff --git a/kubespray/project/roles/kubernetes/control-plane/defaults/main/main.yml b/internal/resources/kubespray/project/roles/kubernetes/control-plane/defaults/main/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes/control-plane/defaults/main/main.yml rename to internal/resources/kubespray/project/roles/kubernetes/control-plane/defaults/main/main.yml diff --git a/kubespray/project/roles/kubernetes/control-plane/handlers/main.yml b/internal/resources/kubespray/project/roles/kubernetes/control-plane/handlers/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes/control-plane/handlers/main.yml rename to internal/resources/kubespray/project/roles/kubernetes/control-plane/handlers/main.yml diff --git a/kubespray/project/roles/kubernetes/control-plane/meta/main.yml b/internal/resources/kubespray/project/roles/kubernetes/control-plane/meta/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes/control-plane/meta/main.yml rename to internal/resources/kubespray/project/roles/kubernetes/control-plane/meta/main.yml diff --git a/kubespray/project/roles/kubernetes/control-plane/tasks/check-api.yml b/internal/resources/kubespray/project/roles/kubernetes/control-plane/tasks/check-api.yml similarity index 100% rename from kubespray/project/roles/kubernetes/control-plane/tasks/check-api.yml rename to internal/resources/kubespray/project/roles/kubernetes/control-plane/tasks/check-api.yml diff --git a/kubespray/project/roles/kubernetes/control-plane/tasks/define-first-kube-control.yml b/internal/resources/kubespray/project/roles/kubernetes/control-plane/tasks/define-first-kube-control.yml similarity index 100% rename from kubespray/project/roles/kubernetes/control-plane/tasks/define-first-kube-control.yml rename to internal/resources/kubespray/project/roles/kubernetes/control-plane/tasks/define-first-kube-control.yml diff --git a/kubespray/project/roles/kubernetes/control-plane/tasks/encrypt-at-rest.yml b/internal/resources/kubespray/project/roles/kubernetes/control-plane/tasks/encrypt-at-rest.yml similarity index 100% rename from kubespray/project/roles/kubernetes/control-plane/tasks/encrypt-at-rest.yml rename to internal/resources/kubespray/project/roles/kubernetes/control-plane/tasks/encrypt-at-rest.yml diff --git a/kubespray/project/roles/kubernetes/control-plane/tasks/kubeadm-backup.yml b/internal/resources/kubespray/project/roles/kubernetes/control-plane/tasks/kubeadm-backup.yml similarity index 100% rename from kubespray/project/roles/kubernetes/control-plane/tasks/kubeadm-backup.yml rename to internal/resources/kubespray/project/roles/kubernetes/control-plane/tasks/kubeadm-backup.yml diff --git a/kubespray/project/roles/kubernetes/control-plane/tasks/kubeadm-etcd.yml b/internal/resources/kubespray/project/roles/kubernetes/control-plane/tasks/kubeadm-etcd.yml similarity index 100% rename from kubespray/project/roles/kubernetes/control-plane/tasks/kubeadm-etcd.yml rename to internal/resources/kubespray/project/roles/kubernetes/control-plane/tasks/kubeadm-etcd.yml diff --git a/kubespray/project/roles/kubernetes/control-plane/tasks/kubeadm-fix-apiserver.yml b/internal/resources/kubespray/project/roles/kubernetes/control-plane/tasks/kubeadm-fix-apiserver.yml similarity index 100% rename from kubespray/project/roles/kubernetes/control-plane/tasks/kubeadm-fix-apiserver.yml rename to internal/resources/kubespray/project/roles/kubernetes/control-plane/tasks/kubeadm-fix-apiserver.yml diff --git a/kubespray/project/roles/kubernetes/control-plane/tasks/kubeadm-secondary.yml b/internal/resources/kubespray/project/roles/kubernetes/control-plane/tasks/kubeadm-secondary.yml similarity index 100% rename from kubespray/project/roles/kubernetes/control-plane/tasks/kubeadm-secondary.yml rename to internal/resources/kubespray/project/roles/kubernetes/control-plane/tasks/kubeadm-secondary.yml diff --git a/kubespray/project/roles/kubernetes/control-plane/tasks/kubeadm-setup.yml b/internal/resources/kubespray/project/roles/kubernetes/control-plane/tasks/kubeadm-setup.yml similarity index 100% rename from kubespray/project/roles/kubernetes/control-plane/tasks/kubeadm-setup.yml rename to internal/resources/kubespray/project/roles/kubernetes/control-plane/tasks/kubeadm-setup.yml diff --git a/kubespray/project/roles/kubernetes/control-plane/tasks/kubeadm-upgrade.yml b/internal/resources/kubespray/project/roles/kubernetes/control-plane/tasks/kubeadm-upgrade.yml similarity index 100% rename from kubespray/project/roles/kubernetes/control-plane/tasks/kubeadm-upgrade.yml rename to internal/resources/kubespray/project/roles/kubernetes/control-plane/tasks/kubeadm-upgrade.yml diff --git a/kubespray/project/roles/kubernetes/control-plane/tasks/kubelet-fix-client-cert-rotation.yml b/internal/resources/kubespray/project/roles/kubernetes/control-plane/tasks/kubelet-fix-client-cert-rotation.yml similarity index 100% rename from kubespray/project/roles/kubernetes/control-plane/tasks/kubelet-fix-client-cert-rotation.yml rename to internal/resources/kubespray/project/roles/kubernetes/control-plane/tasks/kubelet-fix-client-cert-rotation.yml diff --git a/kubespray/project/roles/kubernetes/control-plane/tasks/main.yml b/internal/resources/kubespray/project/roles/kubernetes/control-plane/tasks/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes/control-plane/tasks/main.yml rename to internal/resources/kubespray/project/roles/kubernetes/control-plane/tasks/main.yml diff --git a/kubespray/project/roles/kubernetes/control-plane/tasks/pre-upgrade.yml b/internal/resources/kubespray/project/roles/kubernetes/control-plane/tasks/pre-upgrade.yml similarity index 100% rename from kubespray/project/roles/kubernetes/control-plane/tasks/pre-upgrade.yml rename to internal/resources/kubespray/project/roles/kubernetes/control-plane/tasks/pre-upgrade.yml diff --git a/kubespray/project/roles/kubernetes/control-plane/templates/admission-controls.yaml.j2 b/internal/resources/kubespray/project/roles/kubernetes/control-plane/templates/admission-controls.yaml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes/control-plane/templates/admission-controls.yaml.j2 rename to internal/resources/kubespray/project/roles/kubernetes/control-plane/templates/admission-controls.yaml.j2 diff --git a/kubespray/project/roles/kubernetes/control-plane/templates/apiserver-audit-policy.yaml.j2 b/internal/resources/kubespray/project/roles/kubernetes/control-plane/templates/apiserver-audit-policy.yaml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes/control-plane/templates/apiserver-audit-policy.yaml.j2 rename to internal/resources/kubespray/project/roles/kubernetes/control-plane/templates/apiserver-audit-policy.yaml.j2 diff --git a/kubespray/project/roles/kubernetes/control-plane/templates/apiserver-audit-webhook-config.yaml.j2 b/internal/resources/kubespray/project/roles/kubernetes/control-plane/templates/apiserver-audit-webhook-config.yaml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes/control-plane/templates/apiserver-audit-webhook-config.yaml.j2 rename to internal/resources/kubespray/project/roles/kubernetes/control-plane/templates/apiserver-audit-webhook-config.yaml.j2 diff --git a/kubespray/project/roles/kubernetes/control-plane/templates/apiserver-tracing.yaml.j2 b/internal/resources/kubespray/project/roles/kubernetes/control-plane/templates/apiserver-tracing.yaml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes/control-plane/templates/apiserver-tracing.yaml.j2 rename to internal/resources/kubespray/project/roles/kubernetes/control-plane/templates/apiserver-tracing.yaml.j2 diff --git a/kubespray/project/roles/kubernetes/control-plane/templates/eventratelimit.yaml.j2 b/internal/resources/kubespray/project/roles/kubernetes/control-plane/templates/eventratelimit.yaml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes/control-plane/templates/eventratelimit.yaml.j2 rename to internal/resources/kubespray/project/roles/kubernetes/control-plane/templates/eventratelimit.yaml.j2 diff --git a/kubespray/project/roles/kubernetes/control-plane/templates/k8s-certs-renew.service.j2 b/internal/resources/kubespray/project/roles/kubernetes/control-plane/templates/k8s-certs-renew.service.j2 similarity index 100% rename from kubespray/project/roles/kubernetes/control-plane/templates/k8s-certs-renew.service.j2 rename to internal/resources/kubespray/project/roles/kubernetes/control-plane/templates/k8s-certs-renew.service.j2 diff --git a/kubespray/project/roles/kubernetes/control-plane/templates/k8s-certs-renew.sh.j2 b/internal/resources/kubespray/project/roles/kubernetes/control-plane/templates/k8s-certs-renew.sh.j2 similarity index 100% rename from kubespray/project/roles/kubernetes/control-plane/templates/k8s-certs-renew.sh.j2 rename to internal/resources/kubespray/project/roles/kubernetes/control-plane/templates/k8s-certs-renew.sh.j2 diff --git a/kubespray/project/roles/kubernetes/control-plane/templates/k8s-certs-renew.timer.j2 b/internal/resources/kubespray/project/roles/kubernetes/control-plane/templates/k8s-certs-renew.timer.j2 similarity index 100% rename from kubespray/project/roles/kubernetes/control-plane/templates/k8s-certs-renew.timer.j2 rename to internal/resources/kubespray/project/roles/kubernetes/control-plane/templates/k8s-certs-renew.timer.j2 diff --git a/kubespray/project/roles/kubernetes/control-plane/templates/kubeadm-config.v1beta3.yaml.j2 b/internal/resources/kubespray/project/roles/kubernetes/control-plane/templates/kubeadm-config.v1beta3.yaml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes/control-plane/templates/kubeadm-config.v1beta3.yaml.j2 rename to internal/resources/kubespray/project/roles/kubernetes/control-plane/templates/kubeadm-config.v1beta3.yaml.j2 diff --git a/kubespray/project/roles/kubernetes/control-plane/templates/kubeadm-config.v1beta4.yaml.j2 b/internal/resources/kubespray/project/roles/kubernetes/control-plane/templates/kubeadm-config.v1beta4.yaml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes/control-plane/templates/kubeadm-config.v1beta4.yaml.j2 rename to internal/resources/kubespray/project/roles/kubernetes/control-plane/templates/kubeadm-config.v1beta4.yaml.j2 diff --git a/kubespray/project/roles/kubernetes/control-plane/templates/kubeadm-controlplane.yaml.j2 b/internal/resources/kubespray/project/roles/kubernetes/control-plane/templates/kubeadm-controlplane.yaml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes/control-plane/templates/kubeadm-controlplane.yaml.j2 rename to internal/resources/kubespray/project/roles/kubernetes/control-plane/templates/kubeadm-controlplane.yaml.j2 diff --git a/kubespray/project/roles/kubernetes/control-plane/templates/kubescheduler-config.yaml.j2 b/internal/resources/kubespray/project/roles/kubernetes/control-plane/templates/kubescheduler-config.yaml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes/control-plane/templates/kubescheduler-config.yaml.j2 rename to internal/resources/kubespray/project/roles/kubernetes/control-plane/templates/kubescheduler-config.yaml.j2 diff --git a/kubespray/project/roles/kubernetes/control-plane/templates/podnodeselector.yaml.j2 b/internal/resources/kubespray/project/roles/kubernetes/control-plane/templates/podnodeselector.yaml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes/control-plane/templates/podnodeselector.yaml.j2 rename to internal/resources/kubespray/project/roles/kubernetes/control-plane/templates/podnodeselector.yaml.j2 diff --git a/kubespray/project/roles/kubernetes/control-plane/templates/podsecurity.yaml.j2 b/internal/resources/kubespray/project/roles/kubernetes/control-plane/templates/podsecurity.yaml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes/control-plane/templates/podsecurity.yaml.j2 rename to internal/resources/kubespray/project/roles/kubernetes/control-plane/templates/podsecurity.yaml.j2 diff --git a/kubespray/project/roles/kubernetes/control-plane/templates/resourcequota.yaml.j2 b/internal/resources/kubespray/project/roles/kubernetes/control-plane/templates/resourcequota.yaml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes/control-plane/templates/resourcequota.yaml.j2 rename to internal/resources/kubespray/project/roles/kubernetes/control-plane/templates/resourcequota.yaml.j2 diff --git a/kubespray/project/roles/kubernetes/control-plane/templates/secrets_encryption.yaml.j2 b/internal/resources/kubespray/project/roles/kubernetes/control-plane/templates/secrets_encryption.yaml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes/control-plane/templates/secrets_encryption.yaml.j2 rename to internal/resources/kubespray/project/roles/kubernetes/control-plane/templates/secrets_encryption.yaml.j2 diff --git a/kubespray/project/roles/kubernetes/control-plane/templates/webhook-authorization-config.yaml.j2 b/internal/resources/kubespray/project/roles/kubernetes/control-plane/templates/webhook-authorization-config.yaml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes/control-plane/templates/webhook-authorization-config.yaml.j2 rename to internal/resources/kubespray/project/roles/kubernetes/control-plane/templates/webhook-authorization-config.yaml.j2 diff --git a/kubespray/project/roles/kubernetes/control-plane/templates/webhook-token-auth-config.yaml.j2 b/internal/resources/kubespray/project/roles/kubernetes/control-plane/templates/webhook-token-auth-config.yaml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes/control-plane/templates/webhook-token-auth-config.yaml.j2 rename to internal/resources/kubespray/project/roles/kubernetes/control-plane/templates/webhook-token-auth-config.yaml.j2 diff --git a/kubespray/project/roles/kubernetes/control-plane/vars/main.yaml b/internal/resources/kubespray/project/roles/kubernetes/control-plane/vars/main.yaml similarity index 100% rename from kubespray/project/roles/kubernetes/control-plane/vars/main.yaml rename to internal/resources/kubespray/project/roles/kubernetes/control-plane/vars/main.yaml diff --git a/kubespray/project/roles/kubernetes/kubeadm/defaults/main.yml b/internal/resources/kubespray/project/roles/kubernetes/kubeadm/defaults/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes/kubeadm/defaults/main.yml rename to internal/resources/kubespray/project/roles/kubernetes/kubeadm/defaults/main.yml diff --git a/kubespray/project/roles/kubernetes/kubeadm/handlers/main.yml b/internal/resources/kubespray/project/roles/kubernetes/kubeadm/handlers/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes/kubeadm/handlers/main.yml rename to internal/resources/kubespray/project/roles/kubernetes/kubeadm/handlers/main.yml diff --git a/kubespray/project/roles/kubernetes/kubeadm/meta/main.yml b/internal/resources/kubespray/project/roles/kubernetes/kubeadm/meta/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes/kubeadm/meta/main.yml rename to internal/resources/kubespray/project/roles/kubernetes/kubeadm/meta/main.yml diff --git a/kubespray/project/roles/kubernetes/kubeadm/tasks/kubeadm_etcd_node.yml b/internal/resources/kubespray/project/roles/kubernetes/kubeadm/tasks/kubeadm_etcd_node.yml similarity index 100% rename from kubespray/project/roles/kubernetes/kubeadm/tasks/kubeadm_etcd_node.yml rename to internal/resources/kubespray/project/roles/kubernetes/kubeadm/tasks/kubeadm_etcd_node.yml diff --git a/kubespray/project/roles/kubernetes/kubeadm/tasks/main.yml b/internal/resources/kubespray/project/roles/kubernetes/kubeadm/tasks/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes/kubeadm/tasks/main.yml rename to internal/resources/kubespray/project/roles/kubernetes/kubeadm/tasks/main.yml diff --git a/kubespray/project/roles/kubernetes/kubeadm/templates/kubeadm-client.conf.j2 b/internal/resources/kubespray/project/roles/kubernetes/kubeadm/templates/kubeadm-client.conf.j2 similarity index 100% rename from kubespray/project/roles/kubernetes/kubeadm/templates/kubeadm-client.conf.j2 rename to internal/resources/kubespray/project/roles/kubernetes/kubeadm/templates/kubeadm-client.conf.j2 diff --git a/kubespray/project/roles/kubernetes/kubeadm_common/defaults/main.yml b/internal/resources/kubespray/project/roles/kubernetes/kubeadm_common/defaults/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes/kubeadm_common/defaults/main.yml rename to internal/resources/kubespray/project/roles/kubernetes/kubeadm_common/defaults/main.yml diff --git a/kubespray/project/roles/kubernetes/kubeadm_common/tasks/main.yml b/internal/resources/kubespray/project/roles/kubernetes/kubeadm_common/tasks/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes/kubeadm_common/tasks/main.yml rename to internal/resources/kubespray/project/roles/kubernetes/kubeadm_common/tasks/main.yml diff --git a/kubespray/project/roles/kubernetes/node-label/tasks/main.yml b/internal/resources/kubespray/project/roles/kubernetes/node-label/tasks/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes/node-label/tasks/main.yml rename to internal/resources/kubespray/project/roles/kubernetes/node-label/tasks/main.yml diff --git a/kubespray/project/roles/kubernetes/node-taint/tasks/main.yml b/internal/resources/kubespray/project/roles/kubernetes/node-taint/tasks/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes/node-taint/tasks/main.yml rename to internal/resources/kubespray/project/roles/kubernetes/node-taint/tasks/main.yml diff --git a/kubespray/project/roles/kubernetes/node/defaults/main.yml b/internal/resources/kubespray/project/roles/kubernetes/node/defaults/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes/node/defaults/main.yml rename to internal/resources/kubespray/project/roles/kubernetes/node/defaults/main.yml diff --git a/kubespray/project/roles/kubernetes/node/handlers/main.yml b/internal/resources/kubespray/project/roles/kubernetes/node/handlers/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes/node/handlers/main.yml rename to internal/resources/kubespray/project/roles/kubernetes/node/handlers/main.yml diff --git a/kubespray/project/roles/kubernetes/node/tasks/facts.yml b/internal/resources/kubespray/project/roles/kubernetes/node/tasks/facts.yml similarity index 100% rename from kubespray/project/roles/kubernetes/node/tasks/facts.yml rename to internal/resources/kubespray/project/roles/kubernetes/node/tasks/facts.yml diff --git a/kubespray/project/roles/kubernetes/node/tasks/install.yml b/internal/resources/kubespray/project/roles/kubernetes/node/tasks/install.yml similarity index 100% rename from kubespray/project/roles/kubernetes/node/tasks/install.yml rename to internal/resources/kubespray/project/roles/kubernetes/node/tasks/install.yml diff --git a/kubespray/project/roles/kubernetes/node/tasks/kubelet.yml b/internal/resources/kubespray/project/roles/kubernetes/node/tasks/kubelet.yml similarity index 100% rename from kubespray/project/roles/kubernetes/node/tasks/kubelet.yml rename to internal/resources/kubespray/project/roles/kubernetes/node/tasks/kubelet.yml diff --git a/kubespray/project/roles/kubernetes/node/tasks/loadbalancer/haproxy.yml b/internal/resources/kubespray/project/roles/kubernetes/node/tasks/loadbalancer/haproxy.yml similarity index 100% rename from kubespray/project/roles/kubernetes/node/tasks/loadbalancer/haproxy.yml rename to internal/resources/kubespray/project/roles/kubernetes/node/tasks/loadbalancer/haproxy.yml diff --git a/kubespray/project/roles/kubernetes/node/tasks/loadbalancer/kube-vip.yml b/internal/resources/kubespray/project/roles/kubernetes/node/tasks/loadbalancer/kube-vip.yml similarity index 100% rename from kubespray/project/roles/kubernetes/node/tasks/loadbalancer/kube-vip.yml rename to internal/resources/kubespray/project/roles/kubernetes/node/tasks/loadbalancer/kube-vip.yml diff --git a/kubespray/project/roles/kubernetes/node/tasks/loadbalancer/nginx-proxy.yml b/internal/resources/kubespray/project/roles/kubernetes/node/tasks/loadbalancer/nginx-proxy.yml similarity index 100% rename from kubespray/project/roles/kubernetes/node/tasks/loadbalancer/nginx-proxy.yml rename to internal/resources/kubespray/project/roles/kubernetes/node/tasks/loadbalancer/nginx-proxy.yml diff --git a/kubespray/project/roles/kubernetes/node/tasks/main.yml b/internal/resources/kubespray/project/roles/kubernetes/node/tasks/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes/node/tasks/main.yml rename to internal/resources/kubespray/project/roles/kubernetes/node/tasks/main.yml diff --git a/kubespray/project/roles/kubernetes/node/templates/http-proxy.conf.j2 b/internal/resources/kubespray/project/roles/kubernetes/node/templates/http-proxy.conf.j2 similarity index 100% rename from kubespray/project/roles/kubernetes/node/templates/http-proxy.conf.j2 rename to internal/resources/kubespray/project/roles/kubernetes/node/templates/http-proxy.conf.j2 diff --git a/kubespray/project/roles/kubernetes/node/templates/kubelet-config.v1beta1.yaml.j2 b/internal/resources/kubespray/project/roles/kubernetes/node/templates/kubelet-config.v1beta1.yaml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes/node/templates/kubelet-config.v1beta1.yaml.j2 rename to internal/resources/kubespray/project/roles/kubernetes/node/templates/kubelet-config.v1beta1.yaml.j2 diff --git a/kubespray/project/roles/kubernetes/node/templates/kubelet.env.v1beta1.j2 b/internal/resources/kubespray/project/roles/kubernetes/node/templates/kubelet.env.v1beta1.j2 similarity index 100% rename from kubespray/project/roles/kubernetes/node/templates/kubelet.env.v1beta1.j2 rename to internal/resources/kubespray/project/roles/kubernetes/node/templates/kubelet.env.v1beta1.j2 diff --git a/kubespray/project/roles/kubernetes/node/templates/kubelet.service.j2 b/internal/resources/kubespray/project/roles/kubernetes/node/templates/kubelet.service.j2 similarity index 100% rename from kubespray/project/roles/kubernetes/node/templates/kubelet.service.j2 rename to internal/resources/kubespray/project/roles/kubernetes/node/templates/kubelet.service.j2 diff --git a/kubespray/project/roles/kubernetes/node/templates/loadbalancer/haproxy.cfg.j2 b/internal/resources/kubespray/project/roles/kubernetes/node/templates/loadbalancer/haproxy.cfg.j2 similarity index 100% rename from kubespray/project/roles/kubernetes/node/templates/loadbalancer/haproxy.cfg.j2 rename to internal/resources/kubespray/project/roles/kubernetes/node/templates/loadbalancer/haproxy.cfg.j2 diff --git a/kubespray/project/roles/kubernetes/node/templates/loadbalancer/nginx.conf.j2 b/internal/resources/kubespray/project/roles/kubernetes/node/templates/loadbalancer/nginx.conf.j2 similarity index 100% rename from kubespray/project/roles/kubernetes/node/templates/loadbalancer/nginx.conf.j2 rename to internal/resources/kubespray/project/roles/kubernetes/node/templates/loadbalancer/nginx.conf.j2 diff --git a/kubespray/project/roles/kubernetes/node/templates/manifests/haproxy.manifest.j2 b/internal/resources/kubespray/project/roles/kubernetes/node/templates/manifests/haproxy.manifest.j2 similarity index 100% rename from kubespray/project/roles/kubernetes/node/templates/manifests/haproxy.manifest.j2 rename to internal/resources/kubespray/project/roles/kubernetes/node/templates/manifests/haproxy.manifest.j2 diff --git a/kubespray/project/roles/kubernetes/node/templates/manifests/kube-vip.manifest.j2 b/internal/resources/kubespray/project/roles/kubernetes/node/templates/manifests/kube-vip.manifest.j2 similarity index 100% rename from kubespray/project/roles/kubernetes/node/templates/manifests/kube-vip.manifest.j2 rename to internal/resources/kubespray/project/roles/kubernetes/node/templates/manifests/kube-vip.manifest.j2 diff --git a/kubespray/project/roles/kubernetes/node/templates/manifests/nginx-proxy.manifest.j2 b/internal/resources/kubespray/project/roles/kubernetes/node/templates/manifests/nginx-proxy.manifest.j2 similarity index 100% rename from kubespray/project/roles/kubernetes/node/templates/manifests/nginx-proxy.manifest.j2 rename to internal/resources/kubespray/project/roles/kubernetes/node/templates/manifests/nginx-proxy.manifest.j2 diff --git a/kubespray/project/roles/kubernetes/node/templates/node-kubeconfig.yaml.j2 b/internal/resources/kubespray/project/roles/kubernetes/node/templates/node-kubeconfig.yaml.j2 similarity index 100% rename from kubespray/project/roles/kubernetes/node/templates/node-kubeconfig.yaml.j2 rename to internal/resources/kubespray/project/roles/kubernetes/node/templates/node-kubeconfig.yaml.j2 diff --git a/kubespray/project/roles/kubernetes/node/vars/fedora.yml b/internal/resources/kubespray/project/roles/kubernetes/node/vars/fedora.yml similarity index 100% rename from kubespray/project/roles/kubernetes/node/vars/fedora.yml rename to internal/resources/kubespray/project/roles/kubernetes/node/vars/fedora.yml diff --git a/kubespray/project/roles/kubernetes/node/vars/ubuntu-18.yml b/internal/resources/kubespray/project/roles/kubernetes/node/vars/ubuntu-18.yml similarity index 100% rename from kubespray/project/roles/kubernetes/node/vars/ubuntu-18.yml rename to internal/resources/kubespray/project/roles/kubernetes/node/vars/ubuntu-18.yml diff --git a/kubespray/project/roles/kubernetes/node/vars/ubuntu-20.yml b/internal/resources/kubespray/project/roles/kubernetes/node/vars/ubuntu-20.yml similarity index 100% rename from kubespray/project/roles/kubernetes/node/vars/ubuntu-20.yml rename to internal/resources/kubespray/project/roles/kubernetes/node/vars/ubuntu-20.yml diff --git a/kubespray/project/roles/kubernetes/node/vars/ubuntu-22.yml b/internal/resources/kubespray/project/roles/kubernetes/node/vars/ubuntu-22.yml similarity index 100% rename from kubespray/project/roles/kubernetes/node/vars/ubuntu-22.yml rename to internal/resources/kubespray/project/roles/kubernetes/node/vars/ubuntu-22.yml diff --git a/kubespray/project/roles/kubernetes/node/vars/ubuntu-24.yml b/internal/resources/kubespray/project/roles/kubernetes/node/vars/ubuntu-24.yml similarity index 100% rename from kubespray/project/roles/kubernetes/node/vars/ubuntu-24.yml rename to internal/resources/kubespray/project/roles/kubernetes/node/vars/ubuntu-24.yml diff --git a/kubespray/project/roles/kubernetes/preinstall/defaults/main.yml b/internal/resources/kubespray/project/roles/kubernetes/preinstall/defaults/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes/preinstall/defaults/main.yml rename to internal/resources/kubespray/project/roles/kubernetes/preinstall/defaults/main.yml diff --git a/kubespray/project/roles/kubernetes/preinstall/files/dhclient_nodnsupdate b/internal/resources/kubespray/project/roles/kubernetes/preinstall/files/dhclient_nodnsupdate similarity index 100% rename from kubespray/project/roles/kubernetes/preinstall/files/dhclient_nodnsupdate rename to internal/resources/kubespray/project/roles/kubernetes/preinstall/files/dhclient_nodnsupdate diff --git a/kubespray/project/roles/kubernetes/preinstall/handlers/main.yml b/internal/resources/kubespray/project/roles/kubernetes/preinstall/handlers/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes/preinstall/handlers/main.yml rename to internal/resources/kubespray/project/roles/kubernetes/preinstall/handlers/main.yml diff --git a/kubespray/project/roles/kubernetes/preinstall/meta/main.yml b/internal/resources/kubespray/project/roles/kubernetes/preinstall/meta/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes/preinstall/meta/main.yml rename to internal/resources/kubespray/project/roles/kubernetes/preinstall/meta/main.yml diff --git a/kubespray/project/roles/kubernetes/preinstall/tasks/0010-swapoff.yml b/internal/resources/kubespray/project/roles/kubernetes/preinstall/tasks/0010-swapoff.yml similarity index 100% rename from kubespray/project/roles/kubernetes/preinstall/tasks/0010-swapoff.yml rename to internal/resources/kubespray/project/roles/kubernetes/preinstall/tasks/0010-swapoff.yml diff --git a/kubespray/project/roles/kubernetes/preinstall/tasks/0020-set_facts.yml b/internal/resources/kubespray/project/roles/kubernetes/preinstall/tasks/0020-set_facts.yml similarity index 100% rename from kubespray/project/roles/kubernetes/preinstall/tasks/0020-set_facts.yml rename to internal/resources/kubespray/project/roles/kubernetes/preinstall/tasks/0020-set_facts.yml diff --git a/kubespray/project/roles/kubernetes/preinstall/tasks/0040-verify-settings.yml b/internal/resources/kubespray/project/roles/kubernetes/preinstall/tasks/0040-verify-settings.yml similarity index 100% rename from kubespray/project/roles/kubernetes/preinstall/tasks/0040-verify-settings.yml rename to internal/resources/kubespray/project/roles/kubernetes/preinstall/tasks/0040-verify-settings.yml diff --git a/kubespray/project/roles/kubernetes/preinstall/tasks/0050-create_directories.yml b/internal/resources/kubespray/project/roles/kubernetes/preinstall/tasks/0050-create_directories.yml similarity index 100% rename from kubespray/project/roles/kubernetes/preinstall/tasks/0050-create_directories.yml rename to internal/resources/kubespray/project/roles/kubernetes/preinstall/tasks/0050-create_directories.yml diff --git a/kubespray/project/roles/kubernetes/preinstall/tasks/0060-resolvconf.yml b/internal/resources/kubespray/project/roles/kubernetes/preinstall/tasks/0060-resolvconf.yml similarity index 100% rename from kubespray/project/roles/kubernetes/preinstall/tasks/0060-resolvconf.yml rename to internal/resources/kubespray/project/roles/kubernetes/preinstall/tasks/0060-resolvconf.yml diff --git a/kubespray/project/roles/kubernetes/preinstall/tasks/0061-systemd-resolved.yml b/internal/resources/kubespray/project/roles/kubernetes/preinstall/tasks/0061-systemd-resolved.yml similarity index 100% rename from kubespray/project/roles/kubernetes/preinstall/tasks/0061-systemd-resolved.yml rename to internal/resources/kubespray/project/roles/kubernetes/preinstall/tasks/0061-systemd-resolved.yml diff --git a/kubespray/project/roles/kubernetes/preinstall/tasks/0062-networkmanager-unmanaged-devices.yml b/internal/resources/kubespray/project/roles/kubernetes/preinstall/tasks/0062-networkmanager-unmanaged-devices.yml similarity index 100% rename from kubespray/project/roles/kubernetes/preinstall/tasks/0062-networkmanager-unmanaged-devices.yml rename to internal/resources/kubespray/project/roles/kubernetes/preinstall/tasks/0062-networkmanager-unmanaged-devices.yml diff --git a/kubespray/project/roles/kubernetes/preinstall/tasks/0063-networkmanager-dns.yml b/internal/resources/kubespray/project/roles/kubernetes/preinstall/tasks/0063-networkmanager-dns.yml similarity index 100% rename from kubespray/project/roles/kubernetes/preinstall/tasks/0063-networkmanager-dns.yml rename to internal/resources/kubespray/project/roles/kubernetes/preinstall/tasks/0063-networkmanager-dns.yml diff --git a/kubespray/project/roles/kubernetes/preinstall/tasks/0080-system-configurations.yml b/internal/resources/kubespray/project/roles/kubernetes/preinstall/tasks/0080-system-configurations.yml similarity index 100% rename from kubespray/project/roles/kubernetes/preinstall/tasks/0080-system-configurations.yml rename to internal/resources/kubespray/project/roles/kubernetes/preinstall/tasks/0080-system-configurations.yml diff --git a/kubespray/project/roles/kubernetes/preinstall/tasks/0081-ntp-configurations.yml b/internal/resources/kubespray/project/roles/kubernetes/preinstall/tasks/0081-ntp-configurations.yml similarity index 100% rename from kubespray/project/roles/kubernetes/preinstall/tasks/0081-ntp-configurations.yml rename to internal/resources/kubespray/project/roles/kubernetes/preinstall/tasks/0081-ntp-configurations.yml diff --git a/kubespray/project/roles/kubernetes/preinstall/tasks/0090-etchosts.yml b/internal/resources/kubespray/project/roles/kubernetes/preinstall/tasks/0090-etchosts.yml similarity index 100% rename from kubespray/project/roles/kubernetes/preinstall/tasks/0090-etchosts.yml rename to internal/resources/kubespray/project/roles/kubernetes/preinstall/tasks/0090-etchosts.yml diff --git a/kubespray/project/roles/kubernetes/preinstall/tasks/0100-dhclient-hooks.yml b/internal/resources/kubespray/project/roles/kubernetes/preinstall/tasks/0100-dhclient-hooks.yml similarity index 100% rename from kubespray/project/roles/kubernetes/preinstall/tasks/0100-dhclient-hooks.yml rename to internal/resources/kubespray/project/roles/kubernetes/preinstall/tasks/0100-dhclient-hooks.yml diff --git a/kubespray/project/roles/kubernetes/preinstall/tasks/0110-dhclient-hooks-undo.yml b/internal/resources/kubespray/project/roles/kubernetes/preinstall/tasks/0110-dhclient-hooks-undo.yml similarity index 100% rename from kubespray/project/roles/kubernetes/preinstall/tasks/0110-dhclient-hooks-undo.yml rename to internal/resources/kubespray/project/roles/kubernetes/preinstall/tasks/0110-dhclient-hooks-undo.yml diff --git a/kubespray/project/roles/kubernetes/preinstall/tasks/main.yml b/internal/resources/kubespray/project/roles/kubernetes/preinstall/tasks/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes/preinstall/tasks/main.yml rename to internal/resources/kubespray/project/roles/kubernetes/preinstall/tasks/main.yml diff --git a/kubespray/project/roles/kubernetes/preinstall/templates/ansible_git.j2 b/internal/resources/kubespray/project/roles/kubernetes/preinstall/templates/ansible_git.j2 similarity index 100% rename from kubespray/project/roles/kubernetes/preinstall/templates/ansible_git.j2 rename to internal/resources/kubespray/project/roles/kubernetes/preinstall/templates/ansible_git.j2 diff --git a/kubespray/project/roles/kubernetes/preinstall/templates/chrony.conf.j2 b/internal/resources/kubespray/project/roles/kubernetes/preinstall/templates/chrony.conf.j2 similarity index 100% rename from kubespray/project/roles/kubernetes/preinstall/templates/chrony.conf.j2 rename to internal/resources/kubespray/project/roles/kubernetes/preinstall/templates/chrony.conf.j2 diff --git a/kubespray/project/roles/kubernetes/preinstall/templates/dhclient_dnsupdate.sh.j2 b/internal/resources/kubespray/project/roles/kubernetes/preinstall/templates/dhclient_dnsupdate.sh.j2 similarity index 100% rename from kubespray/project/roles/kubernetes/preinstall/templates/dhclient_dnsupdate.sh.j2 rename to internal/resources/kubespray/project/roles/kubernetes/preinstall/templates/dhclient_dnsupdate.sh.j2 diff --git a/kubespray/project/roles/kubernetes/preinstall/templates/dhclient_dnsupdate_rh.sh.j2 b/internal/resources/kubespray/project/roles/kubernetes/preinstall/templates/dhclient_dnsupdate_rh.sh.j2 similarity index 100% rename from kubespray/project/roles/kubernetes/preinstall/templates/dhclient_dnsupdate_rh.sh.j2 rename to internal/resources/kubespray/project/roles/kubernetes/preinstall/templates/dhclient_dnsupdate_rh.sh.j2 diff --git a/kubespray/project/roles/kubernetes/preinstall/templates/ntp.conf.j2 b/internal/resources/kubespray/project/roles/kubernetes/preinstall/templates/ntp.conf.j2 similarity index 100% rename from kubespray/project/roles/kubernetes/preinstall/templates/ntp.conf.j2 rename to internal/resources/kubespray/project/roles/kubernetes/preinstall/templates/ntp.conf.j2 diff --git a/kubespray/project/roles/kubernetes/preinstall/templates/resolvconf.j2 b/internal/resources/kubespray/project/roles/kubernetes/preinstall/templates/resolvconf.j2 similarity index 100% rename from kubespray/project/roles/kubernetes/preinstall/templates/resolvconf.j2 rename to internal/resources/kubespray/project/roles/kubernetes/preinstall/templates/resolvconf.j2 diff --git a/kubespray/project/roles/kubernetes/preinstall/templates/resolved.conf.j2 b/internal/resources/kubespray/project/roles/kubernetes/preinstall/templates/resolved.conf.j2 similarity index 100% rename from kubespray/project/roles/kubernetes/preinstall/templates/resolved.conf.j2 rename to internal/resources/kubespray/project/roles/kubernetes/preinstall/templates/resolved.conf.j2 diff --git a/kubespray/project/roles/kubernetes/preinstall/vars/main.yml b/internal/resources/kubespray/project/roles/kubernetes/preinstall/vars/main.yml similarity index 100% rename from kubespray/project/roles/kubernetes/preinstall/vars/main.yml rename to internal/resources/kubespray/project/roles/kubernetes/preinstall/vars/main.yml diff --git a/kubespray/project/roles/kubespray-defaults/tasks/main.yml b/internal/resources/kubespray/project/roles/kubespray-defaults/tasks/main.yml similarity index 100% rename from kubespray/project/roles/kubespray-defaults/tasks/main.yml rename to internal/resources/kubespray/project/roles/kubespray-defaults/tasks/main.yml diff --git a/kubespray/project/roles/kubespray_defaults/defaults/main/download.yml b/internal/resources/kubespray/project/roles/kubespray_defaults/defaults/main/download.yml similarity index 100% rename from kubespray/project/roles/kubespray_defaults/defaults/main/download.yml rename to internal/resources/kubespray/project/roles/kubespray_defaults/defaults/main/download.yml diff --git a/kubespray/project/roles/kubespray_defaults/defaults/main/main.yml b/internal/resources/kubespray/project/roles/kubespray_defaults/defaults/main/main.yml similarity index 100% rename from kubespray/project/roles/kubespray_defaults/defaults/main/main.yml rename to internal/resources/kubespray/project/roles/kubespray_defaults/defaults/main/main.yml diff --git a/kubespray/project/roles/kubespray_defaults/vars/main/checksums.yml b/internal/resources/kubespray/project/roles/kubespray_defaults/vars/main/checksums.yml similarity index 100% rename from kubespray/project/roles/kubespray_defaults/vars/main/checksums.yml rename to internal/resources/kubespray/project/roles/kubespray_defaults/vars/main/checksums.yml diff --git a/kubespray/project/roles/kubespray_defaults/vars/main/main.yml b/internal/resources/kubespray/project/roles/kubespray_defaults/vars/main/main.yml similarity index 100% rename from kubespray/project/roles/kubespray_defaults/vars/main/main.yml rename to internal/resources/kubespray/project/roles/kubespray_defaults/vars/main/main.yml diff --git a/kubespray/project/roles/network_facts/meta/main.yml b/internal/resources/kubespray/project/roles/network_facts/meta/main.yml similarity index 100% rename from kubespray/project/roles/network_facts/meta/main.yml rename to internal/resources/kubespray/project/roles/network_facts/meta/main.yml diff --git a/kubespray/project/roles/network_facts/tasks/main.yaml b/internal/resources/kubespray/project/roles/network_facts/tasks/main.yaml similarity index 100% rename from kubespray/project/roles/network_facts/tasks/main.yaml rename to internal/resources/kubespray/project/roles/network_facts/tasks/main.yaml diff --git a/kubespray/project/roles/network_facts/tasks/no_proxy.yml b/internal/resources/kubespray/project/roles/network_facts/tasks/no_proxy.yml similarity index 100% rename from kubespray/project/roles/network_facts/tasks/no_proxy.yml rename to internal/resources/kubespray/project/roles/network_facts/tasks/no_proxy.yml diff --git a/kubespray/project/roles/network_plugin/calico/files/openssl.conf b/internal/resources/kubespray/project/roles/network_plugin/calico/files/openssl.conf similarity index 100% rename from kubespray/project/roles/network_plugin/calico/files/openssl.conf rename to internal/resources/kubespray/project/roles/network_plugin/calico/files/openssl.conf diff --git a/kubespray/project/roles/network_plugin/calico/handlers/main.yml b/internal/resources/kubespray/project/roles/network_plugin/calico/handlers/main.yml similarity index 100% rename from kubespray/project/roles/network_plugin/calico/handlers/main.yml rename to internal/resources/kubespray/project/roles/network_plugin/calico/handlers/main.yml diff --git a/kubespray/project/roles/network_plugin/calico/meta/main.yml b/internal/resources/kubespray/project/roles/network_plugin/calico/meta/main.yml similarity index 100% rename from kubespray/project/roles/network_plugin/calico/meta/main.yml rename to internal/resources/kubespray/project/roles/network_plugin/calico/meta/main.yml diff --git a/kubespray/project/roles/network_plugin/calico/rr/defaults/main.yml b/internal/resources/kubespray/project/roles/network_plugin/calico/rr/defaults/main.yml similarity index 100% rename from kubespray/project/roles/network_plugin/calico/rr/defaults/main.yml rename to internal/resources/kubespray/project/roles/network_plugin/calico/rr/defaults/main.yml diff --git a/kubespray/project/roles/network_plugin/calico/rr/tasks/main.yml b/internal/resources/kubespray/project/roles/network_plugin/calico/rr/tasks/main.yml similarity index 100% rename from kubespray/project/roles/network_plugin/calico/rr/tasks/main.yml rename to internal/resources/kubespray/project/roles/network_plugin/calico/rr/tasks/main.yml diff --git a/kubespray/project/roles/network_plugin/calico/rr/tasks/pre.yml b/internal/resources/kubespray/project/roles/network_plugin/calico/rr/tasks/pre.yml similarity index 100% rename from kubespray/project/roles/network_plugin/calico/rr/tasks/pre.yml rename to internal/resources/kubespray/project/roles/network_plugin/calico/rr/tasks/pre.yml diff --git a/kubespray/project/roles/network_plugin/calico/rr/tasks/update-node.yml b/internal/resources/kubespray/project/roles/network_plugin/calico/rr/tasks/update-node.yml similarity index 100% rename from kubespray/project/roles/network_plugin/calico/rr/tasks/update-node.yml rename to internal/resources/kubespray/project/roles/network_plugin/calico/rr/tasks/update-node.yml diff --git a/kubespray/project/roles/network_plugin/calico/tasks/calico_apiserver_certs.yml b/internal/resources/kubespray/project/roles/network_plugin/calico/tasks/calico_apiserver_certs.yml similarity index 100% rename from kubespray/project/roles/network_plugin/calico/tasks/calico_apiserver_certs.yml rename to internal/resources/kubespray/project/roles/network_plugin/calico/tasks/calico_apiserver_certs.yml diff --git a/kubespray/project/roles/network_plugin/calico/tasks/check.yml b/internal/resources/kubespray/project/roles/network_plugin/calico/tasks/check.yml similarity index 100% rename from kubespray/project/roles/network_plugin/calico/tasks/check.yml rename to internal/resources/kubespray/project/roles/network_plugin/calico/tasks/check.yml diff --git a/kubespray/project/roles/network_plugin/calico/tasks/install.yml b/internal/resources/kubespray/project/roles/network_plugin/calico/tasks/install.yml similarity index 100% rename from kubespray/project/roles/network_plugin/calico/tasks/install.yml rename to internal/resources/kubespray/project/roles/network_plugin/calico/tasks/install.yml diff --git a/kubespray/project/roles/network_plugin/calico/tasks/main.yml b/internal/resources/kubespray/project/roles/network_plugin/calico/tasks/main.yml similarity index 100% rename from kubespray/project/roles/network_plugin/calico/tasks/main.yml rename to internal/resources/kubespray/project/roles/network_plugin/calico/tasks/main.yml diff --git a/kubespray/project/roles/network_plugin/calico/tasks/peer_with_calico_rr.yml b/internal/resources/kubespray/project/roles/network_plugin/calico/tasks/peer_with_calico_rr.yml similarity index 100% rename from kubespray/project/roles/network_plugin/calico/tasks/peer_with_calico_rr.yml rename to internal/resources/kubespray/project/roles/network_plugin/calico/tasks/peer_with_calico_rr.yml diff --git a/kubespray/project/roles/network_plugin/calico/tasks/peer_with_router.yml b/internal/resources/kubespray/project/roles/network_plugin/calico/tasks/peer_with_router.yml similarity index 100% rename from kubespray/project/roles/network_plugin/calico/tasks/peer_with_router.yml rename to internal/resources/kubespray/project/roles/network_plugin/calico/tasks/peer_with_router.yml diff --git a/kubespray/project/roles/network_plugin/calico/tasks/pre.yml b/internal/resources/kubespray/project/roles/network_plugin/calico/tasks/pre.yml similarity index 100% rename from kubespray/project/roles/network_plugin/calico/tasks/pre.yml rename to internal/resources/kubespray/project/roles/network_plugin/calico/tasks/pre.yml diff --git a/kubespray/project/roles/network_plugin/calico/tasks/repos.yml b/internal/resources/kubespray/project/roles/network_plugin/calico/tasks/repos.yml similarity index 100% rename from kubespray/project/roles/network_plugin/calico/tasks/repos.yml rename to internal/resources/kubespray/project/roles/network_plugin/calico/tasks/repos.yml diff --git a/kubespray/project/roles/network_plugin/calico/tasks/reset.yml b/internal/resources/kubespray/project/roles/network_plugin/calico/tasks/reset.yml similarity index 100% rename from kubespray/project/roles/network_plugin/calico/tasks/reset.yml rename to internal/resources/kubespray/project/roles/network_plugin/calico/tasks/reset.yml diff --git a/kubespray/project/roles/network_plugin/calico/tasks/typha_certs.yml b/internal/resources/kubespray/project/roles/network_plugin/calico/tasks/typha_certs.yml similarity index 100% rename from kubespray/project/roles/network_plugin/calico/tasks/typha_certs.yml rename to internal/resources/kubespray/project/roles/network_plugin/calico/tasks/typha_certs.yml diff --git a/kubespray/project/roles/network_plugin/calico/templates/calico-apiserver-ns.yml.j2 b/internal/resources/kubespray/project/roles/network_plugin/calico/templates/calico-apiserver-ns.yml.j2 similarity index 100% rename from kubespray/project/roles/network_plugin/calico/templates/calico-apiserver-ns.yml.j2 rename to internal/resources/kubespray/project/roles/network_plugin/calico/templates/calico-apiserver-ns.yml.j2 diff --git a/kubespray/project/roles/network_plugin/calico/templates/calico-apiserver.yml.j2 b/internal/resources/kubespray/project/roles/network_plugin/calico/templates/calico-apiserver.yml.j2 similarity index 100% rename from kubespray/project/roles/network_plugin/calico/templates/calico-apiserver.yml.j2 rename to internal/resources/kubespray/project/roles/network_plugin/calico/templates/calico-apiserver.yml.j2 diff --git a/kubespray/project/roles/network_plugin/calico/templates/calico-config.yml.j2 b/internal/resources/kubespray/project/roles/network_plugin/calico/templates/calico-config.yml.j2 similarity index 100% rename from kubespray/project/roles/network_plugin/calico/templates/calico-config.yml.j2 rename to internal/resources/kubespray/project/roles/network_plugin/calico/templates/calico-config.yml.j2 diff --git a/kubespray/project/roles/network_plugin/calico/templates/calico-cr.yml.j2 b/internal/resources/kubespray/project/roles/network_plugin/calico/templates/calico-cr.yml.j2 similarity index 100% rename from kubespray/project/roles/network_plugin/calico/templates/calico-cr.yml.j2 rename to internal/resources/kubespray/project/roles/network_plugin/calico/templates/calico-cr.yml.j2 diff --git a/kubespray/project/roles/network_plugin/calico/templates/calico-crb.yml.j2 b/internal/resources/kubespray/project/roles/network_plugin/calico/templates/calico-crb.yml.j2 similarity index 100% rename from kubespray/project/roles/network_plugin/calico/templates/calico-crb.yml.j2 rename to internal/resources/kubespray/project/roles/network_plugin/calico/templates/calico-crb.yml.j2 diff --git a/kubespray/project/roles/network_plugin/calico/templates/calico-ipamconfig.yml.j2 b/internal/resources/kubespray/project/roles/network_plugin/calico/templates/calico-ipamconfig.yml.j2 similarity index 100% rename from kubespray/project/roles/network_plugin/calico/templates/calico-ipamconfig.yml.j2 rename to internal/resources/kubespray/project/roles/network_plugin/calico/templates/calico-ipamconfig.yml.j2 diff --git a/kubespray/project/roles/network_plugin/calico/templates/calico-node-sa.yml.j2 b/internal/resources/kubespray/project/roles/network_plugin/calico/templates/calico-node-sa.yml.j2 similarity index 100% rename from kubespray/project/roles/network_plugin/calico/templates/calico-node-sa.yml.j2 rename to internal/resources/kubespray/project/roles/network_plugin/calico/templates/calico-node-sa.yml.j2 diff --git a/kubespray/project/roles/network_plugin/calico/templates/calico-node.yml.j2 b/internal/resources/kubespray/project/roles/network_plugin/calico/templates/calico-node.yml.j2 similarity index 100% rename from kubespray/project/roles/network_plugin/calico/templates/calico-node.yml.j2 rename to internal/resources/kubespray/project/roles/network_plugin/calico/templates/calico-node.yml.j2 diff --git a/kubespray/project/roles/network_plugin/calico/templates/calico-typha.yml.j2 b/internal/resources/kubespray/project/roles/network_plugin/calico/templates/calico-typha.yml.j2 similarity index 100% rename from kubespray/project/roles/network_plugin/calico/templates/calico-typha.yml.j2 rename to internal/resources/kubespray/project/roles/network_plugin/calico/templates/calico-typha.yml.j2 diff --git a/kubespray/project/roles/network_plugin/calico/templates/calicoctl.etcd.sh.j2 b/internal/resources/kubespray/project/roles/network_plugin/calico/templates/calicoctl.etcd.sh.j2 similarity index 100% rename from kubespray/project/roles/network_plugin/calico/templates/calicoctl.etcd.sh.j2 rename to internal/resources/kubespray/project/roles/network_plugin/calico/templates/calicoctl.etcd.sh.j2 diff --git a/kubespray/project/roles/network_plugin/calico/templates/calicoctl.kdd.sh.j2 b/internal/resources/kubespray/project/roles/network_plugin/calico/templates/calicoctl.kdd.sh.j2 similarity index 100% rename from kubespray/project/roles/network_plugin/calico/templates/calicoctl.kdd.sh.j2 rename to internal/resources/kubespray/project/roles/network_plugin/calico/templates/calicoctl.kdd.sh.j2 diff --git a/kubespray/project/roles/network_plugin/calico/templates/kubernetes-services-endpoint.yml.j2 b/internal/resources/kubespray/project/roles/network_plugin/calico/templates/kubernetes-services-endpoint.yml.j2 similarity index 100% rename from kubespray/project/roles/network_plugin/calico/templates/kubernetes-services-endpoint.yml.j2 rename to internal/resources/kubespray/project/roles/network_plugin/calico/templates/kubernetes-services-endpoint.yml.j2 diff --git a/kubespray/project/roles/network_plugin/calico/templates/make-ssl-calico.sh.j2 b/internal/resources/kubespray/project/roles/network_plugin/calico/templates/make-ssl-calico.sh.j2 similarity index 100% rename from kubespray/project/roles/network_plugin/calico/templates/make-ssl-calico.sh.j2 rename to internal/resources/kubespray/project/roles/network_plugin/calico/templates/make-ssl-calico.sh.j2 diff --git a/kubespray/project/roles/network_plugin/calico/vars/amazon.yml b/internal/resources/kubespray/project/roles/network_plugin/calico/vars/amazon.yml similarity index 100% rename from kubespray/project/roles/network_plugin/calico/vars/amazon.yml rename to internal/resources/kubespray/project/roles/network_plugin/calico/vars/amazon.yml diff --git a/kubespray/project/roles/network_plugin/calico/vars/centos-9.yml b/internal/resources/kubespray/project/roles/network_plugin/calico/vars/centos-9.yml similarity index 100% rename from kubespray/project/roles/network_plugin/calico/vars/centos-9.yml rename to internal/resources/kubespray/project/roles/network_plugin/calico/vars/centos-9.yml diff --git a/kubespray/project/roles/network_plugin/calico/vars/debian.yml b/internal/resources/kubespray/project/roles/network_plugin/calico/vars/debian.yml similarity index 100% rename from kubespray/project/roles/network_plugin/calico/vars/debian.yml rename to internal/resources/kubespray/project/roles/network_plugin/calico/vars/debian.yml diff --git a/kubespray/project/roles/network_plugin/calico/vars/fedora.yml b/internal/resources/kubespray/project/roles/network_plugin/calico/vars/fedora.yml similarity index 100% rename from kubespray/project/roles/network_plugin/calico/vars/fedora.yml rename to internal/resources/kubespray/project/roles/network_plugin/calico/vars/fedora.yml diff --git a/kubespray/project/roles/network_plugin/calico/vars/opensuse.yml b/internal/resources/kubespray/project/roles/network_plugin/calico/vars/opensuse.yml similarity index 100% rename from kubespray/project/roles/network_plugin/calico/vars/opensuse.yml rename to internal/resources/kubespray/project/roles/network_plugin/calico/vars/opensuse.yml diff --git a/kubespray/project/roles/network_plugin/calico/vars/redhat-9.yml b/internal/resources/kubespray/project/roles/network_plugin/calico/vars/redhat-9.yml similarity index 100% rename from kubespray/project/roles/network_plugin/calico/vars/redhat-9.yml rename to internal/resources/kubespray/project/roles/network_plugin/calico/vars/redhat-9.yml diff --git a/kubespray/project/roles/network_plugin/calico/vars/redhat.yml b/internal/resources/kubespray/project/roles/network_plugin/calico/vars/redhat.yml similarity index 100% rename from kubespray/project/roles/network_plugin/calico/vars/redhat.yml rename to internal/resources/kubespray/project/roles/network_plugin/calico/vars/redhat.yml diff --git a/kubespray/project/roles/network_plugin/calico/vars/rocky-9.yml b/internal/resources/kubespray/project/roles/network_plugin/calico/vars/rocky-9.yml similarity index 100% rename from kubespray/project/roles/network_plugin/calico/vars/rocky-9.yml rename to internal/resources/kubespray/project/roles/network_plugin/calico/vars/rocky-9.yml diff --git a/kubespray/project/roles/network_plugin/calico_defaults/defaults/main.yml b/internal/resources/kubespray/project/roles/network_plugin/calico_defaults/defaults/main.yml similarity index 100% rename from kubespray/project/roles/network_plugin/calico_defaults/defaults/main.yml rename to internal/resources/kubespray/project/roles/network_plugin/calico_defaults/defaults/main.yml diff --git a/kubespray/project/roles/network_plugin/cilium/defaults/main.yml b/internal/resources/kubespray/project/roles/network_plugin/cilium/defaults/main.yml similarity index 100% rename from kubespray/project/roles/network_plugin/cilium/defaults/main.yml rename to internal/resources/kubespray/project/roles/network_plugin/cilium/defaults/main.yml diff --git a/kubespray/project/roles/network_plugin/cilium/tasks/apply.yml b/internal/resources/kubespray/project/roles/network_plugin/cilium/tasks/apply.yml similarity index 100% rename from kubespray/project/roles/network_plugin/cilium/tasks/apply.yml rename to internal/resources/kubespray/project/roles/network_plugin/cilium/tasks/apply.yml diff --git a/kubespray/project/roles/network_plugin/cilium/tasks/check.yml b/internal/resources/kubespray/project/roles/network_plugin/cilium/tasks/check.yml similarity index 100% rename from kubespray/project/roles/network_plugin/cilium/tasks/check.yml rename to internal/resources/kubespray/project/roles/network_plugin/cilium/tasks/check.yml diff --git a/kubespray/project/roles/network_plugin/cilium/tasks/install.yml b/internal/resources/kubespray/project/roles/network_plugin/cilium/tasks/install.yml similarity index 100% rename from kubespray/project/roles/network_plugin/cilium/tasks/install.yml rename to internal/resources/kubespray/project/roles/network_plugin/cilium/tasks/install.yml diff --git a/kubespray/project/roles/network_plugin/cilium/tasks/main.yml b/internal/resources/kubespray/project/roles/network_plugin/cilium/tasks/main.yml similarity index 100% rename from kubespray/project/roles/network_plugin/cilium/tasks/main.yml rename to internal/resources/kubespray/project/roles/network_plugin/cilium/tasks/main.yml diff --git a/kubespray/project/roles/network_plugin/cilium/tasks/reset.yml b/internal/resources/kubespray/project/roles/network_plugin/cilium/tasks/reset.yml similarity index 100% rename from kubespray/project/roles/network_plugin/cilium/tasks/reset.yml rename to internal/resources/kubespray/project/roles/network_plugin/cilium/tasks/reset.yml diff --git a/kubespray/project/roles/network_plugin/cilium/tasks/reset_iface.yml b/internal/resources/kubespray/project/roles/network_plugin/cilium/tasks/reset_iface.yml similarity index 100% rename from kubespray/project/roles/network_plugin/cilium/tasks/reset_iface.yml rename to internal/resources/kubespray/project/roles/network_plugin/cilium/tasks/reset_iface.yml diff --git a/kubespray/project/roles/network_plugin/cilium/templates/000-cilium-portmap.conflist.j2 b/internal/resources/kubespray/project/roles/network_plugin/cilium/templates/000-cilium-portmap.conflist.j2 similarity index 100% rename from kubespray/project/roles/network_plugin/cilium/templates/000-cilium-portmap.conflist.j2 rename to internal/resources/kubespray/project/roles/network_plugin/cilium/templates/000-cilium-portmap.conflist.j2 diff --git a/kubespray/project/roles/network_plugin/cilium/templates/cilium/cilium-bgp-advertisement.yml.j2 b/internal/resources/kubespray/project/roles/network_plugin/cilium/templates/cilium/cilium-bgp-advertisement.yml.j2 similarity index 100% rename from kubespray/project/roles/network_plugin/cilium/templates/cilium/cilium-bgp-advertisement.yml.j2 rename to internal/resources/kubespray/project/roles/network_plugin/cilium/templates/cilium/cilium-bgp-advertisement.yml.j2 diff --git a/kubespray/project/roles/network_plugin/cilium/templates/cilium/cilium-bgp-cluster-config.yml.j2 b/internal/resources/kubespray/project/roles/network_plugin/cilium/templates/cilium/cilium-bgp-cluster-config.yml.j2 similarity index 100% rename from kubespray/project/roles/network_plugin/cilium/templates/cilium/cilium-bgp-cluster-config.yml.j2 rename to internal/resources/kubespray/project/roles/network_plugin/cilium/templates/cilium/cilium-bgp-cluster-config.yml.j2 diff --git a/kubespray/project/roles/network_plugin/cilium/templates/cilium/cilium-bgp-node-config-override.yml.j2 b/internal/resources/kubespray/project/roles/network_plugin/cilium/templates/cilium/cilium-bgp-node-config-override.yml.j2 similarity index 100% rename from kubespray/project/roles/network_plugin/cilium/templates/cilium/cilium-bgp-node-config-override.yml.j2 rename to internal/resources/kubespray/project/roles/network_plugin/cilium/templates/cilium/cilium-bgp-node-config-override.yml.j2 diff --git a/kubespray/project/roles/network_plugin/cilium/templates/cilium/cilium-bgp-peer-config.yml.j2 b/internal/resources/kubespray/project/roles/network_plugin/cilium/templates/cilium/cilium-bgp-peer-config.yml.j2 similarity index 100% rename from kubespray/project/roles/network_plugin/cilium/templates/cilium/cilium-bgp-peer-config.yml.j2 rename to internal/resources/kubespray/project/roles/network_plugin/cilium/templates/cilium/cilium-bgp-peer-config.yml.j2 diff --git a/kubespray/project/roles/network_plugin/cilium/templates/cilium/cilium-bgp-peering-policy.yml.j2 b/internal/resources/kubespray/project/roles/network_plugin/cilium/templates/cilium/cilium-bgp-peering-policy.yml.j2 similarity index 100% rename from kubespray/project/roles/network_plugin/cilium/templates/cilium/cilium-bgp-peering-policy.yml.j2 rename to internal/resources/kubespray/project/roles/network_plugin/cilium/templates/cilium/cilium-bgp-peering-policy.yml.j2 diff --git a/kubespray/project/roles/network_plugin/cilium/templates/cilium/cilium-loadbalancer-ip-pool.yml.j2 b/internal/resources/kubespray/project/roles/network_plugin/cilium/templates/cilium/cilium-loadbalancer-ip-pool.yml.j2 similarity index 100% rename from kubespray/project/roles/network_plugin/cilium/templates/cilium/cilium-loadbalancer-ip-pool.yml.j2 rename to internal/resources/kubespray/project/roles/network_plugin/cilium/templates/cilium/cilium-loadbalancer-ip-pool.yml.j2 diff --git a/kubespray/project/roles/network_plugin/cilium/templates/values.yaml.j2 b/internal/resources/kubespray/project/roles/network_plugin/cilium/templates/values.yaml.j2 similarity index 100% rename from kubespray/project/roles/network_plugin/cilium/templates/values.yaml.j2 rename to internal/resources/kubespray/project/roles/network_plugin/cilium/templates/values.yaml.j2 diff --git a/kubespray/project/roles/network_plugin/cni/defaults/main.yml b/internal/resources/kubespray/project/roles/network_plugin/cni/defaults/main.yml similarity index 100% rename from kubespray/project/roles/network_plugin/cni/defaults/main.yml rename to internal/resources/kubespray/project/roles/network_plugin/cni/defaults/main.yml diff --git a/kubespray/project/roles/network_plugin/cni/tasks/main.yml b/internal/resources/kubespray/project/roles/network_plugin/cni/tasks/main.yml similarity index 100% rename from kubespray/project/roles/network_plugin/cni/tasks/main.yml rename to internal/resources/kubespray/project/roles/network_plugin/cni/tasks/main.yml diff --git a/kubespray/project/roles/network_plugin/custom_cni/defaults/main.yml b/internal/resources/kubespray/project/roles/network_plugin/custom_cni/defaults/main.yml similarity index 100% rename from kubespray/project/roles/network_plugin/custom_cni/defaults/main.yml rename to internal/resources/kubespray/project/roles/network_plugin/custom_cni/defaults/main.yml diff --git a/kubespray/project/roles/network_plugin/custom_cni/meta/main.yml b/internal/resources/kubespray/project/roles/network_plugin/custom_cni/meta/main.yml similarity index 100% rename from kubespray/project/roles/network_plugin/custom_cni/meta/main.yml rename to internal/resources/kubespray/project/roles/network_plugin/custom_cni/meta/main.yml diff --git a/kubespray/project/roles/network_plugin/custom_cni/tasks/main.yml b/internal/resources/kubespray/project/roles/network_plugin/custom_cni/tasks/main.yml similarity index 100% rename from kubespray/project/roles/network_plugin/custom_cni/tasks/main.yml rename to internal/resources/kubespray/project/roles/network_plugin/custom_cni/tasks/main.yml diff --git a/kubespray/project/roles/network_plugin/flannel/defaults/main.yml b/internal/resources/kubespray/project/roles/network_plugin/flannel/defaults/main.yml similarity index 100% rename from kubespray/project/roles/network_plugin/flannel/defaults/main.yml rename to internal/resources/kubespray/project/roles/network_plugin/flannel/defaults/main.yml diff --git a/kubespray/project/roles/network_plugin/flannel/meta/main.yml b/internal/resources/kubespray/project/roles/network_plugin/flannel/meta/main.yml similarity index 100% rename from kubespray/project/roles/network_plugin/flannel/meta/main.yml rename to internal/resources/kubespray/project/roles/network_plugin/flannel/meta/main.yml diff --git a/kubespray/project/roles/network_plugin/flannel/tasks/main.yml b/internal/resources/kubespray/project/roles/network_plugin/flannel/tasks/main.yml similarity index 100% rename from kubespray/project/roles/network_plugin/flannel/tasks/main.yml rename to internal/resources/kubespray/project/roles/network_plugin/flannel/tasks/main.yml diff --git a/kubespray/project/roles/network_plugin/flannel/tasks/reset.yml b/internal/resources/kubespray/project/roles/network_plugin/flannel/tasks/reset.yml similarity index 100% rename from kubespray/project/roles/network_plugin/flannel/tasks/reset.yml rename to internal/resources/kubespray/project/roles/network_plugin/flannel/tasks/reset.yml diff --git a/kubespray/project/roles/network_plugin/flannel/templates/cni-flannel-rbac.yml.j2 b/internal/resources/kubespray/project/roles/network_plugin/flannel/templates/cni-flannel-rbac.yml.j2 similarity index 100% rename from kubespray/project/roles/network_plugin/flannel/templates/cni-flannel-rbac.yml.j2 rename to internal/resources/kubespray/project/roles/network_plugin/flannel/templates/cni-flannel-rbac.yml.j2 diff --git a/kubespray/project/roles/network_plugin/flannel/templates/cni-flannel.yml.j2 b/internal/resources/kubespray/project/roles/network_plugin/flannel/templates/cni-flannel.yml.j2 similarity index 100% rename from kubespray/project/roles/network_plugin/flannel/templates/cni-flannel.yml.j2 rename to internal/resources/kubespray/project/roles/network_plugin/flannel/templates/cni-flannel.yml.j2 diff --git a/kubespray/project/roles/network_plugin/kube-ovn/defaults/main.yml b/internal/resources/kubespray/project/roles/network_plugin/kube-ovn/defaults/main.yml similarity index 100% rename from kubespray/project/roles/network_plugin/kube-ovn/defaults/main.yml rename to internal/resources/kubespray/project/roles/network_plugin/kube-ovn/defaults/main.yml diff --git a/kubespray/project/roles/network_plugin/kube-ovn/tasks/main.yml b/internal/resources/kubespray/project/roles/network_plugin/kube-ovn/tasks/main.yml similarity index 100% rename from kubespray/project/roles/network_plugin/kube-ovn/tasks/main.yml rename to internal/resources/kubespray/project/roles/network_plugin/kube-ovn/tasks/main.yml diff --git a/kubespray/project/roles/network_plugin/kube-ovn/templates/cni-kube-ovn-crd.yml.j2 b/internal/resources/kubespray/project/roles/network_plugin/kube-ovn/templates/cni-kube-ovn-crd.yml.j2 similarity index 100% rename from kubespray/project/roles/network_plugin/kube-ovn/templates/cni-kube-ovn-crd.yml.j2 rename to internal/resources/kubespray/project/roles/network_plugin/kube-ovn/templates/cni-kube-ovn-crd.yml.j2 diff --git a/kubespray/project/roles/network_plugin/kube-ovn/templates/cni-kube-ovn.yml.j2 b/internal/resources/kubespray/project/roles/network_plugin/kube-ovn/templates/cni-kube-ovn.yml.j2 similarity index 100% rename from kubespray/project/roles/network_plugin/kube-ovn/templates/cni-kube-ovn.yml.j2 rename to internal/resources/kubespray/project/roles/network_plugin/kube-ovn/templates/cni-kube-ovn.yml.j2 diff --git a/kubespray/project/roles/network_plugin/kube-ovn/templates/cni-ovn.yml.j2 b/internal/resources/kubespray/project/roles/network_plugin/kube-ovn/templates/cni-ovn.yml.j2 similarity index 100% rename from kubespray/project/roles/network_plugin/kube-ovn/templates/cni-ovn.yml.j2 rename to internal/resources/kubespray/project/roles/network_plugin/kube-ovn/templates/cni-ovn.yml.j2 diff --git a/kubespray/project/roles/network_plugin/kube-router/defaults/main.yml b/internal/resources/kubespray/project/roles/network_plugin/kube-router/defaults/main.yml similarity index 100% rename from kubespray/project/roles/network_plugin/kube-router/defaults/main.yml rename to internal/resources/kubespray/project/roles/network_plugin/kube-router/defaults/main.yml diff --git a/kubespray/project/roles/network_plugin/kube-router/handlers/main.yml b/internal/resources/kubespray/project/roles/network_plugin/kube-router/handlers/main.yml similarity index 100% rename from kubespray/project/roles/network_plugin/kube-router/handlers/main.yml rename to internal/resources/kubespray/project/roles/network_plugin/kube-router/handlers/main.yml diff --git a/kubespray/project/roles/network_plugin/kube-router/meta/main.yml b/internal/resources/kubespray/project/roles/network_plugin/kube-router/meta/main.yml similarity index 100% rename from kubespray/project/roles/network_plugin/kube-router/meta/main.yml rename to internal/resources/kubespray/project/roles/network_plugin/kube-router/meta/main.yml diff --git a/kubespray/project/roles/network_plugin/kube-router/tasks/annotate.yml b/internal/resources/kubespray/project/roles/network_plugin/kube-router/tasks/annotate.yml similarity index 100% rename from kubespray/project/roles/network_plugin/kube-router/tasks/annotate.yml rename to internal/resources/kubespray/project/roles/network_plugin/kube-router/tasks/annotate.yml diff --git a/kubespray/project/roles/network_plugin/kube-router/tasks/main.yml b/internal/resources/kubespray/project/roles/network_plugin/kube-router/tasks/main.yml similarity index 100% rename from kubespray/project/roles/network_plugin/kube-router/tasks/main.yml rename to internal/resources/kubespray/project/roles/network_plugin/kube-router/tasks/main.yml diff --git a/kubespray/project/roles/network_plugin/kube-router/tasks/reset.yml b/internal/resources/kubespray/project/roles/network_plugin/kube-router/tasks/reset.yml similarity index 100% rename from kubespray/project/roles/network_plugin/kube-router/tasks/reset.yml rename to internal/resources/kubespray/project/roles/network_plugin/kube-router/tasks/reset.yml diff --git a/kubespray/project/roles/network_plugin/kube-router/templates/cni-conf.json.j2 b/internal/resources/kubespray/project/roles/network_plugin/kube-router/templates/cni-conf.json.j2 similarity index 100% rename from kubespray/project/roles/network_plugin/kube-router/templates/cni-conf.json.j2 rename to internal/resources/kubespray/project/roles/network_plugin/kube-router/templates/cni-conf.json.j2 diff --git a/kubespray/project/roles/network_plugin/kube-router/templates/kube-router.yml.j2 b/internal/resources/kubespray/project/roles/network_plugin/kube-router/templates/kube-router.yml.j2 similarity index 100% rename from kubespray/project/roles/network_plugin/kube-router/templates/kube-router.yml.j2 rename to internal/resources/kubespray/project/roles/network_plugin/kube-router/templates/kube-router.yml.j2 diff --git a/kubespray/project/roles/network_plugin/kube-router/templates/kubeconfig.yml.j2 b/internal/resources/kubespray/project/roles/network_plugin/kube-router/templates/kubeconfig.yml.j2 similarity index 100% rename from kubespray/project/roles/network_plugin/kube-router/templates/kubeconfig.yml.j2 rename to internal/resources/kubespray/project/roles/network_plugin/kube-router/templates/kubeconfig.yml.j2 diff --git a/kubespray/project/roles/network_plugin/macvlan/defaults/main.yml b/internal/resources/kubespray/project/roles/network_plugin/macvlan/defaults/main.yml similarity index 100% rename from kubespray/project/roles/network_plugin/macvlan/defaults/main.yml rename to internal/resources/kubespray/project/roles/network_plugin/macvlan/defaults/main.yml diff --git a/kubespray/project/roles/network_plugin/macvlan/files/ifdown-local b/internal/resources/kubespray/project/roles/network_plugin/macvlan/files/ifdown-local similarity index 100% rename from kubespray/project/roles/network_plugin/macvlan/files/ifdown-local rename to internal/resources/kubespray/project/roles/network_plugin/macvlan/files/ifdown-local diff --git a/kubespray/project/roles/network_plugin/macvlan/files/ifdown-macvlan b/internal/resources/kubespray/project/roles/network_plugin/macvlan/files/ifdown-macvlan similarity index 100% rename from kubespray/project/roles/network_plugin/macvlan/files/ifdown-macvlan rename to internal/resources/kubespray/project/roles/network_plugin/macvlan/files/ifdown-macvlan diff --git a/kubespray/project/roles/network_plugin/macvlan/files/ifup-local b/internal/resources/kubespray/project/roles/network_plugin/macvlan/files/ifup-local similarity index 100% rename from kubespray/project/roles/network_plugin/macvlan/files/ifup-local rename to internal/resources/kubespray/project/roles/network_plugin/macvlan/files/ifup-local diff --git a/kubespray/project/roles/network_plugin/macvlan/files/ifup-macvlan b/internal/resources/kubespray/project/roles/network_plugin/macvlan/files/ifup-macvlan similarity index 100% rename from kubespray/project/roles/network_plugin/macvlan/files/ifup-macvlan rename to internal/resources/kubespray/project/roles/network_plugin/macvlan/files/ifup-macvlan diff --git a/kubespray/project/roles/network_plugin/macvlan/handlers/main.yml b/internal/resources/kubespray/project/roles/network_plugin/macvlan/handlers/main.yml similarity index 100% rename from kubespray/project/roles/network_plugin/macvlan/handlers/main.yml rename to internal/resources/kubespray/project/roles/network_plugin/macvlan/handlers/main.yml diff --git a/kubespray/project/roles/network_plugin/macvlan/meta/main.yml b/internal/resources/kubespray/project/roles/network_plugin/macvlan/meta/main.yml similarity index 100% rename from kubespray/project/roles/network_plugin/macvlan/meta/main.yml rename to internal/resources/kubespray/project/roles/network_plugin/macvlan/meta/main.yml diff --git a/kubespray/project/roles/network_plugin/macvlan/tasks/main.yml b/internal/resources/kubespray/project/roles/network_plugin/macvlan/tasks/main.yml similarity index 100% rename from kubespray/project/roles/network_plugin/macvlan/tasks/main.yml rename to internal/resources/kubespray/project/roles/network_plugin/macvlan/tasks/main.yml diff --git a/kubespray/project/roles/network_plugin/macvlan/templates/10-macvlan.conf.j2 b/internal/resources/kubespray/project/roles/network_plugin/macvlan/templates/10-macvlan.conf.j2 similarity index 100% rename from kubespray/project/roles/network_plugin/macvlan/templates/10-macvlan.conf.j2 rename to internal/resources/kubespray/project/roles/network_plugin/macvlan/templates/10-macvlan.conf.j2 diff --git a/kubespray/project/roles/network_plugin/macvlan/templates/99-loopback.conf.j2 b/internal/resources/kubespray/project/roles/network_plugin/macvlan/templates/99-loopback.conf.j2 similarity index 100% rename from kubespray/project/roles/network_plugin/macvlan/templates/99-loopback.conf.j2 rename to internal/resources/kubespray/project/roles/network_plugin/macvlan/templates/99-loopback.conf.j2 diff --git a/kubespray/project/roles/network_plugin/macvlan/templates/centos-network-macvlan.cfg.j2 b/internal/resources/kubespray/project/roles/network_plugin/macvlan/templates/centos-network-macvlan.cfg.j2 similarity index 100% rename from kubespray/project/roles/network_plugin/macvlan/templates/centos-network-macvlan.cfg.j2 rename to internal/resources/kubespray/project/roles/network_plugin/macvlan/templates/centos-network-macvlan.cfg.j2 diff --git a/kubespray/project/roles/network_plugin/macvlan/templates/centos-postdown-macvlan.cfg.j2 b/internal/resources/kubespray/project/roles/network_plugin/macvlan/templates/centos-postdown-macvlan.cfg.j2 similarity index 100% rename from kubespray/project/roles/network_plugin/macvlan/templates/centos-postdown-macvlan.cfg.j2 rename to internal/resources/kubespray/project/roles/network_plugin/macvlan/templates/centos-postdown-macvlan.cfg.j2 diff --git a/kubespray/project/roles/network_plugin/macvlan/templates/centos-postup-macvlan.cfg.j2 b/internal/resources/kubespray/project/roles/network_plugin/macvlan/templates/centos-postup-macvlan.cfg.j2 similarity index 100% rename from kubespray/project/roles/network_plugin/macvlan/templates/centos-postup-macvlan.cfg.j2 rename to internal/resources/kubespray/project/roles/network_plugin/macvlan/templates/centos-postup-macvlan.cfg.j2 diff --git a/kubespray/project/roles/network_plugin/macvlan/templates/centos-routes-macvlan.cfg.j2 b/internal/resources/kubespray/project/roles/network_plugin/macvlan/templates/centos-routes-macvlan.cfg.j2 similarity index 100% rename from kubespray/project/roles/network_plugin/macvlan/templates/centos-routes-macvlan.cfg.j2 rename to internal/resources/kubespray/project/roles/network_plugin/macvlan/templates/centos-routes-macvlan.cfg.j2 diff --git a/kubespray/project/roles/network_plugin/macvlan/templates/coreos-device-macvlan.cfg.j2 b/internal/resources/kubespray/project/roles/network_plugin/macvlan/templates/coreos-device-macvlan.cfg.j2 similarity index 100% rename from kubespray/project/roles/network_plugin/macvlan/templates/coreos-device-macvlan.cfg.j2 rename to internal/resources/kubespray/project/roles/network_plugin/macvlan/templates/coreos-device-macvlan.cfg.j2 diff --git a/kubespray/project/roles/network_plugin/macvlan/templates/coreos-interface-macvlan.cfg.j2 b/internal/resources/kubespray/project/roles/network_plugin/macvlan/templates/coreos-interface-macvlan.cfg.j2 similarity index 100% rename from kubespray/project/roles/network_plugin/macvlan/templates/coreos-interface-macvlan.cfg.j2 rename to internal/resources/kubespray/project/roles/network_plugin/macvlan/templates/coreos-interface-macvlan.cfg.j2 diff --git a/kubespray/project/roles/network_plugin/macvlan/templates/coreos-network-macvlan.cfg.j2 b/internal/resources/kubespray/project/roles/network_plugin/macvlan/templates/coreos-network-macvlan.cfg.j2 similarity index 100% rename from kubespray/project/roles/network_plugin/macvlan/templates/coreos-network-macvlan.cfg.j2 rename to internal/resources/kubespray/project/roles/network_plugin/macvlan/templates/coreos-network-macvlan.cfg.j2 diff --git a/kubespray/project/roles/network_plugin/macvlan/templates/coreos-service-nat_ouside.j2 b/internal/resources/kubespray/project/roles/network_plugin/macvlan/templates/coreos-service-nat_ouside.j2 similarity index 100% rename from kubespray/project/roles/network_plugin/macvlan/templates/coreos-service-nat_ouside.j2 rename to internal/resources/kubespray/project/roles/network_plugin/macvlan/templates/coreos-service-nat_ouside.j2 diff --git a/kubespray/project/roles/network_plugin/macvlan/templates/debian-network-macvlan.cfg.j2 b/internal/resources/kubespray/project/roles/network_plugin/macvlan/templates/debian-network-macvlan.cfg.j2 similarity index 100% rename from kubespray/project/roles/network_plugin/macvlan/templates/debian-network-macvlan.cfg.j2 rename to internal/resources/kubespray/project/roles/network_plugin/macvlan/templates/debian-network-macvlan.cfg.j2 diff --git a/kubespray/project/roles/network_plugin/meta/main.yml b/internal/resources/kubespray/project/roles/network_plugin/meta/main.yml similarity index 100% rename from kubespray/project/roles/network_plugin/meta/main.yml rename to internal/resources/kubespray/project/roles/network_plugin/meta/main.yml diff --git a/kubespray/project/roles/network_plugin/multus/defaults/main.yml b/internal/resources/kubespray/project/roles/network_plugin/multus/defaults/main.yml similarity index 100% rename from kubespray/project/roles/network_plugin/multus/defaults/main.yml rename to internal/resources/kubespray/project/roles/network_plugin/multus/defaults/main.yml diff --git a/kubespray/project/roles/network_plugin/multus/files/multus-clusterrole.yml b/internal/resources/kubespray/project/roles/network_plugin/multus/files/multus-clusterrole.yml similarity index 100% rename from kubespray/project/roles/network_plugin/multus/files/multus-clusterrole.yml rename to internal/resources/kubespray/project/roles/network_plugin/multus/files/multus-clusterrole.yml diff --git a/kubespray/project/roles/network_plugin/multus/files/multus-clusterrolebinding.yml b/internal/resources/kubespray/project/roles/network_plugin/multus/files/multus-clusterrolebinding.yml similarity index 100% rename from kubespray/project/roles/network_plugin/multus/files/multus-clusterrolebinding.yml rename to internal/resources/kubespray/project/roles/network_plugin/multus/files/multus-clusterrolebinding.yml diff --git a/kubespray/project/roles/network_plugin/multus/files/multus-crd.yml b/internal/resources/kubespray/project/roles/network_plugin/multus/files/multus-crd.yml similarity index 100% rename from kubespray/project/roles/network_plugin/multus/files/multus-crd.yml rename to internal/resources/kubespray/project/roles/network_plugin/multus/files/multus-crd.yml diff --git a/kubespray/project/roles/network_plugin/multus/files/multus-serviceaccount.yml b/internal/resources/kubespray/project/roles/network_plugin/multus/files/multus-serviceaccount.yml similarity index 100% rename from kubespray/project/roles/network_plugin/multus/files/multus-serviceaccount.yml rename to internal/resources/kubespray/project/roles/network_plugin/multus/files/multus-serviceaccount.yml diff --git a/kubespray/project/roles/network_plugin/multus/meta/main.yml b/internal/resources/kubespray/project/roles/network_plugin/multus/meta/main.yml similarity index 100% rename from kubespray/project/roles/network_plugin/multus/meta/main.yml rename to internal/resources/kubespray/project/roles/network_plugin/multus/meta/main.yml diff --git a/kubespray/project/roles/network_plugin/multus/tasks/main.yml b/internal/resources/kubespray/project/roles/network_plugin/multus/tasks/main.yml similarity index 100% rename from kubespray/project/roles/network_plugin/multus/tasks/main.yml rename to internal/resources/kubespray/project/roles/network_plugin/multus/tasks/main.yml diff --git a/kubespray/project/roles/network_plugin/multus/templates/multus-daemonset.yml.j2 b/internal/resources/kubespray/project/roles/network_plugin/multus/templates/multus-daemonset.yml.j2 similarity index 100% rename from kubespray/project/roles/network_plugin/multus/templates/multus-daemonset.yml.j2 rename to internal/resources/kubespray/project/roles/network_plugin/multus/templates/multus-daemonset.yml.j2 diff --git a/kubespray/project/roles/network_plugin/ovn4nfv/tasks/main.yml b/internal/resources/kubespray/project/roles/network_plugin/ovn4nfv/tasks/main.yml similarity index 100% rename from kubespray/project/roles/network_plugin/ovn4nfv/tasks/main.yml rename to internal/resources/kubespray/project/roles/network_plugin/ovn4nfv/tasks/main.yml diff --git a/kubespray/project/roles/network_plugin/weave/defaults/main.yml b/internal/resources/kubespray/project/roles/network_plugin/weave/defaults/main.yml similarity index 100% rename from kubespray/project/roles/network_plugin/weave/defaults/main.yml rename to internal/resources/kubespray/project/roles/network_plugin/weave/defaults/main.yml diff --git a/kubespray/project/roles/network_plugin/weave/meta/main.yml b/internal/resources/kubespray/project/roles/network_plugin/weave/meta/main.yml similarity index 100% rename from kubespray/project/roles/network_plugin/weave/meta/main.yml rename to internal/resources/kubespray/project/roles/network_plugin/weave/meta/main.yml diff --git a/kubespray/project/roles/network_plugin/weave/tasks/main.yml b/internal/resources/kubespray/project/roles/network_plugin/weave/tasks/main.yml similarity index 100% rename from kubespray/project/roles/network_plugin/weave/tasks/main.yml rename to internal/resources/kubespray/project/roles/network_plugin/weave/tasks/main.yml diff --git a/kubespray/project/roles/network_plugin/weave/templates/10-weave.conflist.j2 b/internal/resources/kubespray/project/roles/network_plugin/weave/templates/10-weave.conflist.j2 similarity index 100% rename from kubespray/project/roles/network_plugin/weave/templates/10-weave.conflist.j2 rename to internal/resources/kubespray/project/roles/network_plugin/weave/templates/10-weave.conflist.j2 diff --git a/kubespray/project/roles/network_plugin/weave/templates/weave-net.yml.j2 b/internal/resources/kubespray/project/roles/network_plugin/weave/templates/weave-net.yml.j2 similarity index 100% rename from kubespray/project/roles/network_plugin/weave/templates/weave-net.yml.j2 rename to internal/resources/kubespray/project/roles/network_plugin/weave/templates/weave-net.yml.j2 diff --git a/kubespray/project/roles/recover_control_plane/control-plane/defaults/main.yml b/internal/resources/kubespray/project/roles/recover_control_plane/control-plane/defaults/main.yml similarity index 100% rename from kubespray/project/roles/recover_control_plane/control-plane/defaults/main.yml rename to internal/resources/kubespray/project/roles/recover_control_plane/control-plane/defaults/main.yml diff --git a/kubespray/project/roles/recover_control_plane/control-plane/tasks/main.yml b/internal/resources/kubespray/project/roles/recover_control_plane/control-plane/tasks/main.yml similarity index 100% rename from kubespray/project/roles/recover_control_plane/control-plane/tasks/main.yml rename to internal/resources/kubespray/project/roles/recover_control_plane/control-plane/tasks/main.yml diff --git a/kubespray/project/roles/recover_control_plane/etcd/tasks/main.yml b/internal/resources/kubespray/project/roles/recover_control_plane/etcd/tasks/main.yml similarity index 100% rename from kubespray/project/roles/recover_control_plane/etcd/tasks/main.yml rename to internal/resources/kubespray/project/roles/recover_control_plane/etcd/tasks/main.yml diff --git a/kubespray/project/roles/recover_control_plane/etcd/tasks/recover_lost_quorum.yml b/internal/resources/kubespray/project/roles/recover_control_plane/etcd/tasks/recover_lost_quorum.yml similarity index 100% rename from kubespray/project/roles/recover_control_plane/etcd/tasks/recover_lost_quorum.yml rename to internal/resources/kubespray/project/roles/recover_control_plane/etcd/tasks/recover_lost_quorum.yml diff --git a/kubespray/project/roles/recover_control_plane/post-recover/tasks/main.yml b/internal/resources/kubespray/project/roles/recover_control_plane/post-recover/tasks/main.yml similarity index 100% rename from kubespray/project/roles/recover_control_plane/post-recover/tasks/main.yml rename to internal/resources/kubespray/project/roles/recover_control_plane/post-recover/tasks/main.yml diff --git a/kubespray/project/roles/remove-node/post-remove/defaults/main.yml b/internal/resources/kubespray/project/roles/remove-node/post-remove/defaults/main.yml similarity index 100% rename from kubespray/project/roles/remove-node/post-remove/defaults/main.yml rename to internal/resources/kubespray/project/roles/remove-node/post-remove/defaults/main.yml diff --git a/kubespray/project/roles/remove-node/post-remove/tasks/main.yml b/internal/resources/kubespray/project/roles/remove-node/post-remove/tasks/main.yml similarity index 100% rename from kubespray/project/roles/remove-node/post-remove/tasks/main.yml rename to internal/resources/kubespray/project/roles/remove-node/post-remove/tasks/main.yml diff --git a/kubespray/project/roles/remove-node/pre-remove/tasks/main.yml b/internal/resources/kubespray/project/roles/remove-node/pre-remove/tasks/main.yml similarity index 100% rename from kubespray/project/roles/remove-node/pre-remove/tasks/main.yml rename to internal/resources/kubespray/project/roles/remove-node/pre-remove/tasks/main.yml diff --git a/kubespray/project/roles/remove-node/remove-etcd-node/tasks/main.yml b/internal/resources/kubespray/project/roles/remove-node/remove-etcd-node/tasks/main.yml similarity index 100% rename from kubespray/project/roles/remove-node/remove-etcd-node/tasks/main.yml rename to internal/resources/kubespray/project/roles/remove-node/remove-etcd-node/tasks/main.yml diff --git a/kubespray/project/roles/remove_node/pre_remove/defaults/main.yml b/internal/resources/kubespray/project/roles/remove_node/pre_remove/defaults/main.yml similarity index 100% rename from kubespray/project/roles/remove_node/pre_remove/defaults/main.yml rename to internal/resources/kubespray/project/roles/remove_node/pre_remove/defaults/main.yml diff --git a/kubespray/project/roles/remove_node/pre_remove/tasks/main.yml b/internal/resources/kubespray/project/roles/remove_node/pre_remove/tasks/main.yml similarity index 100% rename from kubespray/project/roles/remove_node/pre_remove/tasks/main.yml rename to internal/resources/kubespray/project/roles/remove_node/pre_remove/tasks/main.yml diff --git a/kubespray/project/roles/reset/defaults/main.yml b/internal/resources/kubespray/project/roles/reset/defaults/main.yml similarity index 100% rename from kubespray/project/roles/reset/defaults/main.yml rename to internal/resources/kubespray/project/roles/reset/defaults/main.yml diff --git a/kubespray/project/roles/reset/tasks/main.yml b/internal/resources/kubespray/project/roles/reset/tasks/main.yml similarity index 100% rename from kubespray/project/roles/reset/tasks/main.yml rename to internal/resources/kubespray/project/roles/reset/tasks/main.yml diff --git a/kubespray/project/roles/system_packages/defaults/main.yml b/internal/resources/kubespray/project/roles/system_packages/defaults/main.yml similarity index 100% rename from kubespray/project/roles/system_packages/defaults/main.yml rename to internal/resources/kubespray/project/roles/system_packages/defaults/main.yml diff --git a/kubespray/project/roles/system_packages/tasks/main.yml b/internal/resources/kubespray/project/roles/system_packages/tasks/main.yml similarity index 100% rename from kubespray/project/roles/system_packages/tasks/main.yml rename to internal/resources/kubespray/project/roles/system_packages/tasks/main.yml diff --git a/kubespray/project/roles/system_packages/vars/main.yml b/internal/resources/kubespray/project/roles/system_packages/vars/main.yml similarity index 100% rename from kubespray/project/roles/system_packages/vars/main.yml rename to internal/resources/kubespray/project/roles/system_packages/vars/main.yml diff --git a/kubespray/project/roles/upgrade/post-upgrade/defaults/main.yml b/internal/resources/kubespray/project/roles/upgrade/post-upgrade/defaults/main.yml similarity index 100% rename from kubespray/project/roles/upgrade/post-upgrade/defaults/main.yml rename to internal/resources/kubespray/project/roles/upgrade/post-upgrade/defaults/main.yml diff --git a/kubespray/project/roles/upgrade/post-upgrade/tasks/main.yml b/internal/resources/kubespray/project/roles/upgrade/post-upgrade/tasks/main.yml similarity index 100% rename from kubespray/project/roles/upgrade/post-upgrade/tasks/main.yml rename to internal/resources/kubespray/project/roles/upgrade/post-upgrade/tasks/main.yml diff --git a/kubespray/project/roles/upgrade/pre-upgrade/defaults/main.yml b/internal/resources/kubespray/project/roles/upgrade/pre-upgrade/defaults/main.yml similarity index 100% rename from kubespray/project/roles/upgrade/pre-upgrade/defaults/main.yml rename to internal/resources/kubespray/project/roles/upgrade/pre-upgrade/defaults/main.yml diff --git a/kubespray/project/roles/upgrade/pre-upgrade/tasks/main.yml b/internal/resources/kubespray/project/roles/upgrade/pre-upgrade/tasks/main.yml similarity index 100% rename from kubespray/project/roles/upgrade/pre-upgrade/tasks/main.yml rename to internal/resources/kubespray/project/roles/upgrade/pre-upgrade/tasks/main.yml diff --git a/kubespray/project/roles/upgrade/system-upgrade/tasks/apt.yml b/internal/resources/kubespray/project/roles/upgrade/system-upgrade/tasks/apt.yml similarity index 100% rename from kubespray/project/roles/upgrade/system-upgrade/tasks/apt.yml rename to internal/resources/kubespray/project/roles/upgrade/system-upgrade/tasks/apt.yml diff --git a/kubespray/project/roles/upgrade/system-upgrade/tasks/main.yml b/internal/resources/kubespray/project/roles/upgrade/system-upgrade/tasks/main.yml similarity index 100% rename from kubespray/project/roles/upgrade/system-upgrade/tasks/main.yml rename to internal/resources/kubespray/project/roles/upgrade/system-upgrade/tasks/main.yml diff --git a/kubespray/project/roles/upgrade/system-upgrade/tasks/yum.yml b/internal/resources/kubespray/project/roles/upgrade/system-upgrade/tasks/yum.yml similarity index 100% rename from kubespray/project/roles/upgrade/system-upgrade/tasks/yum.yml rename to internal/resources/kubespray/project/roles/upgrade/system-upgrade/tasks/yum.yml diff --git a/kubespray/project/roles/validate_inventory/meta/main.yml b/internal/resources/kubespray/project/roles/validate_inventory/meta/main.yml similarity index 100% rename from kubespray/project/roles/validate_inventory/meta/main.yml rename to internal/resources/kubespray/project/roles/validate_inventory/meta/main.yml diff --git a/kubespray/project/roles/validate_inventory/tasks/main.yml b/internal/resources/kubespray/project/roles/validate_inventory/tasks/main.yml similarity index 100% rename from kubespray/project/roles/validate_inventory/tasks/main.yml rename to internal/resources/kubespray/project/roles/validate_inventory/tasks/main.yml diff --git a/kubespray/project/roles/win_nodes/kubernetes_patch/defaults/main.yml b/internal/resources/kubespray/project/roles/win_nodes/kubernetes_patch/defaults/main.yml similarity index 100% rename from kubespray/project/roles/win_nodes/kubernetes_patch/defaults/main.yml rename to internal/resources/kubespray/project/roles/win_nodes/kubernetes_patch/defaults/main.yml diff --git a/kubespray/project/roles/win_nodes/kubernetes_patch/tasks/main.yml b/internal/resources/kubespray/project/roles/win_nodes/kubernetes_patch/tasks/main.yml similarity index 100% rename from kubespray/project/roles/win_nodes/kubernetes_patch/tasks/main.yml rename to internal/resources/kubespray/project/roles/win_nodes/kubernetes_patch/tasks/main.yml diff --git a/kubespray/project/scale.yml b/internal/resources/kubespray/project/scale.yml similarity index 100% rename from kubespray/project/scale.yml rename to internal/resources/kubespray/project/scale.yml diff --git a/kubespray/project/upgrade_cluster.yml b/internal/resources/kubespray/project/upgrade_cluster.yml similarity index 100% rename from kubespray/project/upgrade_cluster.yml rename to internal/resources/kubespray/project/upgrade_cluster.yml diff --git a/internal/resources/resources.go b/internal/resources/resources.go index 9fd078f..4da8bef 100644 --- a/internal/resources/resources.go +++ b/internal/resources/resources.go @@ -4,3 +4,6 @@ import "embed" //go:embed templates var Templates embed.FS + +//go:embed kubespray +var Kubespray embed.FS diff --git a/internal/templates/funcs.go b/internal/templates/funcs.go index 7d03ebf..1c8737d 100644 --- a/internal/templates/funcs.go +++ b/internal/templates/funcs.go @@ -8,7 +8,7 @@ import ( "github.com/BurntSushi/toml" "github.com/Masterminds/sprig/v3" - "sigs.k8s.io/yaml" + "gopkg.in/yaml.v2" ) func funcMap() template.FuncMap { diff --git a/internal/templates/kubespray.go b/internal/templates/kubespray.go index 0904afb..c3104d6 100644 --- a/internal/templates/kubespray.go +++ b/internal/templates/kubespray.go @@ -1,13 +1,13 @@ package templates var K8S_TEMPLATES = [...][2]string{ - {"templates/kubespray/inventory/hosts.tmpl", "kubespray/inventory/hosts"}, - {"templates/kubespray/inventory/group_vars/all.yml.tmpl", "kubespray/inventory/group_vars/all.yml"}, - {"templates/kubespray/inventory/group_vars/k8s_cluster/addons.yml.tmpl", "kubespray/inventory/group_vars/k8s_cluster/addons.yml"}, - {"templates/kubespray/inventory/group_vars/k8s_cluster/k8s-cluster.yml.tmpl", "kubespray/inventory/group_vars/k8s_cluster/k8s-cluster.yml"}, - {"templates/kubespray/inventory/group_vars/k8s_cluster/k8s-net-calico.yml.tmpl", "kubespray/inventory/group_vars/k8s_cluster/k8s-net-calico.yml"}, - {"templates/kubespray/inventory/group_vars/k8s_cluster/k8s-net-cilium.yml.tmpl", "kubespray/inventory/group_vars/k8s_cluster/k8s-net-cilium.yml"}, - {"templates/kubespray/inventory/group_vars/all/containerd.yml.tmpl", "kubespray/inventory/group_vars/all/containerd.yml"}, + {"templates/kubespray/inventory/hosts.tmpl", "inventory/hosts"}, + {"templates/kubespray/inventory/group_vars/all.yml.tmpl", "inventory/group_vars/all.yml"}, + {"templates/kubespray/inventory/group_vars/k8s_cluster/addons.yml.tmpl", "inventory/group_vars/k8s_cluster/addons.yml"}, + {"templates/kubespray/inventory/group_vars/k8s_cluster/k8s-cluster.yml.tmpl", "inventory/group_vars/k8s_cluster/k8s-cluster.yml"}, + {"templates/kubespray/inventory/group_vars/k8s_cluster/k8s-net-calico.yml.tmpl", "inventory/group_vars/k8s_cluster/k8s-net-calico.yml"}, + {"templates/kubespray/inventory/group_vars/k8s_cluster/k8s-net-cilium.yml.tmpl", "inventory/group_vars/k8s_cluster/k8s-net-cilium.yml"}, + {"templates/kubespray/inventory/group_vars/all/containerd.yml.tmpl", "inventory/group_vars/all/containerd.yml"}, } func ApplyK8sTemplates() { diff --git a/internal/templates/secrets_storage.go b/internal/templates/secrets_storage.go index 149d5eb..c87a311 100644 --- a/internal/templates/secrets_storage.go +++ b/internal/templates/secrets_storage.go @@ -8,7 +8,7 @@ import ( func ApplyVaultInitKeysTemplate() { config := config.GetConfig() var VAULT_INIT_KEYS_TEMPLATE = [...][2]string{ - {"templates/secrets-storage/vault-keys.json.tmpl", fmt.Sprintf("%s/vault-keys.json", config.WorkDir)}, + {"templates/secrets-storage/vault-keys.json.tmpl", fmt.Sprintf("%s/vault-keys.json", config.InventoryDir)}, } applyTemplates(VAULT_INIT_KEYS_TEMPLATE[:]) } diff --git a/internal/templates/utility.go b/internal/templates/utility.go index 305169b..55eb431 100644 --- a/internal/templates/utility.go +++ b/internal/templates/utility.go @@ -4,6 +4,7 @@ import ( "bytes" "embed" "kube-forge/internal/config" + "kube-forge/internal/logging" "kube-forge/internal/resources" "os" "path/filepath" @@ -37,7 +38,13 @@ func applyTemplates(templates [][2]string) { config := config.GetConfig() for _, templateData := range templates { var templateFile = templateData[0] - var outFile = filepath.Join(config.WorkDir, templateData[1]) + var outFile = filepath.Join(config.BaseDir, templateData[1]) + + dir := filepath.Dir(outFile) + err := os.MkdirAll(dir, 0755) + if err != nil { + logging.Log.Fatal(err) + } tmpl := getTemplateFromEmbedFSFolder(resources.Templates, templateFile) diff --git a/kubespray/inventory/credentials/kubeadm_certificate_key.creds b/kubespray/inventory/credentials/kubeadm_certificate_key.creds deleted file mode 100644 index 876b675..0000000 --- a/kubespray/inventory/credentials/kubeadm_certificate_key.creds +++ /dev/null @@ -1 +0,0 @@ -4EE863bb8CdA1331D43B4CBcB274dd2267fDCdaA97Dcfa5E7E6BBc31b10E9695 diff --git a/kubespray/inventory/group_vars/all.yml b/kubespray/inventory/group_vars/all.yml deleted file mode 100644 index 936a703..0000000 --- a/kubespray/inventory/group_vars/all.yml +++ /dev/null @@ -1,130 +0,0 @@ ---- -bin_dir: /usr/local/bin - -## The access_ip variable is used to define how other nodes should access -## the node. This is used in flannel to allow other flannel nodes to see -## this node for example. The access_ip is really useful AWS and Google -## environments where the nodes are accessed remotely by the "public" ip, -## but don't know about that address themselves. -# access_ip: 1.1.1.1 - - -## External LB example config -## apiserver_loadbalancer_domain_name: "elb.some.domain" -# loadbalancer_apiserver: -# address: 1.2.3.4 -# port: 1234 - -## Internal loadbalancers for apiservers -# loadbalancer_apiserver_localhost: true -# valid options are "nginx" or "haproxy" -# loadbalancer_apiserver_type: nginx # valid values "nginx" or "haproxy" - -## Local loadbalancer should use this port -## And must be set port 6443 -loadbalancer_apiserver_port: 6443 - -## If loadbalancer_apiserver_healthcheck_port variable defined, enables proxy liveness check for nginx. -loadbalancer_apiserver_healthcheck_port: 8081 - -disable_host_nameservers: false - -upstream_dns_servers: - - 8.8.8.8 - - 8.8.4.4 - - 1.1.1.1 - -## There are some changes specific to the cloud providers -## for instance we need to encapsulate packets with some network plugins -## If set the possible values are either 'gce', 'aws', 'azure', 'openstack', 'vsphere', 'oci', or 'external' -## When openstack is used make sure to source in the openstack credentials -## like you would do when using openstack-client before starting the playbook. - -## When cloud_provider is set to 'external', you can set the cloud controller to deploy -## Supported cloud controllers are: 'openstack', 'vsphere' and 'hcloud' -## When openstack or vsphere are used make sure to source in the required fields - -## Set these proxy values in order to update package manager and docker daemon to use proxies -# http_proxy: "" -# https_proxy: "" - -## Refer to roles/kubespray-defaults/defaults/main.yml before modifying no_proxy -# no_proxy: "" - -## Some problems may occur when downloading files over https proxy due to ansible bug -## https://github.com/ansible/ansible/issues/32750. Set this variable to False to disable -## SSL validation of get_url module. Note that kubespray will still be performing checksum validation. -# download_validate_certs: False - -## If you need exclude all cluster nodes from proxy and other resources, add other resources here. -# additional_no_proxy: "" - -## If you need to disable proxying of os package repositories but are still behind an http_proxy set -## skip_http_proxy_on_os_packages to true -## This will cause kubespray not to set proxy environment in /etc/yum.conf for centos and in /etc/apt/apt.conf for debian/ubuntu -## Special information for debian/ubuntu - you have to set the no_proxy variable, then apt package will install from your source of wish -# skip_http_proxy_on_os_packages: false - -## Since workers are included in the no_proxy variable by default, docker engine will be restarted on all nodes (all -## pods will restart) when adding or removing workers. To override this behaviour by only including master nodes in the -## no_proxy variable, set below to true: -no_proxy_exclude_workers: false - -## Certificate Management -## This setting determines whether certs are generated via scripts. -## Chose 'none' if you provide your own certificates. -## Option is "script", "none" -# cert_management: script - -## Set to true to allow pre-checks to fail and continue deployment -# ignore_assert_errors: false - -## The read-only port for the Kubelet to serve on with no authentication/authorization. Uncomment to enable. -# kube_read_only_port: 10255 - -## Set true to download and cache container -# download_container: true - -## Deploy container engine -# Set false if you want to deploy container engine manually. -deploy_container_engine: true - -## Red Hat Enterprise Linux subscription registration -## Add either RHEL subscription Username/Password or Organization ID/Activation Key combination -## Update RHEL subscription purpose usage, role and SLA if necessary -# rh_subscription_username: "" -# rh_subscription_password: "" -# rh_subscription_org_id: "" -# rh_subscription_activation_key: "" -# rh_subscription_usage: "Development" -# rh_subscription_role: "Red Hat Enterprise Server" -# rh_subscription_sla: "Self-Support" - -## Check if access_ip responds to ping. Set false if your firewall blocks ICMP. -ping_access_ip: true - -# sysctl_file_path to add sysctl conf to -sysctl_file_path: /etc/sysctl.d/99-sysctl.conf - -## Variables for webhook token auth https://kubernetes.io/docs/reference/access-authn-authz/authentication/#webhook-token-authentication -kube_webhook_token_auth: false -kube_webhook_token_auth_url_skip_tls_verify: false -# kube_webhook_token_auth_url: https://... -## base64-encoded string of the webhook's CA certificate -# kube_webhook_token_auth_ca_data: "LS0t..." - -## NTP Settings -# Start the ntpd or chrony service and enable it at system boot. -ntp_enabled: false -ntp_manage_config: false -ntp_servers: - - "0.pool.ntp.org iburst" - - "1.pool.ntp.org iburst" - - "2.pool.ntp.org iburst" - - "3.pool.ntp.org iburst" - -## Used to control no_log attribute -unsafe_show_logs: false - -## If enabled it will allow kubespray to attempt setup even if the distribution is not supported. For unsupported distributions this can lead to unexpected failures in some cases. -allow_unsupported_distribution_setup: false diff --git a/kubespray/inventory/group_vars/all/containerd.yml b/kubespray/inventory/group_vars/all/containerd.yml deleted file mode 100644 index b13bde7..0000000 --- a/kubespray/inventory/group_vars/all/containerd.yml +++ /dev/null @@ -1,63 +0,0 @@ ---- -# Please see roles/container-engine/containerd/defaults/main.yml for more configuration options - -containerd_storage_dir: /app/containerd -containerd_state_dir: /app/containerd-state - -# containerd_oom_score: 0 - -# containerd_default_runtime: "runc" -# containerd_snapshotter: "native" - -# containerd_runc_runtime: -# name: runc -# type: "io.containerd.runc.v2" -# engine: "" -# root: "" - -# containerd_additional_runtimes: -# Example for Kata Containers as additional runtime: -# - name: kata -# type: "io.containerd.kata.v2" -# engine: "" -# root: "" - -# containerd_grpc_max_recv_message_size: 16777216 -# containerd_grpc_max_send_message_size: 16777216 - -# Containerd debug socket location: unix or tcp format -# containerd_debug_address: "" - -# Containerd log level -# containerd_debug_level: "info" - -# Containerd logs format, supported values: text, json -# containerd_debug_format: "" - -# Containerd debug socket UID -# containerd_debug_uid: 0 - -# Containerd debug socket GID -# containerd_debug_gid: 0 - -# containerd_metrics_address: "" - -# containerd_metrics_grpc_histogram: false - -# Registries defined within containerd. -containerd_registries_mirrors: - - prefix: docker.io - mirrors: - - host: https://mirror.gcr.io - capabilities: ["pull", "resolve"] - skip_verify: false - - host: https://quay.io - capabilities: ["pull", "resolve"] - skip_verify: false - -# containerd_max_container_log_line_size: -1 - -# containerd_registry_auth: -# - registry: 10.0.0.2:5000 -# username: user -# password: pass \ No newline at end of file diff --git a/kubespray/inventory/group_vars/k8s_cluster/addons.yml b/kubespray/inventory/group_vars/k8s_cluster/addons.yml deleted file mode 100644 index c9dd25a..0000000 --- a/kubespray/inventory/group_vars/k8s_cluster/addons.yml +++ /dev/null @@ -1,230 +0,0 @@ ---- -dashboard_enabled: false - -helm_enabled: true - -registry_enabled: false - -metrics_server_enabled: false - -# Rancher Local Path Provisioner -local_path_provisioner_enabled: true -# local_path_provisioner_namespace: "local-path-storage" -local_path_provisioner_storage_class: local-path -local_path_provisioner_reclaim_policy: Delete -local_path_provisioner_claim_root: /app/local-path-provisioner -# local_path_provisioner_debug: false -# local_path_provisioner_image_repo: "rancher/local-path-provisioner" -# local_path_provisioner_image_tag: "v0.0.23" -# local_path_provisioner_helper_image_repo: "busybox" -# local_path_provisioner_helper_image_tag: "latest" - -# Local volume provisioner deployment -local_volume_provisioner_enabled: false -# local_volume_provisioner_namespace: kube-system -# local_volume_provisioner_nodelabels: -# - kubernetes.io/hostname -# - topology.kubernetes.io/region -# - topology.kubernetes.io/zone -# local_volume_provisioner_storage_classes: -# local-storage: -# host_dir: /mnt/disks -# mount_dir: /mnt/disks -# volume_mode: Filesystem -# fs_type: ext4 -# fast-disks: -# host_dir: /mnt/fast-disks -# mount_dir: /mnt/fast-disks -# block_cleaner_command: -# - "/scripts/shred.sh" -# - "2" -# volume_mode: Filesystem -# fs_type: ext4 -# local_volume_provisioner_tolerations: -# - effect: NoSchedule -# operator: Exists - -# CSI Volume Snapshot Controller deployment, set this to true if your CSI is able to manage snapshots -# currently, setting cinder_csi_enabled=true would automatically enable the snapshot controller -# Longhorn is an extenal CSI that would also require setting this to true but it is not included in kubespray -# csi_snapshot_controller_enabled: false -# csi snapshot namespace -# snapshot_controller_namespace: kube-system - -# CephFS provisioner deployment -cephfs_provisioner_enabled: false -# cephfs_provisioner_namespace: "cephfs-provisioner" -# cephfs_provisioner_cluster: ceph -# cephfs_provisioner_monitors: "172.24.0.1:6789,172.24.0.2:6789,172.24.0.3:6789" -# cephfs_provisioner_admin_id: admin -# cephfs_provisioner_secret: secret -# cephfs_provisioner_storage_class: cephfs -# cephfs_provisioner_reclaim_policy: Delete -# cephfs_provisioner_claim_root: /volumes -# cephfs_provisioner_deterministic_names: true - -# RBD provisioner deployment -rbd_provisioner_enabled: false -# rbd_provisioner_namespace: rbd-provisioner -# rbd_provisioner_replicas: 2 -# rbd_provisioner_monitors: "172.24.0.1:6789,172.24.0.2:6789,172.24.0.3:6789" -# rbd_provisioner_pool: kube -# rbd_provisioner_admin_id: admin -# rbd_provisioner_secret_name: ceph-secret-admin -# rbd_provisioner_secret: ceph-key-admin -# rbd_provisioner_user_id: kube -# rbd_provisioner_user_secret_name: ceph-secret-user -# rbd_provisioner_user_secret: ceph-key-user -# rbd_provisioner_user_secret_namespace: rbd-provisioner -# rbd_provisioner_fs_type: ext4 -# rbd_provisioner_image_format: "2" -# rbd_provisioner_image_features: layering -# rbd_provisioner_storage_class: rbd -# rbd_provisioner_reclaim_policy: Delete - -# Nginx ingress controller deployment -ingress_nginx_enabled: false -ingress_nginx_host_network: false -ingress_publish_status_address: "" -# ingress_nginx_nodeselector: -# kubernetes.io/os: "linux" -# ingress_nginx_tolerations: -# - key: "node-role.kubernetes.io/master" -# operator: "Equal" -# value: "" -# effect: "NoSchedule" -# - key: "node-role.kubernetes.io/control-plane" -# operator: "Equal" -# value: "" -# effect: "NoSchedule" -# ingress_nginx_namespace: "ingress-nginx" -ingress_nginx_insecure_port: 80 -ingress_nginx_secure_port: 443 -# ingress_nginx_configmap: -# map-hash-bucket-size: "128" -# ssl-protocols: "TLSv1.2 TLSv1.3" -# ingress_nginx_configmap_tcp_services: -# 9000: "default/example-go:8080" -# ingress_nginx_configmap_udp_services: -# 53: "kube-system/coredns:53" -# ingress_nginx_extra_args: -# - --default-ssl-certificate=default/foo-tls -# ingress_nginx_termination_grace_period_seconds: 300 -ingress_nginx_class: "nginx" - -# ALB ingress controller deployment -ingress_alb_enabled: false -# alb_ingress_aws_region: "us-east-1" -# alb_ingress_restrict_scheme: "false" -# Enables logging on all outbound requests sent to the AWS API. -# If logging is desired, set to true. -# alb_ingress_aws_debug: "false" - -# Cert manager deployment -cert_manager_enabled: false -# cert_manager_namespace: "cert-manager" -# cert_manager_tolerations: -# - key: node-role.kubernetes.io/master -# effect: NoSchedule -# - key: node-role.kubernetes.io/control-plane -# effect: NoSchedule -# cert_manager_affinity: -# nodeAffinity: -# preferredDuringSchedulingIgnoredDuringExecution: -# - weight: 100 -# preference: -# matchExpressions: -# - key: node-role.kubernetes.io/control-plane -# operator: In -# values: -# - "" -# cert_manager_nodeselector: -# kubernetes.io/os: "linux" - -# cert_manager_trusted_internal_ca: | -# -----BEGIN CERTIFICATE----- -# [REPLACE with your CA certificate] -# -----END CERTIFICATE----- -# cert_manager_leader_election_namespace: kube-system - -# cert_manager_dns_policy: "ClusterFirst" -cert_manager_dns_config: - nameservers: - - "8.8.8.8" - - "8.8.4.4" - -# MetalLB deployment -metallb_enabled: false -metallb_speaker_enabled: "{{ metallb_enabled }}" -# metallb_speaker_nodeselector: -# kubernetes.io/os: "linux" -# metallb_controller_nodeselector: -# kubernetes.io/os: "linux" -# metallb_speaker_tolerations: -# - key: "node-role.kubernetes.io/master" -# operator: "Equal" -# value: "" -# effect: "NoSchedule" -# - key: "node-role.kubernetes.io/control-plane" -# operator: "Equal" -# value: "" -# effect: "NoSchedule" -# metallb_controller_tolerations: -# - key: "node-role.kubernetes.io/master" -# operator: "Equal" -# value: "" -# effect: "NoSchedule" -# - key: "node-role.kubernetes.io/control-plane" -# operator: "Equal" -# value: "" -# effect: "NoSchedule" -# metallb_version: v0.13.9 -# metallb_protocol: "layer2" -# metallb_port: "7472" -# metallb_memberlist_port: "7946" -# metallb_config: -# address_pools: -# primary: -# ip_range: -# - 10.5.0.0/16 -# auto_assign: true -# pool1: -# ip_range: -# - 10.6.0.0/16 -# auto_assign: true -# pool2: -# ip_range: -# - 10.10.0.0/16 -# auto_assign: true -# layer2: -# - primary -# layer3: -# defaults: -# peer_port: 179 -# hold_time: 120s -# communities: -# vpn-only: "1234:1" -# NO_ADVERTISE: "65535:65282" -# metallb_peers: -# peer1: -# peer_address: 10.6.0.1 -# peer_asn: 64512 -# my_asn: 4200000000 -# communities: -# - vpn-only -# address_pool: -# - pool1 -# peer2: -# peer_address: 10.10.0.1 -# peer_asn: 64513 -# my_asn: 4200000000 -# communities: -# - NO_ADVERTISE -# address_pool: -# - pool2 - -argocd_enabled: false - -# The plugin manager for kubectl -krew_enabled: false -krew_root_dir: "/usr/local/krew" diff --git a/kubespray/inventory/group_vars/k8s_cluster/k8s-cluster.yml b/kubespray/inventory/group_vars/k8s_cluster/k8s-cluster.yml deleted file mode 100644 index b738a35..0000000 --- a/kubespray/inventory/group_vars/k8s_cluster/k8s-cluster.yml +++ /dev/null @@ -1,398 +0,0 @@ ---- -# Kubernetes configuration dirs and system namespace. -# Those are where all the additional config stuff goes -# the kubernetes normally puts in /srv/kubernetes. -# This puts them in a sane location and namespace. -# Editing those values will almost surely break something. -kube_config_dir: /etc/kubernetes -kube_script_dir: "{{ bin_dir }}/kubernetes-scripts" -kube_manifest_dir: "{{ kube_config_dir }}/manifests" - -# This is where all the cert scripts and certs will be located -kube_cert_dir: "{{ kube_config_dir }}/ssl" - -# This is where all of the bearer tokens will be stored -kube_token_dir: "{{ kube_config_dir }}/tokens" - -kube_api_anonymous_auth: true - -## Change this to use another Kubernetes version, e.g. a current beta release -kube_version: 1.32.4 - -# Where the binaries will be downloaded. -# Note: ensure that you've enough disk space (about 1G) -local_release_dir: "/tmp/releases" -# Random shifts for retrying failed ops like pushing/downloading -retry_stagger: 5 - -# This is the user that owns tha cluster installation. -kube_owner: kube - -# This is the group that the cert creation scripts chgrp the -# cert files to. Not really changeable... -kube_cert_group: kube-cert - -# Cluster Loglevel configuration -kube_log_level: 2 - -# Directory where credentials will be stored -credentials_dir: "{{ inventory_dir }}/credentials" - -## It is possible to activate / deactivate selected authentication methods (oidc, static token auth) -# kube_oidc_auth: false -# kube_token_auth: false - - -## Variables for OpenID Connect Configuration https://kubernetes.io/docs/admin/authentication/ -## To use OpenID you have to deploy additional an OpenID Provider (e.g Dex, Keycloak, ...) - -# kube_oidc_url: https:// ... -# kube_oidc_client_id: kubernetes -## Optional settings for OIDC -# kube_oidc_ca_file: "{{ kube_cert_dir }}/ca.pem" -# kube_oidc_username_claim: sub -# kube_oidc_username_prefix: 'oidc:' -# kube_oidc_groups_claim: groups -# kube_oidc_groups_prefix: 'oidc:' - -## Variables to control webhook authn/authz -# kube_webhook_token_auth: false -# kube_webhook_token_auth_url: https://... -# kube_webhook_token_auth_url_skip_tls_verify: false - -## For webhook authorization, authorization_modes must include Webhook -# kube_webhook_authorization: false -# kube_webhook_authorization_url: https://... -# kube_webhook_authorization_url_skip_tls_verify: false - -# Choose network plugin (cilium, calico, kube-ovn, weave or flannel. Use cni for generic cni plugin) -# Can also be set to 'cloud', which lets the cloud provider setup appropriate routing -kube_network_plugin: calico - -# Setting multi_networking to true will install Multus: https://github.com/k8snetworkplumbingwg/multus-cni -kube_network_plugin_multus: false - -# Kubernetes internal network for services, unused block of space. -kube_service_addresses: 10.233.0.0/18 - -# internal network. When used, it will assign IP -# addresses from this range to individual pods. -# This network must be unused in your network infrastructure! -kube_pods_subnet: 10.233.64.0/18 - -# internal network node size allocation (optional). This is the size allocated -# to each node for pod IP address allocation. Note that the number of pods per node is -# also limited by the kubelet_max_pods variable which defaults to 110. -# -# Example: -# Up to 64 nodes and up to 254 or kubelet_max_pods (the lowest of the two) pods per node: -# - kube_pods_subnet: 10.233.64.0/18 -# - kube_network_node_prefix: 24 -# - kubelet_max_pods: 110 -# -# Example: -# Up to 128 nodes and up to 126 or kubelet_max_pods (the lowest of the two) pods per node: -# - kube_pods_subnet: 10.233.64.0/18 -# - kube_network_node_prefix: 25 -# - kubelet_max_pods: 110 -kube_network_node_prefix: 24 - -# Configure Dual Stack networking (i.e. both IPv4 and IPv6) -enable_dual_stack_networks: false - -# Kubernetes internal network for IPv6 services, unused block of space. -# This is only used if enable_dual_stack_networks is set to true -# This provides 4096 IPv6 IPs -kube_service_addresses_ipv6: fd85:ee78:d8a6:8607::1000/116 - -# Internal network. When used, it will assign IPv6 addresses from this range to individual pods. -# This network must not already be in your network infrastructure! -# This is only used if enable_dual_stack_networks is set to true. -# This provides room for 256 nodes with 254 pods per node. -kube_pods_subnet_ipv6: fd85:ee78:d8a6:8607::1:0000/112 - -# IPv6 subnet size allocated to each for pods. -# This is only used if enable_dual_stack_networks is set to true -# This provides room for 254 pods per node. -kube_network_node_prefix_ipv6: 120 - -# The port the API Server will be listening on. -kube_apiserver_ip: "{{ kube_service_addresses|ipaddr('net')|ipaddr(1)|ipaddr('address') }}" -kube_apiserver_port: 6443 # (https) - -# Kube-proxy proxyMode configuration. -# Can be ipvs, iptables -kube_proxy_mode: ipvs -kube_proxy_scheduler: lc - -# configure arp_ignore and arp_announce to avoid answering ARP queries from kube-ipvs0 interface -# must be set to true for MetalLB, kube-vip(ARP enabled) to work -kube_proxy_strict_arp: false - -# A string slice of values which specify the addresses to use for NodePorts. -# Values may be valid IP blocks (e.g. 1.2.3.0/24, 1.2.3.4/32). -# The default empty string slice ([]) means to use all local addresses. -# kube_proxy_nodeport_addresses_cidr is retained for legacy config -kube_proxy_nodeport_addresses: >- - {%- if kube_proxy_nodeport_addresses_cidr is defined -%} - [{{ kube_proxy_nodeport_addresses_cidr }}] - {%- else -%} - [] - {%- endif -%} - -# If non-empty, will use this string as identification instead of the actual hostname -# kube_override_hostname: >- -# {%- if cloud_provider is defined and cloud_provider in [ 'aws' ] -%} -# {%- else -%} -# {{ inventory_hostname }} -# {%- endif -%} - -## Encrypting Secret Data at Rest -kube_encrypt_secret_data: false - -# Graceful Node Shutdown (Kubernetes >= 1.21.0), see https://kubernetes.io/blog/2021/04/21/graceful-node-shutdown-beta/ -# kubelet_shutdown_grace_period had to be greater than kubelet_shutdown_grace_period_critical_pods to allow -# non-critical podsa to also terminate gracefully -# kubelet_shutdown_grace_period: 60s -# kubelet_shutdown_grace_period_critical_pods: 20s - -# DNS configuration. -# Kubernetes cluster name, also will be used as DNS domain -cluster_name: cluster.local -# Subdomains of DNS domain to be resolved via /etc/resolv.conf for hostnet pods -ndots: 2 -# dns_timeout: 2 -# dns_attempts: 2 -# Custom search domains to be added in addition to the default cluster search domains -# searchdomains: -# - "svc.{{ cluster_name }}" -# - "default.svc.{{ cluster_name }}" -# remove_default_searchdomains: false -# Can be coredns, coredns_dual, manual or none -dns_mode: coredns -# Set manual server if using a custom cluster DNS server -# manual_dns_server: 10.x.x.x -# Enable nodelocal dns cache -enable_nodelocaldns: true -enable_nodelocaldns_secondary: false -nodelocaldns_ip: 169.254.25.10 -nodelocaldns_health_port: 9254 -nodelocaldns_second_health_port: 9256 -nodelocaldns_bind_metrics_host_ip: false -nodelocaldns_secondary_skew_seconds: 5 -# - zones: -# - example.com -# - example.io:1053 -# nameservers: -# - 1.1.1.1 -# - 2.2.2.2 -# cache: 5 -# - zones: -# - https://mycompany.local:4453 -# nameservers: -# - 192.168.0.53 -# cache: 0 -# - zones: -# - mydomain.tld -# nameservers: -# - 10.233.0.3 -# cache: 5 -# rewrite: -# - name website.tld website.namespace.svc.cluster.local -# Enable k8s_external plugin for CoreDNS -enable_coredns_k8s_external: false -coredns_k8s_external_zone: k8s_external.local -# Enable endpoint_pod_names option for kubernetes plugin -enable_coredns_k8s_endpoint_pod_names: false -# Set forward options for upstream DNS servers in coredns (and nodelocaldns) config -# dns_upstream_forward_extra_opts: -# policy: sequential -# Apply extra options to coredns kubernetes plugin -# coredns_kubernetes_extra_opts: -# - 'fallthrough example.local' -# Forward extra domains to the coredns kubernetes plugin -# coredns_kubernetes_extra_domains: '' - -# Can be docker_dns, host_resolvconf or none -resolvconf_mode: host_resolvconf -# Deploy netchecker app to verify DNS resolve as an HTTP service -deploy_netchecker: false -# Ip address of the kubernetes skydns service -skydns_server: "{{ kube_service_addresses|ipaddr('net')|ipaddr(3)|ipaddr('address') }}" -skydns_server_secondary: "{{ kube_service_addresses|ipaddr('net')|ipaddr(4)|ipaddr('address') }}" -dns_domain: "{{ cluster_name }}" - -## Container runtime -## docker for docker, crio for cri-o and containerd for containerd. -## Default: containerd -container_manager: containerd - -## CRI-O registry mirrors setup -crio_registries: - - prefix: docker.io - insecure: false - blocked: false - location: registry-1.docker.io - unqualified: false - mirrors: - - location: https://mirror.gcr.io - insecure: false - - location: https://quay.io - insecure: false - -## Docker registry mirrors setup -docker_registry_mirrors: - - https://mirror.gcr.io - - https://quay.io - -# Additional container runtimes -kata_containers_enabled: false - -kubeadm_certificate_key: "{{ lookup('password', credentials_dir + '/kubeadm_certificate_key.creds length=64 chars=hexdigits') | lower }}" - -# K8s image pull policy (imagePullPolicy) -k8s_image_pull_policy: IfNotPresent - -# audit log for kubernetes -kubernetes_audit: false - -# define kubelet config dir for dynamic kubelet -# kubelet_config_dir: -default_kubelet_config_dir: "{{ kube_config_dir }}/dynamic_kubelet_dir" - -# pod security policy (RBAC must be enabled either by having 'RBAC' in authorization_modes or kubeadm enabled) -podsecuritypolicy_enabled: true - -# Custom PodSecurityPolicySpec for restricted policy -# podsecuritypolicy_restricted_spec: {} - -# Custom PodSecurityPolicySpec for privileged policy -# podsecuritypolicy_privileged_spec: {} - -# Make a copy of kubeconfig on the host that runs Ansible in {{ inventory_dir }}/artifacts -kubeconfig_localhost: true -# Use ansible_host as external api ip when copying over kubeconfig. -kubeconfig_localhost_ansible_host: true -# kubectl_localhost: false - -# A comma separated list of levels of node allocatable enforcement to be enforced by kubelet. -# Acceptable options are 'pods', 'system-reserved', 'kube-reserved' and ''. Default is "". -# kubelet_enforce_node_allocatable: pods - -## Set runtime and kubelet cgroups when using systemd as cgroup driver (default) -# kubelet_runtime_cgroups: "/{{ kube_service_cgroups }}/{{ container_manager }}.service" -# kubelet_kubelet_cgroups: "/{{ kube_service_cgroups }}/kubelet.service" - -## Set runtime and kubelet cgroups when using cgroupfs as cgroup driver -# kubelet_runtime_cgroups_cgroupfs: "/system.slice/{{ container_manager }}.service" -# kubelet_kubelet_cgroups_cgroupfs: "/system.slice/kubelet.service" - -# Optionally reserve this space for kube daemons. -# kube_reserved: false -## Uncomment to override default values -## The following two items need to be set when kube_reserved is true -# kube_reserved_cgroups_for_service_slice: kube.slice -# kube_reserved_cgroups: "/{{ kube_reserved_cgroups_for_service_slice }}" -# kube_memory_reserved: 256Mi -# kube_cpu_reserved: 100m -# kube_ephemeral_storage_reserved: 2Gi -# kube_pid_reserved: "1000" -# Reservation for master hosts -# kube_master_memory_reserved: 512Mi -# kube_master_cpu_reserved: 200m -# kube_master_ephemeral_storage_reserved: 2Gi -# kube_master_pid_reserved: "1000" - -## Optionally reserve resources for OS system daemons. -# system_reserved: true -## Uncomment to override default values -## The following two items need to be set when system_reserved is true -# system_reserved_cgroups_for_service_slice: system.slice -# system_reserved_cgroups: "/{{ system_reserved_cgroups_for_service_slice }}" -# system_memory_reserved: 512Mi -# system_cpu_reserved: 500m -# system_ephemeral_storage_reserved: 2Gi -## Reservation for master hosts -# system_master_memory_reserved: 256Mi -# system_master_cpu_reserved: 250m -# system_master_ephemeral_storage_reserved: 2Gi - -## Eviction Thresholds to avoid system OOMs -# https://kubernetes.io/docs/tasks/administer-cluster/reserve-compute-resources/#eviction-thresholds -# eviction_hard: {} -# eviction_hard_control_plane: {} - -# An alternative flexvolume plugin directory -# kubelet_flexvolumes_plugins_dir: /usr/libexec/kubernetes/kubelet-plugins/volume/exec - -## Supplementary addresses that can be added in kubernetes ssl keys. -## That can be useful for example to setup a keepalived virtual IP -# supplementary_addresses_in_ssl_keys: [10.0.0.1, 10.0.0.2, 10.0.0.3] - -## Running on top of openstack vms with cinder enabled may lead to unschedulable pods due to NoVolumeZoneConflict restriction in kube-scheduler. -## See https://github.com/kubernetes-sigs/kubespray/issues/2141 -## Set this variable to true to get rid of this issue -volume_cross_zone_attachment: false -## Add Persistent Volumes Storage Class for corresponding cloud provider (supported: in-tree OpenStack, Cinder CSI, -## AWS EBS CSI, Azure Disk CSI, GCP Persistent Disk CSI) -persistent_volumes_enabled: false - -## Container Engine Acceleration -## Enable container acceleration feature, for example use gpu acceleration in containers -# nvidia_accelerator_enabled: true -## Nvidia GPU driver install. Install will by done by a (init) pod running as a daemonset. -## Important: if you use Ubuntu then you should set in all.yml 'docker_storage_options: -s overlay2' -## Array with nvida_gpu_nodes, leave empty or comment if you don't want to install drivers. -## Labels and taints won't be set to nodes if they are not in the array. -# nvidia_gpu_nodes: -# - kube-gpu-001 -# nvidia_driver_version: "384.111" -## flavor can be tesla or gtx -# nvidia_gpu_flavor: gtx -## NVIDIA driver installer images. Change them if you have trouble accessing gcr.io. -# nvidia_driver_install_centos_container: atzedevries/nvidia-centos-driver-installer:2 -# nvidia_driver_install_ubuntu_container: gcr.io/google-containers/ubuntu-nvidia-driver-installer@sha256:7df76a0f0a17294e86f691c81de6bbb7c04a1b4b3d4ea4e7e2cccdc42e1f6d63 -## NVIDIA GPU device plugin image. -# nvidia_gpu_device_plugin_container: "registry.k8s.io/nvidia-gpu-device-plugin@sha256:0842734032018be107fa2490c98156992911e3e1f2a21e059ff0105b07dd8e9e" - -## Support tls min version, Possible values: VersionTLS10, VersionTLS11, VersionTLS12, VersionTLS13. -# tls_min_version: "" - -## Support tls cipher suites. -# tls_cipher_suites: {} -# - TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA -# - TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256 -# - TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 -# - TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA -# - TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 -# - TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305 -# - TLS_ECDHE_ECDSA_WITH_RC4_128_SHA -# - TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA -# - TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA -# - TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 -# - TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 -# - TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA -# - TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 -# - TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305 -# - TLS_ECDHE_RSA_WITH_RC4_128_SHA -# - TLS_RSA_WITH_3DES_EDE_CBC_SHA -# - TLS_RSA_WITH_AES_128_CBC_SHA -# - TLS_RSA_WITH_AES_128_CBC_SHA256 -# - TLS_RSA_WITH_AES_128_GCM_SHA256 -# - TLS_RSA_WITH_AES_256_CBC_SHA -# - TLS_RSA_WITH_AES_256_GCM_SHA384 -# - TLS_RSA_WITH_RC4_128_SHA - -## Amount of time to retain events. (default 1h0m0s) -event_ttl_duration: "1h0m0s" - -## Automatically renew K8S control plane certificates on first Monday of each month -auto_renew_certificates: true -# First Monday of each month -# auto_renew_certificates_systemd_calendar: "Mon *-*-1,2,3,4,5,6,7 03:{{ groups['kube_control_plane'].index(inventory_hostname) }}0:00" - -# kubeadm patches path -kubeadm_patches: [] -## Kubelet additional settings -kubelet_custom_flags: - - "--root-dir=/app/k8s/kubelet" \ No newline at end of file diff --git a/kubespray/inventory/group_vars/k8s_cluster/k8s-net-calico.yml b/kubespray/inventory/group_vars/k8s_cluster/k8s-net-calico.yml deleted file mode 100644 index 542c617..0000000 --- a/kubespray/inventory/group_vars/k8s_cluster/k8s-net-calico.yml +++ /dev/null @@ -1,131 +0,0 @@ ---- -# see roles/network_plugin/calico/defaults/main.yml - -# the default value of name -calico_cni_name: k8s-pod-network - -## With calico it is possible to distributed routes with border routers of the datacenter. -## Warning : enabling router peering will disable calico's default behavior ('node mesh'). -## The subnets of each nodes will be distributed by the datacenter router -# peer_with_router: false - -# Enables Internet connectivity from containers -# nat_outgoing: true - -# Enables Calico CNI "host-local" IPAM plugin -# calico_ipam_host_local: true - -# add default ippool name -# calico_pool_name: "default-pool" - -# add default ippool blockSize (defaults kube_network_node_prefix) -calico_pool_blocksize: 26 - -# add default ippool CIDR (must be inside kube_pods_subnet, defaults to kube_pods_subnet otherwise) -# calico_pool_cidr: 1.2.3.4/5 - -# add default ippool CIDR to CNI config -# calico_cni_pool: true - -# Add default IPV6 IPPool CIDR. Must be inside kube_pods_subnet_ipv6. Defaults to kube_pods_subnet_ipv6 if not set. -# calico_pool_cidr_ipv6: fd85:ee78:d8a6:8607::1:0000/112 - -# Add default IPV6 IPPool CIDR to CNI config -# calico_cni_pool_ipv6: true - -# Global as_num (/calico/bgp/v1/global/as_num) -# global_as_num: "64512" - -# If doing peering with node-assigned asn where the globas does not match your nodes, you want this -# to be true. All other cases, false. -# calico_no_global_as_num: false - -# You can set MTU value here. If left undefined or empty, it will -# not be specified in calico CNI config, so Calico will use built-in -# defaults. The value should be a number, not a string. -# calico_mtu: 1500 - -# Configure the MTU to use for workload interfaces and tunnels. -# - If Wireguard is enabled, subtract 60 from your network MTU (i.e 1500-60=1440) -# - Otherwise, if VXLAN or BPF mode is enabled, subtract 50 from your network MTU (i.e. 1500-50=1450) -# - Otherwise, if IPIP is enabled, subtract 20 from your network MTU (i.e. 1500-20=1480) -# - Otherwise, if not using any encapsulation, set to your network MTU (i.e. 1500) -# calico_veth_mtu: 1440 - -# Advertise Cluster IPs -# calico_advertise_cluster_ips: true - -# Advertise Service External IPs -# calico_advertise_service_external_ips: -# - x.x.x.x/24 -# - y.y.y.y/32 - -# Advertise Service LoadBalancer IPs -# calico_advertise_service_loadbalancer_ips: -# - x.x.x.x/24 -# - y.y.y.y/16 - -# Choose data store type for calico: "etcd" or "kdd" (kubernetes datastore) -# calico_datastore: "kdd" - -# Choose Calico iptables backend: "Legacy", "Auto" or "NFT" -# calico_iptables_backend: "Auto" - -# Use typha (only with kdd) -# typha_enabled: false - -# Generate TLS certs for secure typha<->calico-node communication -# typha_secure: false - -# Scaling typha: 1 replica per 100 nodes is adequate -# Number of typha replicas -# typha_replicas: 1 - -# Set max typha connections -# typha_max_connections_lower_limit: 300 - -# Set calico network backend: "bird", "vxlan" or "none" -# bird enable BGP routing, required for ipip and no encapsulation modes -# calico_network_backend: vxlan - -# IP in IP and VXLAN is mutualy exclusive modes. -# set IP in IP encapsulation mode: "Always", "CrossSubnet", "Never" -# calico_ipip_mode: 'Never' - -# set VXLAN encapsulation mode: "Always", "CrossSubnet", "Never" -# calico_vxlan_mode: 'Always' - -# set VXLAN port and VNI -# calico_vxlan_vni: 4096 -# calico_vxlan_port: 4789 - -# Enable eBPF mode -calico_bpf_enabled: false - -# If you want to use non default IP_AUTODETECTION_METHOD, IP6_AUTODETECTION_METHOD for calico node set this option to one of: -# * can-reach=DESTINATION -# * interface=INTERFACE-REGEX -# see https://docs.projectcalico.org/reference/node/configuration -# calico_ip_auto_method: "interface=eth.*" -# calico_ip6_auto_method: "interface=eth.*" - -# Set FELIX_MTUIFACEPATTERN, Pattern used to discover the host’s interface for MTU auto-detection. -# see https://projectcalico.docs.tigera.io/reference/felix/configuration -# calico_felix_mtu_iface_pattern: "^((en|wl|ww|sl|ib)[opsx].*|(eth|wlan|wwan).*)" - -# Choose the iptables insert mode for Calico: "Insert" or "Append". -# calico_felix_chaininsertmode: Insert - -# If you want use the default route interface when you use multiple interface with dynamique route (iproute2) -# see https://docs.projectcalico.org/reference/node/configuration : FELIX_DEVICEROUTESOURCEADDRESS -# calico_use_default_route_src_ipaddr: false - -# Enable calico traffic encryption with wireguard -# calico_wireguard_enabled: false - -# Under certain situations liveness and readiness probes may need tunning -# calico_node_livenessprobe_timeout: 10 -# calico_node_readinessprobe_timeout: 10 - -# Calico apiserver (only with kdd) -# calico_apiserver_enabled: false diff --git a/kubespray/inventory/group_vars/k8s_cluster/k8s-net-cilium.yml b/kubespray/inventory/group_vars/k8s_cluster/k8s-net-cilium.yml deleted file mode 100644 index fc3cf51..0000000 --- a/kubespray/inventory/group_vars/k8s_cluster/k8s-net-cilium.yml +++ /dev/null @@ -1,245 +0,0 @@ ---- -# cilium_version: "v1.12.1" - -# Log-level -# cilium_debug: false - -# cilium_mtu: "" -# cilium_enable_ipv4: true -# cilium_enable_ipv6: false - -# Cilium agent health port -# cilium_agent_health_port: "9879" - -# Identity allocation mode selects how identities are shared between cilium -# nodes by setting how they are stored. The options are "crd" or "kvstore". -# - "crd" stores identities in kubernetes as CRDs (custom resource definition). -# These can be queried with: -# `kubectl get ciliumid` -# - "kvstore" stores identities in an etcd kvstore. -# - In order to support External Workloads, "crd" is required -# - Ref: https://docs.cilium.io/en/stable/gettingstarted/external-workloads/#setting-up-support-for-external-workloads-beta -# - KVStore operations are only required when cilium-operator is running with any of the below options: -# - --synchronize-k8s-services -# - --synchronize-k8s-nodes -# - --identity-allocation-mode=kvstore -# - Ref: https://docs.cilium.io/en/stable/internals/cilium_operator/#kvstore-operations -# cilium_identity_allocation_mode: kvstore - -# Etcd SSL dirs -# cilium_cert_dir: /etc/cilium/certs -# kube_etcd_cacert_file: ca.pem -# kube_etcd_cert_file: cert.pem -# kube_etcd_key_file: cert-key.pem - -# Limits for apps -# cilium_memory_limit: 500M -# cilium_cpu_limit: 500m -# cilium_memory_requests: 64M -# cilium_cpu_requests: 100m - -# Overlay Network Mode -# cilium_tunnel_mode: vxlan -# Optional features -# cilium_enable_prometheus: false -# Enable if you want to make use of hostPort mappings -# cilium_enable_portmap: false -# Monitor aggregation level (none/low/medium/maximum) -# cilium_monitor_aggregation: medium -# The monitor aggregation flags determine which TCP flags which, upon the -# first observation, cause monitor notifications to be generated. -# -# Only effective when monitor aggregation is set to "medium" or higher. -# cilium_monitor_aggregation_flags: "all" -# Kube Proxy Replacement mode (strict/partial) -# cilium_kube_proxy_replacement: partial - -# If upgrading from Cilium < 1.5, you may want to override some of these options -# to prevent service disruptions. See also: -# http://docs.cilium.io/en/stable/install/upgrade/#changes-that-may-require-action -# cilium_preallocate_bpf_maps: false - -# `cilium_tofqdns_enable_poller` is deprecated in 1.8, removed in 1.9 -# cilium_tofqdns_enable_poller: false - -# `cilium_enable_legacy_services` is deprecated in 1.6, removed in 1.9 -# cilium_enable_legacy_services: false - -# Unique ID of the cluster. Must be unique across all conneted clusters and -# in the range of 1 and 255. Only relevant when building a mesh of clusters. -# This value is not defined by default -# cilium_cluster_id: - -# Deploy cilium even if kube_network_plugin is not cilium. -# This enables to deploy cilium alongside another CNI to replace kube-proxy. -# cilium_deploy_additionally: false - -# Auto direct nodes routes can be used to advertise pods routes in your cluster -# without any tunelling (with `cilium_tunnel_mode` sets to `disabled`). -# This works only if you have a L2 connectivity between all your nodes. -# You wil also have to specify the variable `cilium_native_routing_cidr` to -# make this work. Please refer to the cilium documentation for more -# information about this kind of setups. -# cilium_auto_direct_node_routes: false - -# Allows to explicitly specify the IPv4 CIDR for native routing. -# When specified, Cilium assumes networking for this CIDR is preconfigured and -# hands traffic destined for that range to the Linux network stack without -# applying any SNAT. -# Generally speaking, specifying a native routing CIDR implies that Cilium can -# depend on the underlying networking stack to route packets to their -# destination. To offer a concrete example, if Cilium is configured to use -# direct routing and the Kubernetes CIDR is included in the native routing CIDR, -# the user must configure the routes to reach pods, either manually or by -# setting the auto-direct-node-routes flag. -# cilium_native_routing_cidr: "" - -# Allows to explicitly specify the IPv6 CIDR for native routing. -# cilium_native_routing_cidr_ipv6: "" - -# Enable transparent network encryption. -# cilium_encryption_enabled: false - -# Encryption method. Can be either ipsec or wireguard. -# Only effective when `cilium_encryption_enabled` is set to true. -# cilium_encryption_type: "ipsec" - -# Enable encryption for pure node to node traffic. -# This option is only effective when `cilium_encryption_type` is set to `ipsec`. -# cilium_ipsec_node_encryption: false - -# If your kernel or distribution does not support WireGuard, Cilium agent can be configured to fall back on the user-space implementation. -# When this flag is enabled and Cilium detects that the kernel has no native support for WireGuard, -# it will fallback on the wireguard-go user-space implementation of WireGuard. -# This option is only effective when `cilium_encryption_type` is set to `wireguard`. -# cilium_wireguard_userspace_fallback: false - -# IP Masquerade Agent -# https://docs.cilium.io/en/stable/concepts/networking/masquerading/ -# By default, all packets from a pod destined to an IP address outside of the cilium_native_routing_cidr range are masqueraded -# cilium_ip_masq_agent_enable: false - -### A packet sent from a pod to a destination which belongs to any CIDR from the nonMasqueradeCIDRs is not going to be masqueraded -# cilium_non_masquerade_cidrs: -# - 10.0.0.0/8 -# - 172.16.0.0/12 -# - 192.168.0.0/16 -# - 100.64.0.0/10 -# - 192.0.0.0/24 -# - 192.0.2.0/24 -# - 192.88.99.0/24 -# - 198.18.0.0/15 -# - 198.51.100.0/24 -# - 203.0.113.0/24 -# - 240.0.0.0/4 -### Indicates whether to masquerade traffic to the link local prefix. -### If the masqLinkLocal is not set or set to false, then 169.254.0.0/16 is appended to the non-masquerade CIDRs list. -# cilium_masq_link_local: false -### A time interval at which the agent attempts to reload config from disk -# cilium_ip_masq_resync_interval: 60s - -# Hubble -### Enable Hubble without install -# cilium_enable_hubble: false -### Enable Hubble Metrics -cilium_enable_hubble_metrics: false -### if cilium_enable_hubble_metrics: true -# cilium_hubble_metrics: -# - dns -# - drop -# - tcp -# - flow -# - icmp -# - http -### Enable Hubble install -cilium_hubble_install: false -### Enable auto generate certs if cilium_hubble_install: true -cilium_hubble_tls_generate: true - -# IP address management mode for v1.9+. -# https://docs.cilium.io/en/v1.9/concepts/networking/ipam/ -# cilium_ipam_mode: kubernetes - -# Extra arguments for the Cilium agent -# cilium_agent_custom_args: [] - -# For adding and mounting extra volumes to the cilium agent -# cilium_agent_extra_volumes: [] -# cilium_agent_extra_volume_mounts: [] - -# cilium_agent_extra_env_vars: [] - -# cilium_operator_replicas: 2 - -# The address at which the cillium operator bind health check api -# cilium_operator_api_serve_addr: "127.0.0.1:9234" - -## A dictionary of extra config variables to add to cilium-config, formatted like: -## cilium_config_extra_vars: -## var1: "value1" -## var2: "value2" -# cilium_config_extra_vars: {} - -# For adding and mounting extra volumes to the cilium operator -# cilium_operator_extra_volumes: [] -# cilium_operator_extra_volume_mounts: [] - -# Extra arguments for the Cilium Operator -# cilium_operator_custom_args: [] - -# Name of the cluster. Only relevant when building a mesh of clusters. -# cilium_cluster_name: default - -# Make Cilium take ownership over the `/etc/cni/net.d` directory on the node, renaming all non-Cilium CNI configurations to `*.cilium_bak`. -# This ensures no Pods can be scheduled using other CNI plugins during Cilium agent downtime. -# Available for Cilium v1.10 and up. -# cilium_cni_exclusive: true - -# Configure the log file for CNI logging with retention policy of 7 days. -# Disable CNI file logging by setting this field to empty explicitly. -# Available for Cilium v1.12 and up. -# cilium_cni_log_file: "/var/run/cilium/cilium-cni.log" - -# -- Configure cgroup related configuration -# -- Enable auto mount of cgroup2 filesystem. -# When `cilium_cgroup_auto_mount` is enabled, cgroup2 filesystem is mounted at -# `cilium_cgroup_host_root` path on the underlying host and inside the cilium agent pod. -# If users disable `cilium_cgroup_auto_mount`, it's expected that users have mounted -# cgroup2 filesystem at the specified `cilium_cgroup_auto_mount` volume, and then the -# volume will be mounted inside the cilium agent pod at the same path. -# Available for Cilium v1.11 and up -# cilium_cgroup_auto_mount: true -# -- Configure cgroup root where cgroup2 filesystem is mounted on the host -# cilium_cgroup_host_root: "/run/cilium/cgroupv2" - -# Specifies the ratio (0.0-1.0) of total system memory to use for dynamic -# sizing of the TCP CT, non-TCP CT, NAT and policy BPF maps. -# cilium_bpf_map_dynamic_size_ratio: "0.0" - -# -- Enables masquerading of IPv4 traffic leaving the node from endpoints. -# Available for Cilium v1.10 and up -# cilium_enable_ipv4_masquerade: true -# -- Enables masquerading of IPv6 traffic leaving the node from endpoints. -# Available for Cilium v1.10 and up -# cilium_enable_ipv6_masquerade: true - -# -- Enable native IP masquerade support in eBPF -cilium_enable_bpf_masquerade: false - -# -- Configure whether direct routing mode should route traffic via -# host stack (true) or directly and more efficiently out of BPF (false) if -# the kernel supports it. The latter has the implication that it will also -# bypass netfilter in the host namespace. -# cilium_enable_host_legacy_routing: true - -# -- Enable use of the remote node identity. -# ref: https://docs.cilium.io/en/v1.7/install/upgrade/#configmap-remote-node-identity -# cilium_enable_remote_node_identity: true - -# -- Enable the use of well-known identities. -# cilium_enable_well_known_identities: false - -# cilium_enable_bpf_clock_probe: true - -# -- Whether to enable CNP status updates. -# cilium_disable_cnp_status_updates: true diff --git a/kubespray/inventory/group_vars/k8s_cluster/k8s-net-flannel.yml b/kubespray/inventory/group_vars/k8s_cluster/k8s-net-flannel.yml deleted file mode 100644 index 64d20a8..0000000 --- a/kubespray/inventory/group_vars/k8s_cluster/k8s-net-flannel.yml +++ /dev/null @@ -1,18 +0,0 @@ -# see roles/network_plugin/flannel/defaults/main.yml - -## interface that should be used for flannel operations -## This is actually an inventory cluster-level item -# flannel_interface: - -## Select interface that should be used for flannel operations by regexp on Name or IP -## This is actually an inventory cluster-level item -## example: select interface with ip from net 10.0.0.0/23 -## single quote and escape backslashes -# flannel_interface_regexp: '10\\.0\\.[0-2]\\.\\d{1,3}' - -# You can choose what type of flannel backend to use: 'vxlan', 'host-gw' or 'wireguard' -# please refer to flannel's docs : https://github.com/coreos/flannel/blob/master/README.md -# flannel_backend_type: "vxlan" -# flannel_vxlan_vni: 1 -# flannel_vxlan_port: 8472 -# flannel_vxlan_direct_routing: false diff --git a/kubespray/inventory/group_vars/k8s_cluster/k8s-net-kube-ovn.yml b/kubespray/inventory/group_vars/k8s_cluster/k8s-net-kube-ovn.yml deleted file mode 100644 index c241a76..0000000 --- a/kubespray/inventory/group_vars/k8s_cluster/k8s-net-kube-ovn.yml +++ /dev/null @@ -1,63 +0,0 @@ ---- - -# geneve or vlan -kube_ovn_network_type: geneve - -# geneve, vxlan or stt. ATTENTION: some networkpolicy cannot take effect when using vxlan and stt need custom compile ovs kernel module -kube_ovn_tunnel_type: geneve - -## The nic to support container network can be a nic name or a group of regex separated by comma e.g: 'enp6s0f0,eth.*', if empty will use the nic that the default route use. -# kube_ovn_iface: eth1 -## The MTU used by pod iface in overlay networks (default iface MTU - 100) -# kube_ovn_mtu: 1333 - -## Enable hw-offload, disable traffic mirror and set the iface to the physical port. Make sure that there is an IP address bind to the physical port. -kube_ovn_hw_offload: false -# traffic mirror -kube_ovn_traffic_mirror: false - -# kube_ovn_pool_cidr_ipv6: fd85:ee78:d8a6:8607::1:0000/112 -# kube_ovn_default_interface_name: eth0 - -kube_ovn_external_address: 8.8.8.8 -kube_ovn_external_address_ipv6: 2400:3200::1 -kube_ovn_external_dns: alauda.cn - -# kube_ovn_default_gateway: 10.233.64.1,fd85:ee78:d8a6:8607::1:0 -kube_ovn_default_gateway_check: true -kube_ovn_default_logical_gateway: false -# kube_ovn_default_exclude_ips: 10.16.0.1 -kube_ovn_node_switch_cidr: 100.64.0.0/16 -kube_ovn_node_switch_cidr_ipv6: fd00:100:64::/64 - -## vlan config, set default interface name and vlan id -# kube_ovn_default_interface_name: eth0 -kube_ovn_default_vlan_id: 100 -kube_ovn_vlan_name: product - -## pod nic type, support: veth-pair or internal-port -kube_ovn_pod_nic_type: veth_pair - -## Enable load balancer -kube_ovn_enable_lb: true - -## Enable network policy support -kube_ovn_enable_np: true - -## Enable external vpc support -kube_ovn_enable_external_vpc: true - -## Enable checksum -kube_ovn_encap_checksum: true - -## enable ssl -kube_ovn_enable_ssl: false - -## dpdk -kube_ovn_dpdk_enabled: false - -## enable interconnection to an existing IC database server. -kube_ovn_ic_enable: false -kube_ovn_ic_autoroute: true -kube_ovn_ic_dbhost: "127.0.0.1" -kube_ovn_ic_zone: "kubernetes" diff --git a/kubespray/inventory/group_vars/k8s_cluster/k8s-net-kube-router.yml b/kubespray/inventory/group_vars/k8s_cluster/k8s-net-kube-router.yml deleted file mode 100644 index e4dfcc9..0000000 --- a/kubespray/inventory/group_vars/k8s_cluster/k8s-net-kube-router.yml +++ /dev/null @@ -1,64 +0,0 @@ -# See roles/network_plugin/kube-router//defaults/main.yml - -# Enables Pod Networking -- Advertises and learns the routes to Pods via iBGP -# kube_router_run_router: true - -# Enables Network Policy -- sets up iptables to provide ingress firewall for pods -# kube_router_run_firewall: true - -# Enables Service Proxy -- sets up IPVS for Kubernetes Services -# see docs/kube-router.md "Caveats" section -# kube_router_run_service_proxy: false - -# Add Cluster IP of the service to the RIB so that it gets advertises to the BGP peers. -# kube_router_advertise_cluster_ip: false - -# Add External IP of service to the RIB so that it gets advertised to the BGP peers. -# kube_router_advertise_external_ip: false - -# Add LoadBalancer IP of service status as set by the LB provider to the RIB so that it gets advertised to the BGP peers. -# kube_router_advertise_loadbalancer_ip: false - -# Adjust manifest of kube-router daemonset template with DSR needed changes -# kube_router_enable_dsr: false - -# Array of arbitrary extra arguments to kube-router, see -# https://github.com/cloudnativelabs/kube-router/blob/master/docs/user-guide.md -# kube_router_extra_args: [] - -# ASN number of the cluster, used when communicating with external BGP routers -# kube_router_cluster_asn: ~ - -# ASN numbers of the BGP peer to which cluster nodes will advertise cluster ip and node's pod cidr. -# kube_router_peer_router_asns: ~ - -# The ip address of the external router to which all nodes will peer and advertise the cluster ip and pod cidr's. -# kube_router_peer_router_ips: ~ - -# The remote port of the external BGP to which all nodes will peer. If not set, default BGP port (179) will be used. -# kube_router_peer_router_ports: ~ - -# Setups node CNI to allow hairpin mode, requires node reboots, see -# https://github.com/cloudnativelabs/kube-router/blob/master/docs/user-guide.md#hairpin-mode -# kube_router_support_hairpin_mode: false - -# Select DNS Policy ClusterFirstWithHostNet, ClusterFirst, etc. -# kube_router_dns_policy: ClusterFirstWithHostNet - -# Array of annotations for master -# kube_router_annotations_master: [] - -# Array of annotations for every node -# kube_router_annotations_node: [] - -# Array of common annotations for every node -# kube_router_annotations_all: [] - -# Enables scraping kube-router metrics with Prometheus -# kube_router_enable_metrics: false - -# Path to serve Prometheus metrics on -# kube_router_metrics_path: /metrics - -# Prometheus metrics port to use -# kube_router_metrics_port: 9255 diff --git a/kubespray/inventory/group_vars/k8s_cluster/k8s-net-macvlan.yml b/kubespray/inventory/group_vars/k8s_cluster/k8s-net-macvlan.yml deleted file mode 100644 index d2534e7..0000000 --- a/kubespray/inventory/group_vars/k8s_cluster/k8s-net-macvlan.yml +++ /dev/null @@ -1,6 +0,0 @@ ---- -# private interface, on a l2-network -macvlan_interface: "eth1" - -# Enable nat in default gateway network interface -enable_nat_default_gateway: true diff --git a/kubespray/inventory/group_vars/k8s_cluster/k8s-net-weave.yml b/kubespray/inventory/group_vars/k8s_cluster/k8s-net-weave.yml deleted file mode 100644 index 269a77c..0000000 --- a/kubespray/inventory/group_vars/k8s_cluster/k8s-net-weave.yml +++ /dev/null @@ -1,64 +0,0 @@ -# see roles/network_plugin/weave/defaults/main.yml - -# Weave's network password for encryption, if null then no network encryption. -# weave_password: ~ - -# If set to 1, disable checking for new Weave Net versions (default is blank, -# i.e. check is enabled) -# weave_checkpoint_disable: false - -# Soft limit on the number of connections between peers. Defaults to 100. -# weave_conn_limit: 100 - -# Weave Net defaults to enabling hairpin on the bridge side of the veth pair -# for containers attached. If you need to disable hairpin, e.g. your kernel is -# one of those that can panic if hairpin is enabled, then you can disable it by -# setting `HAIRPIN_MODE=false`. -# weave_hairpin_mode: true - -# The range of IP addresses used by Weave Net and the subnet they are placed in -# (CIDR format; default 10.32.0.0/12) -# weave_ipalloc_range: "{{ kube_pods_subnet }}" - -# Set to 0 to disable Network Policy Controller (default is on) -# weave_expect_npc: "{{ enable_network_policy }}" - -# List of addresses of peers in the Kubernetes cluster (default is to fetch the -# list from the api-server) -# weave_kube_peers: ~ - -# Set the initialization mode of the IP Address Manager (defaults to consensus -# amongst the KUBE_PEERS) -# weave_ipalloc_init: ~ - -# Set the IP address used as a gateway from the Weave network to the host -# network - this is useful if you are configuring the addon as a static pod. -# weave_expose_ip: ~ - -# Address and port that the Weave Net daemon will serve Prometheus-style -# metrics on (defaults to 0.0.0.0:6782) -# weave_metrics_addr: ~ - -# Address and port that the Weave Net daemon will serve status requests on -# (defaults to disabled) -# weave_status_addr: ~ - -# Weave Net defaults to 1376 bytes, but you can set a smaller size if your -# underlying network has a tighter limit, or set a larger size for better -# performance if your network supports jumbo frames (e.g. 8916) -# weave_mtu: 1376 - -# Set to 1 to preserve the client source IP address when accessing Service -# annotated with `service.spec.externalTrafficPolicy=Local`. The feature works -# only with Weave IPAM (default). -# weave_no_masq_local: true - -# set to nft to use nftables backend for iptables (default is iptables) -# weave_iptables_backend: iptables - -# Extra variables that passing to launch.sh, useful for enabling seed mode, see -# https://www.weave.works/docs/net/latest/tasks/ipam/ipam/ -# weave_extra_args: ~ - -# Extra variables for weave_npc that passing to launch.sh, useful for change log level, ex --log-level=error -# weave_npc_extra_args: ~ diff --git a/kubespray/inventory/hosts b/kubespray/inventory/hosts deleted file mode 100644 index 5ead582..0000000 --- a/kubespray/inventory/hosts +++ /dev/null @@ -1,17 +0,0 @@ - -k8s-master-1 ansible_host=172.16.1.136 ip=172.16.1.136 -k8s-worker-1 ansible_host=172.16.1.135 ip=172.16.1.135 - -[kube_control_plane] -k8s-master-1 - -[etcd] -k8s-master-1 - -[kube_node] -k8s-worker-1 - -[all:vars] -ansible_connection=ssh -ansible_user=georgest -ansible_ssh_private_key_file=/Users/georgest/.ssh/id_rsa diff --git a/kubespray/project/library/__pycache__/kube.cpython-312.pyc b/kubespray/project/library/__pycache__/kube.cpython-312.pyc deleted file mode 100644 index c691b2f244dbd689cf438d9f501b7eaf914e3638..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14789 zcmeHOYit|GcHZUtrT2r9CD|)EvPDId96u8|bnM7ZU^`Nr*m>DW8H&52s8A#`yR=0` zatz!QmE07T>Y|cyabcxs5gBn|=U4JG_ZCG{6evWKH)0n4p|jK|KxJrLzNQHsUkix^9gAP_khmPW%- zE}%#FtUyHI?GNz0!1r?;cX0*Q#! z&qWiFNG>Pe9-4u|o*ES>Aub?_v0xYk=c!Pdj8JkU91)%vvv@!nr9GiiY|sO8MgqgalNkj{ zN#qhD=nKdR3IKM_iE$wq9tj7v4iQmTPz-@Qk-kX~P-Dk&;G6AmJk^VIdOf;Lag#BoYW=_lBc9 z4zfVI8i|ATM*v|902Dd}aTD2}3xuUdXyIdVN7{4*R4oNSiE+aM7o>>J!y~jFUO^ed z(L^{(<;UTQ3KJ5DD8xa+K;%)haN`0hy@KRH`EeGZPl#ZVNFE+wN*NWRTyRtfet-fB z699NrQzNmEKLTj^DAMhKc5pBbIs3V<`E$h3&5O+-?1m+@Q6r^66Yqp9EI}D z$Q9s5VN%AKpt!??D5xQHEgg7lNqD4mPU7Mub~X%B^iU?qU6EBINe2uotLlU^+c3;4 zJWgCO=sp578KRq*r=he`qoD}^!X)B6U?Fy^N`nqA%9^jQ_KikCt5qmP!Tg#Kkz_#z z&Ublwx&GD2(f3Dd6plFoqyjJI><^5)Hf9eoi4!CS>Y=C|58h5tijkxO(%?aPM|wD~ z7iGt}EzdWSL@|`>4N(|LL=*!_#u9)fQ3)-4T=DIo>!^zWui+6;HFOU`@H{E-8i}00 zhN>?jA5D;6N6rZw2gRlCnOD_)M<5}ALkS+-aUmK_a>rs(oVE^rAVkOT(Hjhl!I-DR z5%^CQy-~%n<51hVDA>^i2To01p%Ll9s{`&n<*PcdJ`x0AfF}6V!ewaX#uOU$2(;9~ zWoRin|7fIgWy?@fg;u3f$I{m)jmP_FQ+t!+5rEmVq#il3gjNqF zov-*K=u-_rk?Gi@zInM4!4)OUWtT7w<^mIXGvr?G9)yPlMqo~}5cC*$7D5{%hCC49 z7$G(D4hVPH(-z*zo8fNdEs$&Dt&rMz8>Eh;-Q$v-$3bP30EPrr;>g1WKO_9^E<=p9 zz)Z1Ij34vqHN}n0FP#@{hYl<1OsL%QP1vk*O=ik*Qp5+Z+ z59FgUrz(MRAFC*S$2Z>eI2Q@xh*X&~h^(zbNJ0C;-Dz*LuE5iCsh&jw$G6W4FCTMuCmSLt1Q--l-m2Up7 zuI$VkKCL%FSt!T&HCx_*{M9Ods9&kl-$4DEg8Gl6?X?B@mSvmjcgSWMFw1t$+4I!M7G*(Aw&23cxF{P#f@Xc0|NU2&UWnulIq^N5sC60InSPQ+jBb zaS}-Ofqy>+PG(;uJWK*4Nx$^Qld{e4$F(WHf3p5~eqQa>a)Gt@-!LCuVAdL2XH1_u z*W7Ij)AQ4-?yi)(Yq>e?-UYd?th4IU^Rv&dIJab5J62o!QmuVA?O*Rsw;r51{OK#% z=C-S?S6UYL_|zj-&k>-ALo>lxR{;(BK? zPET>Y#_L;`M{bN?8(-~xA=UfBH_mkLE9vgRRQq7YHT1B`n{RIW%KN2vb>~28=fF3| z(>qV3+D~L$udQ2{`b`VIdEaW?Q>nVAmflF$Jq?YwWgA)+-kX1KwP9PTVcXKVbVDEH zI3{Om5H48-v#dS9^S^9^cnv>7JvvdS3nZ_3xTaEPc3G zbJcyt{j=snbrad%QUxel@SKF?%tu}Y3n!A_xr}3r$1$!GEJFBOq0;W>n4>ecsQmp z4e#=FRa`#FY-J>EK6#2EC#NkNkjnfpsea1x7AcSS7FDjFvOhBwO8E}#A52@$TRwh> zv`VRS>^Ww__zrW9^;n1g9a}YdKp+HyagvBeF$|{YDn+=iP6+PlVl#vyutMqU6ke$HbfjlfnxHYafP=a|U$kw7@&9}{Cy z*)$dlM`inw30(As^#sxcRb+=4kA$U27(z^sm2AQ+BLb}{KtiHyAVJv(^2tUJ1CoiL zi0YsODI96V;x>P7sj&p=a=BNajQC4PE-=}ux=Yiu(~DxNs$<5qZm` zqbuR@^!w43I9ZX-tt6*b{L`tX>2)Jhv+W+k)_lyaJDBRaOXp|Lr>nNC*tY!Uo|UO? zzQY)hDInwV+2gCO_FJy@?7@M5u>IWjZT;U@W=@=3IrUcN#M>+N?*OHWj{joViZkpw zP1mYw^VEK~Zbd@(MeM}+Lyd>_F+bmDAE-0_g6SWqH2z(s8J>%b8V#Bn^+kAim{FHe zdM%g%61gjHayll>Ceh$@3^;Fa9>WmX0<=7)yb6)6kU_R%u7#=ufxR(?crfY4 znla1_%++O`6>~Kg_hswc*}~zt3q+V8cCUINw9@YWR>4q~)Iz7ibLpja1p)8zBt)qp zcG@^)AT?9Qu|j&eY7l?sXaJTmW2RDS&@bg`YEdPvsT1{*?lL@0x>&0lIjhpCcgjmc z)V#D}D@c!CQ^}==&b;}$hLk{0zhA7pZ4AAvk_))#a95=(iGP@}x{~VfI;Hj7NycLz zlFi@&Mw0ifu#SiO0QW6kFM6K$E4^OLwe)>7J=voAps>uRY<%J>p0Y?!+JW$WXMQQr zC$l{ship+6!igI`D?TMQNwxr|@qnZ_mFPW^r!eWnq!$vf9SWRgx<0IUq-ZfBss~z! zVjC8P`DAUONho>OvGg(|7ntvz)pMs7&di_ri}$j14KqjAsv2j)Gsb^$R%cyRmyXRI zn@eU~?Q7r|K6mjsHESZ{;xOyL#RIvl758@4d~Te-c0TPska4}Rh5&qVIuCy-SNqDg zffZMK#&vkj=Dg&Xb;1wLewYpRw(yRROzCrmNalZ0+P35Vi>4 zG=p2B21gCaFvWs781&4p#E^6xn6foBg(z!+-DP;{Vxhhnt17DADK9P5hQ{YEYDhXN zuDe83Y)Jb3f`+8yB7u}T+*RowFeE)w)S!zR64?bUAiFWygUMb<${3BZT|kY7fTzfi zXCd*}OU#7y<0l$;>Dh=;nMs^jh#Ci?t7aS4+&PHJx)M;V?bJ)H-+ zb*QKu)jP|~u~8G0)fQ7=v~w4=Fl~`T&1G~ai;}5Iw{P^hrlNTqKp8EXh&z}BkZ_Yz-&y39&asKyR z^rG^DR-GXD@vC{Ii8hCwm;L8K)mKVRP z9$2e$FZll4R}^=xbich)-I=L=XD#Q0NVr&)ado0R$&1Mxy~W*EpS$v0rkZAhm}<6f zdH0R}YyGK~J(=pgSY_hkg!*k?rh03xRhm?Nnd%*wcm85|Ni!fR6v241$S2W7;lG4# zhC_kq+#`}gf0kZ^2Tj(&Vv3}CahEO?)zTiYS3P(Cb{UR8%H5BC3GLHC+#lia>-LL2 z7q$HqFLW@QqNq+U12vt}MbyxwN-m0`I@BnN>Xd(ARP=BjQB;p+A&TmkC`L=fhLS6f zV7NgcvPnnM>2VDa6r&WzIv#{EUGO4@pz>rj1+Dzjyhs=7W8P5#j=&J{rBfc)<094$ zpzp~!Z|Jwl7LW|ijH=7$G`1m#iN(;Rgi^nOeDOaZ!4SWGCbSWl`T^trWjUA{qA>O9 z6Njml7H_7yR}GO4WNaO4H4UpZovE76rC_?Id&cs8RYSI}3Gh`3jdWq?Unvaf1JDz2 z1`)#kPn|*X+cF$~)btAH+0RlEISnH2DLL8O1j8 zBA^Euz~nF{M<6NknvO!oWOZTKh!h*a0L9C6Zx5FK z{pIlRFB4cjMK2$&ybK%8hh-sMI(BHM1KR0)7?10&FLId5S3vI=LhSWQwazr0UYcel z&CQ+C&LrUp3B40qdMnbrb}9o_(2cyE{-dT2mg1aB>kCufbX_|`F>Q)of$}x9JT4b% zJ9POP>IgyEpFr7Kt*p*cSwY!xC|jqM)maoPDEk(at=G!_Fx^8?wt<%24)W@(TIcCP z|Di6ITvIIHIHl~4y46u&nP>x))^Qy9rYR%cNo_82iS_Aj;#>62zI?3h!cs~FT$7Ba zbx1bhKV0C9gqfaCludYp?ZezzSB$bo zf3+hE8e&)D6NXg;T^@RBq~I(F4YqN?6c2>JX;*pzgpvS(D`0Okfu}qC_;(Gtc03^g z07jCqcNK*HYr#Qe@<&kB!;<|-`W;NpVDc^|r!k@at^u}lq4_~L9v%YWJK)1);~P=f zhKPmeiD2cVE!Qdb(uIaerq(*KspCitI&M8TAx zS}CysMd5?^N}(75m`Whq!ONED_HKSl!egfUz$5^rWUF#)na~E2mmy0;D~EMgbyvbP z4u20JBapclr_4WrRGqpRR-lDL)EmQN%?dtl)H+MH_ht=O6}wgYP>$EvA5WvX9%E8DzndFzd? zYh5?@rn~!7&HJIcx#8E0!R%IMM!Gr6%4|1I-#Au&|B%NjR~&wI;Ell}L#Ga%I{NC6 zY&-Jyp}`Zc962dlV#9bMNl_sjR(VrE(Xig!l%J5o5wRDJRE2}&7!)9bm^_0CZs^~) zJ+BlzK*r$}CtkWqyKZDzcHMTGtubAwSf4O7xJ(yp_jY__U_0hu%N_4`rp&uo_q_