-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathrequirements.yml
More file actions
176 lines (152 loc) · 6.05 KB
/
Copy pathrequirements.yml
File metadata and controls
176 lines (152 loc) · 6.05 KB
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
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
---
# Ansible Galaxy Requirements
# Install with: ansible-galaxy collection install -r requirements.yml
#
# This file ensures reproducible deployments by pinning collection versions
# and provides external collection dependencies for the development environment automation
#
# Tested with Ansible Core 2.15+
collections:
# Community General Collection - Required for cargo module and general utilities
- name: community.general
version: ">=6,<9"
source: https://galaxy.ansible.com
# Ansible POSIX collection - Advanced system management and testing capabilities
- name: ansible.posix
version: ">=1.5.0,<2.0.0"
source: https://galaxy.ansible.com
# Community Docker collection - Docker-in-Docker testing and container management
- name: community.docker
version: ">=3.0,<4.0.0"
source: https://galaxy.ansible.com
# Community Crypto collection - Certificate and security testing
- name: community.crypto
version: ">=2.0.0,<3.0"
source: https://galaxy.ansible.com
# Community Molecule collection - Testing framework integration
- name: community.molecule
version: ">=0.1.0,<1.0.0"
source: https://galaxy.ansible.com
# Ansible Utils - Utility modules for testing and validation
- name: ansible.utils
version: ">=2.0.0,<3.0.0"
source: https://galaxy.ansible.com
# Community Ubuntu collection - Ubuntu-specific management
- name: community.debian
version: ">=1.0.0,<2.0.0"
source: https://galaxy.ansible.com
# Community Windows collection - Cross-platform testing capabilities
- name: community.windows
version: ">=1.0.0,<2.0.0"
source: https://galaxy.ansible.com
# Community Network collection - Network testing utilities
- name: ansible.netcommon
version: ">=2.0.0,<3.0"
source: https://galaxy.ansible.com
# --- Cloud and Infrastructure Management ---
# Ansible Controller/AWX Integration
- name: ansible.controller
version: ">=4.0.0,<5.0.0"
source: https://galaxy.ansible.com
# VMWare vSphere Integration
- name: community.vmware
version: ">=3.0.0,<4.0.0"
source: https://galaxy.ansible.com
# Amazon AWS Cloud Integration
- name: amazon.aws
version: ">=6.0.0,<7.0.0"
source: https://galaxy.ansible.com
# Microsoft Azure Cloud Integration
- name: azure.azcollection
version: ">=2.0.0,<3.0.0"
source: https://galaxy.ansible.com
# Google Cloud Platform Integration
- name: google.cloud
version: ">=1.1.0,<2.0.0"
source: https://galaxy.ansible.com
# Kubernetes Core Integration
- name: kubernetes.core
version: ">=2.4.0,<3.0.0"
source: https://galaxy.ansible.com
# HashiCorp Vault Integration
- name: community.hashi_vault
version: ">=5.0.0,<6.0.0"
source: https://galaxy.ansible.com
# Grafana Monitoring Integration
- name: community.grafana
version: ">=1.5.0,<2.0.0"
source: https://galaxy.ansible.com
# Local roles (already present in this project)
# These don't need to be listed here as they're part of the repository:
# - common: Base system configuration
# - fish: Fish shell installation and configuration
# - rust: Rust toolchain setup
# - docker: Docker and container tools
# - tailscale: Tailscale VPN setup
# - cli_tools: Command-line utilities
# - configs: Dotfiles and configurations
# - atuin: Shell history synchronization
# Testing and Development Collections Documentation:
#
# 1. ansible.posix:
# - Provides modules for managing POSIX systems
# - Essential for system-level testing and validation
# - Includes modules for file management, user management, and service control
#
# 2. community.docker:
# - Required for Docker-in-Docker testing
# - Enables container lifecycle management testing
# - Supports testing of containerized applications
#
# 3. community.crypto:
# - Enables certificate and security testing
# - Supports cryptographic operations validation
# - Required for security-focused testing scenarios
#
# 4. community.general:
# - Core collection with general-purpose modules
# - Required for compatibility with testing frameworks
# - Provides modules for package management, file operations, and more
#
# 5. community.molecule:
# - Testing framework integration
# - Enables role-level testing with Molecule
# - Supports multiple scenarios and platforms
#
# 6. ansible.utils:
# - Utility modules for testing and validation
# - Provides helper functions for test scenarios
# - Supports data manipulation and validation tasks
#
# 7. community.debian:
# - Platform-specific collection for Ubuntu/Debian management
# - Enables OS-specific testing scenarios
# - Supports package management and service control on Debian-based systems
#
# 8. community.windows:
# - Cross-platform testing capabilities
# - Enables testing on Windows platforms when needed
# - Supports heterogeneous environment testing
#
# 9. ansible.netcommon:
# - Network testing utilities
# - Supports network configuration validation
# - Enables testing of network-related roles and tasks
# Version Pinning Strategy:
# - Versions are pinned to ensure reproducible testing environments
# - Constraints allow for flexibility while maintaining compatibility
# - Regular updates should be tested to ensure continued compatibility
# - Breaking changes should be evaluated before updating version constraints
# Conditional Dependencies:
# - community.docker: Required for Docker-related testing scenarios
# - community.crypto: Required for security and certificate testing
# - community.debian: Required for Ubuntu/Debian specific testing
# - community.windows: Only needed for cross-platform testing scenarios
# Performance Testing Considerations:
# - All collections are version-pinned for consistent performance baselines
# - Regular updates should be benchmarked to ensure no performance regressions
# - Testing environments should use consistent collection versions
# Security Testing Considerations:
# - community.crypto enables comprehensive security testing
# - ansible.posix provides system-level security validation modules
# - Regular updates should be evaluated for security improvements