Skip to content

Commit e5bbda9

Browse files
committed
install-go-deps: Add generic Go toolchain role
Add reusable install-go-deps role that provides consistent Go toolchain installation across all distributions: - Debian/Ubuntu: golang-go - Fedora/RHEL: golang - SUSE: go This modular role can be included by any workflow or role needing Go support, following kdevops patterns for dependency management. Similar to install-rust-deps, this provides a generic building block for workflows that need Go tooling. Generated-by: Claude AI Signed-off-by: Luis Chamberlain <[email protected]>
1 parent ff62212 commit e5bbda9

File tree

6 files changed

+73
-0
lines changed

6 files changed

+73
-0
lines changed
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
---
2+
- name: Install Go build dependencies
3+
become: true
4+
become_method: sudo
5+
ansible.builtin.apt:
6+
name:
7+
- golang-go
8+
state: present
9+
update_cache: false
10+
tags: ["go", "deps"]
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
---
2+
- name: Install Go build dependencies
3+
become: true
4+
become_method: sudo
5+
ansible.builtin.dnf:
6+
name:
7+
- golang
8+
state: present
9+
tags: ["go", "deps"]
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
---
2+
- name: Import optional distribution specific variables
3+
ansible.builtin.include_vars: "{{ item }}"
4+
ignore_errors: true
5+
with_first_found:
6+
- files:
7+
- "{{ ansible_facts['os_family'] | lower }}.yml"
8+
skip: true
9+
tags: vars
10+
11+
- name: Distribution specific setup
12+
ansible.builtin.import_tasks: debian/main.yml
13+
when: ansible_facts['os_family']|lower == 'debian'
14+
- ansible.builtin.import_tasks: suse/main.yml
15+
when: ansible_facts['os_family']|lower == 'suse'
16+
- ansible.builtin.import_tasks: redhat/main.yml
17+
when:
18+
- ansible_facts['os_family']|lower == 'redhat'
19+
- ansible_facts['distribution']|lower != "fedora"
20+
- ansible.builtin.import_tasks: fedora/main.yml
21+
when: ansible_facts['distribution']|lower == "fedora"
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
---
2+
- name: Install Go build dependencies
3+
become: true
4+
become_method: sudo
5+
ansible.builtin.dnf:
6+
name:
7+
- golang
8+
state: present
9+
tags: ["go", "deps"]
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
---
2+
- name: Install Go build dependencies
3+
become: true
4+
become_method: sudo
5+
community.general.zypper:
6+
name:
7+
- go
8+
state: present
9+
tags: ["go", "deps"]
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
---
2+
- name: Import optional extra_args file
3+
ansible.builtin.include_vars: "{{ item }}"
4+
ignore_errors: true
5+
with_first_found:
6+
- files:
7+
- "../extra_vars.yml"
8+
- "../extra_vars.yaml"
9+
- "../extra_vars.json"
10+
skip: true
11+
tags: vars
12+
13+
# Install Go build dependencies
14+
- name: Install Go build dependencies
15+
ansible.builtin.include_tasks: install-deps/main.yml

0 commit comments

Comments
 (0)