aboutsummaryrefslogtreecommitdiff
path: root/ansible
diff options
context:
space:
mode:
Diffstat (limited to 'ansible')
-rw-r--r--ansible/playbooks/gitea.yml13
-rw-r--r--ansible/roles/common/tasks/ufw.yml1
-rw-r--r--ansible/roles/docker/tasks/install_docker.yml4
-rw-r--r--ansible/roles/gitea/defaults/main.yml3
-rw-r--r--ansible/roles/gitea/tasks/deploy_gitea.yml38
-rw-r--r--ansible/roles/gitea/tasks/main.yml4
-rw-r--r--ansible/roles/k8s/tasks/install_helm.yml30
-rw-r--r--ansible/roles/k8s/tasks/main.yml4
-rw-r--r--ansible/roles/k8s/tasks/ufw.yml1
9 files changed, 38 insertions, 60 deletions
diff --git a/ansible/playbooks/gitea.yml b/ansible/playbooks/gitea.yml
deleted file mode 100644
index 0f7a753..0000000
--- a/ansible/playbooks/gitea.yml
+++ /dev/null
@@ -1,13 +0,0 @@
----
-- name: Deploy Gitea Service
- hosts: tag_docker
- become: true
-
- pre_tasks:
- - name: Ensure Docker is installed
- ansible.builtin.include_role:
- name: docker
-
- roles:
- - role: gitea
-...
diff --git a/ansible/roles/common/tasks/ufw.yml b/ansible/roles/common/tasks/ufw.yml
index aa8777b..d274f07 100644
--- a/ansible/roles/common/tasks/ufw.yml
+++ b/ansible/roles/common/tasks/ufw.yml
@@ -2,6 +2,7 @@
- name: Ensure UFW is installed
ansible.builtin.apt:
name: ufw
+ lock_timeout: 180 # 3m
state: present
- name: Allow SSH
diff --git a/ansible/roles/docker/tasks/install_docker.yml b/ansible/roles/docker/tasks/install_docker.yml
index 1f7be5d..3179618 100644
--- a/ansible/roles/docker/tasks/install_docker.yml
+++ b/ansible/roles/docker/tasks/install_docker.yml
@@ -9,7 +9,7 @@
name: "{{ docker_dependencies }}"
state: present
update_cache: true
- lock_timeout: 60
+ lock_timeout: 180 # 3m
- name: Ensure /etc/apt/keyrings directory exists
ansible.builtin.file:
@@ -36,7 +36,7 @@
name: "{{ docker_packages }}"
state: present
update_cache: true
- lock_timeout: 60
+ lock_timeout: 180 # 3m
- name: Ensure Docker service is started and enabled
ansible.builtin.systemd:
diff --git a/ansible/roles/gitea/defaults/main.yml b/ansible/roles/gitea/defaults/main.yml
deleted file mode 100644
index acb1cb5..0000000
--- a/ansible/roles/gitea/defaults/main.yml
+++ /dev/null
@@ -1,3 +0,0 @@
----
-gitea_root_dir: /opt/gitea
-...
diff --git a/ansible/roles/gitea/tasks/deploy_gitea.yml b/ansible/roles/gitea/tasks/deploy_gitea.yml
deleted file mode 100644
index 4390689..0000000
--- a/ansible/roles/gitea/tasks/deploy_gitea.yml
+++ /dev/null
@@ -1,38 +0,0 @@
----
-- name: Gather the package facts
- ansible.builtin.package_facts:
- manager: auto
-
-- name: Verify Docker and compose are available
- ansible.builtin.assert:
- that:
- - "'docker-ce' in ansible_facts.packages"
- - "'docker-compose-plugin' in ansible_facts.packages"
- fail_msg: "Docker and compose plugin are not installed"
-
-- name: Create Gitea directories
- ansible.builtin.file:
- path: "{{ gitea_root_dir }}"
- state: directory
- mode: '0755'
-
-- name: Deploy Gitea stack using compose v2
- community.docker.docker_compose_v2:
- project_src: "{{ playbook_dir }}/../../docker/compose/gitea"
- state: present
- pull: "policy"
- recreate: always
-
-- name: Verify that gitea and db services are running
- ansible.builtin.assert:
- that:
- - gitea_container.State == 'running'
- - db_container.State == 'running'
- vars:
- gitea_container: >-
- {{ output.containers | selectattr("Service", "equalto", "gitea") | first }}
- db_container: >-
- {{ output.containers | selectattr("Service", "equalto", "db") | first }}
-
-
-...
diff --git a/ansible/roles/gitea/tasks/main.yml b/ansible/roles/gitea/tasks/main.yml
deleted file mode 100644
index 25b2e71..0000000
--- a/ansible/roles/gitea/tasks/main.yml
+++ /dev/null
@@ -1,4 +0,0 @@
----
-- name: Deploy Gitea container and it's db
- ansible.builtin.include_tasks: deploy_gitea.yml
-...
diff --git a/ansible/roles/k8s/tasks/install_helm.yml b/ansible/roles/k8s/tasks/install_helm.yml
new file mode 100644
index 0000000..244950a
--- /dev/null
+++ b/ansible/roles/k8s/tasks/install_helm.yml
@@ -0,0 +1,30 @@
+---
+- name: Check if Helm is already installed
+ command: helm version --short
+ register: helm_installed
+ ignore_errors: true
+ changed_when: false
+
+- name: Download Helm install script
+ get_url:
+ url: https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3
+ dest: /tmp/get_helm.sh
+ mode: '0755'
+ when: helm_installed is failed or helm_installed.rc != 0
+
+- name: Install Helm
+ command: /tmp/get_helm.sh
+ become: true
+ when: helm_installed is failed or helm_installed.rc != 0
+ register: helm_install_result
+ changed_when: "'Helm' in helm_install_result.stdout"
+
+- name: Verify Helm installation
+ command: helm version --short
+ register: helm_version
+ changed_when: false
+
+- name: Display Helm version
+ debug:
+ msg: "Helm {{ helm_version.stdout }} is installed"
+...
diff --git a/ansible/roles/k8s/tasks/main.yml b/ansible/roles/k8s/tasks/main.yml
index fb58c1b..b6234fa 100644
--- a/ansible/roles/k8s/tasks/main.yml
+++ b/ansible/roles/k8s/tasks/main.yml
@@ -9,4 +9,8 @@
- name: Install k3s on worker nodes
ansible.builtin.include_tasks: install_k3s_worker.yml
when: inventory_hostname in groups['tag_k3s_worker']
+
+- name: Install helm on master nodes
+ ansible.builtin.include_tasks: install_helm.yml
+ when: inventory_hostname in groups['tag_k3s_master']
...
diff --git a/ansible/roles/k8s/tasks/ufw.yml b/ansible/roles/k8s/tasks/ufw.yml
index db4f27b..2d8dec5 100644
--- a/ansible/roles/k8s/tasks/ufw.yml
+++ b/ansible/roles/k8s/tasks/ufw.yml
@@ -2,6 +2,7 @@
- name: Ensure UFW is installed
ansible.builtin.apt:
name: ufw
+ lock_timeout: 180 # 3m
state: present
- name: Allow Kubernetes API server (6443)