-
-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathplaybook.yml
111 lines (95 loc) · 3.88 KB
/
playbook.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
---
- hosts: 127.0.0.1
connection: local
gather_facts: true # Run gather_facts to define ansible_env.HOME
vars_files:
- ./config.yml
roles:
#### System and terminal-related changes. ##################################
- role: roles/sysctl
# Do not run sysctl in check mode.
# `sysctl` requires low-level access to kernel and is not a thing for a docker container.
when: not ansible_check_mode
- role: roles/dotfiles
- role: vendor/roles/fish
when: fish.install|bool and not ansible_check_mode
vars:
fish_set_as_default_shell: '{{ fish.set_default|bool }}'
omf_theme: '{{ fish.theme }}'
omf_packages: '{{ fish.packages }}'
tags: [fish]
#### Languages and interpreters. ###########################################
- role: vendor/roles/node
when: node.install|bool and not ansible_check_mode
vars:
nvm_node_version: '{{ node.version }}'
nvm_npm_global_packages: '{{ node.npm_global_packages }}'
tags: [node, nvm, npm]
- role: roles/python3
when: python3.install|bool and not ansible_check_mode
vars:
python3_version: '{{ python3.version }}'
python3_pip3_global_packages: '{{ python3.pip3_global_packages }}'
tags: [python, python3, pip3, pip]
- role: vendor/roles/php-composer
when: php.install|bool and not ansible_check_mode
vars:
php_composer_global_packages: '{{ php.composer_global_packages }}'
tags: [php, composer]
#### Apps install. #########################################################
- role: vendor/roles/rpmfusion
become: true
# Force to run the role even in the check mode for having all repositories enabled.
# Who skips the rpmfusion role anyway?
check_mode: false
vars:
rpmfusion_free: true
rpmfusion_nonfree: true
tags: [apps, rpmfusion]
- role: roles/apps
vars:
apps_packages: '{{ apps.packages }}'
apps_flatpak_packages: '{{ apps.flatpak }}'
apps_rpm_urls: '{{ apps.rpm_urls }}'
tags: [apps, packages, flatpak]
#### Code Editors and IDEs. ################################################
- role: vendor/roles/jetbrains-toolbox
when: apps.jetbrains_toolbox.install|bool and not ansible_check_mode
become: true
tags: [ide, jetbrains, jetbrains-toolbox]
- role: vendor/roles/visual-studio-code
when: apps.visual_studio_code.install|bool and not ansible_check_mode
vars:
users:
- username: '{{ ansible_env.USER }}'
visual_studio_code_extensions: '{{ apps.visual_studio_code.extensions }}'
tags: [editor, microsoft, code, vscode, visual-studio-code]
#### Docker things. ########################################################
- role: vendor/roles/docker
when: docker.install|bool and not ansible_check_mode
vars:
docker_channel: stable
tags: [docker]
- role: vendor/roles/docksal
when: docker.install|bool and docksal.install|bool and not ansible_check_mode
vars:
docksal_global_config: '{{ docksal.config }}'
tags: [docksal]
#### Cloud tools and utils. ################################################
- role: vendor/roles/aws-cli
when: cloud.aws_cli.install|bool and not ansible_check_mode
tags: [cloud, aws, aws-cli]
- role: vendor/roles/google_cloud_cli
become: true
when: cloud.google_cloud.install|bool and not ansible_check_mode
vars:
google_cloud_packages: '{{ cloud.google_cloud.components }}'
tags: [cloud, gcloud]
- role: vendor/roles/opentofu
become: true
when: cloud.opentofu.install|bool and not ansible_check_mode
tags: [cloud, opentofu, tofu]
- role: vendor/roles/terraform
become: true
when: cloud.terraform.install|bool and not ansible_check_mode
tags: [cloud, terraform, hashicorp]