Skip to content

Commit 25ac493

Browse files
authored
Merge pull request #112 from sap-linuxlab/dev
Merge dev to main for release 1.2.0
2 parents b87509b + e6da99a commit 25ac493

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

48 files changed

+1127
-1248
lines changed

.ansible-lint

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,14 @@
22
# Collection wide lint-file
33
# DO NOT CHANGE
44
exclude_paths:
5+
- .ansible/
56
- .cache/
67
- .github/
78
#- docs/
9+
- changelogs/ # Changelog files are missing '---' required in normal yml files.
10+
- roles/sap_vm_preconfigure # Role is WIP
11+
# TODO: Remove when ansible-lint issues are resolved (Issue #101).
812
- roles/sap_hypervisor_node_preconfigure
9-
#- roles/sap_vm_provision
10-
- roles/sap_vm_preconfigure
1113

1214
enable_list:
1315
- yaml

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,3 +62,6 @@ __pycache__/
6262
*.tfstate
6363
*.tfstate.*
6464
.terraform.lock.hcl
65+
66+
# Ignore ansible workspace
67+
.ansible

CHANGELOG.rst

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,22 @@ community.sap\_infrastructure Release Notes
44

55
.. contents:: Topics
66

7+
v1.2.0
8+
======
9+
10+
Release Summary
11+
---------------
12+
13+
Various enhancements and readme update
14+
15+
Minor Changes
16+
--------
17+
18+
- collection - Readme update to align with project readme update (https://github.com/sap-linuxlab/community.sap_infrastructure/pull/104)
19+
- sap_hypervisor_node_preconfigure - Readme update to align with project readme update (https://github.com/sap-linuxlab/community.sap_infrastructure/pull/109)
20+
- sap_hypervisor_node_preconfigure - Updated redhat_ocpv (https://github.com/sap-linuxlab/community.sap_infrastructure/pull/106)
21+
- sap_vm_provision - Updated kubevirt_vm (https://github.com/sap-linuxlab/community.sap_infrastructure/pull/100)
22+
723
v1.1.3
824
======
925

README.md

Lines changed: 106 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -2,36 +2,128 @@
22

33
![Ansible Lint](https://github.com/sap-linuxlab/community.sap_infrastructure/actions/workflows/ansible-lint.yml/badge.svg?branch=main)
44

5-
This Ansible Collection executes various SAP Infrastructure related tasks, creating resources needed for hosts of SAP Systems.
5+
## Description
6+
This Ansible Collection provides a set of Ansible Roles designed to automate various infrastructure-related tasks for SAP systems. It focuses on creating and configuring the necessary resources on different infrastructure platforms, including cloud hyperscalers and hypervisors.
67

7-
These Ansible Roles are often run first and combined with other Ansible Collections to provide end-to-end automation.
8+
These roles are typically used as a foundational step in end-to-end automation workflows, often in conjunction with other Ansible Collections that handle higher-level configurations, such as SAP application deployments.
89

9-
Various Infrastructure Platforms (Cloud Hyperscalers and Hypervisors) are compatible and tested with this Ansible Collection.
10+
The included roles cover a range of tasks, such as:
11+
- Provisioning Virtual Machines on target infrastructure platforms, using `Ansible` or `Terraform`.
12+
- This also includes provisioning of High Availability resources (Routing, Load Balancers, etc.), where applicable.
13+
- Assigning temporary Virtual IP Addresses for application installation, before they are managed by a cluster.
14+
- Pre-configuring hypervisor nodes for hosting virtual machines for SAP systems.
15+
- Pre-configuring virtual machines (`Work in Progress`).
16+
- Verifying provisioned virtual machines (`Work in Progress`).
1017

1118

12-
**Please read the [full documentation](./docs#readme) for how-to guidance, requirements, and all other details. Summary documentation is below:**
19+
## Requirements
20+
**Please read the detailed documentation for each Ansible Role to understand their specific requirements.**
1321

22+
Always follow official [Ansible Documentation](https://docs.ansible.com/ansible/latest/reference_appendices/release_and_maintenance.html#ansible-core-support-matrix) for compatibility matrix between Control and Managed nodes.
1423

15-
## Contents
24+
### Control Nodes
25+
Supported Operating systems:
26+
- Any operating system with required Python and Ansible versions.
27+
28+
Component versions:
29+
| Component | Version |
30+
| --- | --- |
31+
| Python | 3.11 or higher |
32+
| ansible-core | 2.16 or higher |
33+
34+
**NOTE:** We recommend using the latest version of components. </br>
35+
Each minor version of `ansible-core` can bring Security fixes (CVE) that can affect functionality. Examples:
36+
- `CVE-2023-5764` changed `assert` functionality in `2.14.12`, `2.15.8` and `2.16.1`.
37+
- `CVE-2024-11079` changed `hostvars` functionality in `2.16.14`, `2.17.7` and `2.18.1`.
38+
39+
### Managed Nodes
40+
Supported Operating systems:
41+
- SUSE Linux Enterprise Server for SAP applications (SLE4SAP): 15 SP5-SP7 and 16
42+
- Red Hat Enterprise Linux for SAP Solutions (RHEL4SAP): 8.x, 9.x and 10.x
43+
44+
**NOTE: Operating system needs to have access to required package repositories either directly or via a subscription registration.**
45+
46+
Component versions:
47+
| Component | Version |
48+
| --- | --- |
49+
| Python | 3.6 or higher |
50+
51+
52+
## Installation Instructions
53+
54+
### Installation
55+
Install this collection with Ansible Galaxy command:
56+
```console
57+
ansible-galaxy collection install community.sap_infrastructure
58+
```
59+
60+
Optionally you can include collection in requirements.yml file and include it together with other collections using: `ansible-galaxy collection install -r requirements.yml`.</br>
61+
**NOTE: This is not recommended for this collection, because you will need only specific subset of collections for your chosen Infrastructure Platform.**</br>
62+
63+
Requirements file need to be maintained in following format:
64+
```yaml
65+
collections:
66+
- name: community.sap_infrastructure
67+
```
68+
69+
### Upgrade
70+
Installed Ansible Collection will not be upgraded automatically when Ansible package is upgraded.
71+
72+
To upgrade the collection to the latest available version, run the following command:
73+
```console
74+
ansible-galaxy collection install community.sap_infrastructure --upgrade
75+
```
76+
77+
You can also install a specific version of the collection if you encounter issues with the latest version. Please report such issues in the affected Role repository.
78+
For example, to install version 1.1.0:
79+
```
80+
ansible-galaxy collection install community.sap_infrastructure:==1.1.0
81+
```
82+
83+
See [Installing collections](https://docs.ansible.com/ansible/latest/collections_guide/collections_installing.html) for more details on installation methods.
1684

17-
Within this Ansible Collection, there are various Ansible Roles and no custom Ansible Modules.
1885

1986
### Ansible Roles
87+
All included roles can be executed independently or as part of [ansible.playbooks_for_sap](https://github.com/sap-linuxlab/ansible.playbooks_for_sap) playbooks.
2088

2189
| Name | Summary |
2290
| :--- | :--- |
23-
| [sap_hypervisor_node_preconfigure](https://github.com/sap-linuxlab/community.sap_infrastructure/tree/main/roles/sap_hypervisor_node_preconfigure)<br/>`Beta` | Vendor-specific configuration preparation tasks for Hypervisor nodes hosting Virtual Machines running SAP Systems |
24-
| ~~[sap_vm_preconfigure](https://github.com/sap-linuxlab/community.sap_infrastructure/tree/main/roles/sap_vm_preconfigure)~~<br/>`WIP` | ~~Vendor-specific configuration preparation tasks for Virtual Machines running SAP Systems~~ |
25-
| [sap_vm_provision](https://github.com/sap-linuxlab/community.sap_infrastructure/tree/main/roles/sap_vm_provision) | Provision Virtual Machines to different Infrastructure Platforms; with optional Ansible to Terraform to provision minimal landing zone (partial compatibility via [Terraform Modules for SAP](https://github.com/sap-linuxlab/terraform.modules_for_sap)) |
26-
| [sap_vm_temp_vip](https://github.com/sap-linuxlab/community.sap_infrastructure/tree/main/roles/sap_vm_temp_vip)<br/>`Beta` | Temporary Virtual IP (VIP) assigned to OS Network Interface prior to Linux Pacemaker ownership |
27-
| ~~[sap_vm_verify](https://github.com/sap-linuxlab/community.sap_infrastructure/tree/main/roles/sap_vm_verify)~~<br/>`WIP` | ~~Verification of Virtual Machine state and readiness to perform SAP Software installation~~ |
91+
| [sap_hypervisor_node_preconfigure](https://github.com/sap-linuxlab/community.sap_infrastructure/tree/main/roles/sap_hypervisor_node_preconfigure)`Beta` | Vendor-specific configuration preparation tasks for Hypervisor nodes hosting Virtual Machines running SAP Systems |
92+
| ~~[sap_vm_preconfigure](https://github.com/sap-linuxlab/community.sap_infrastructure/tree/main/roles/sap_vm_preconfigure)~~`WIP` | ~~Vendor-specific configuration preparation tasks for Virtual Machines running SAP Systems~~ |
93+
| [sap_vm_provision](https://github.com/sap-linuxlab/community.sap_infrastructure/tree/main/roles/sap_vm_provision) | Provision Virtual Machines to different Infrastructure Platforms; with optional Ansible to Terraform to provision minimal landing zone. |
94+
| [sap_vm_temp_vip](https://github.com/sap-linuxlab/community.sap_infrastructure/tree/main/roles/sap_vm_temp_vip)<br/> | Temporary Virtual IP (VIP) assigned to OS Network Interface prior to Linux Pacemaker ownership |
95+
| ~~[sap_vm_verify](https://github.com/sap-linuxlab/community.sap_infrastructure/tree/main/roles/sap_vm_verify)~~ `WIP` | ~~Verification of Virtual Machine state and readiness to perform SAP Software installation~~ |
2896

2997

30-
## License
98+
## Testing
99+
This Ansible Collection has been tested across different operating systems, SAP products, and scenarios.
100+
101+
Prior to each release, basic scenarios are executed to confirm functionality is working as expected, including SAP S/4HANA installation.
102+
103+
**NOTE: It is not possible for the project maintainers to test every combination of Infrastructure Platform, Operating System and SAP Software for every release.**
104+
31105

32-
- [Apache 2.0](./LICENSE)
106+
## Contributing
107+
For information on how to contribute, please see our [contribution guidelines](https://sap-linuxlab.github.io/initiative_contributions/).
33108

34109

35110
## Contributors
111+
You can find list of Contributors at [/docs/contributors](./docs/CONTRIBUTORS.md).
112+
113+
114+
## Support
115+
You can report any issues using [GitHub Issues](https://github.com/sap-linuxlab/community.sap_infrastructure/issues).
116+
36117

37-
Contributors to the Ansible Roles within this Ansible Collection, are shown within [/docs/contributors](./docs/CONTRIBUTORS.md).
118+
## Release Notes and Roadmap
119+
The release notes for this collection can be found in the [CHANGELOG file](https://github.com/sap-linuxlab/community.sap_infrastructure/blob/main/CHANGELOG.rst).
120+
121+
122+
## Further Information
123+
124+
### Variable Precedence Rules
125+
Please follow [Ansible Precedence guidelines](https://docs.ansible.com/ansible/latest/playbook_guide/playbooks_variables.html#variable-precedence-where-should-i-put-a-variable) on how to pass variables when using this collection.
126+
127+
128+
## License
129+
[Apache 2.0](https://github.com/sap-linuxlab/community.sap_infrastructure/blob/main/LICENSE)

changelogs/changelog.yaml

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -90,3 +90,13 @@ releases:
9090
release_summary: Bastion SSH Proxy boolean
9191
bugfixes:
9292
- sap_vm_provision - bastion boolean, to allow Bastion SSH Proxy or direct (e.g. VPN) for all Infrastructure Platforms (https://github.com/sap-linuxlab/community.sap_infrastructure/pull/93)
93+
94+
1.2.0:
95+
release_date: '2025-08-12'
96+
changes:
97+
release_summary: Various enhancements and readme update
98+
minor_changes:
99+
- collection - Readme update to align with project readme update (https://github.com/sap-linuxlab/community.sap_infrastructure/pull/104)
100+
- sap_hypervisor_node_preconfigure - Readme update to align with project readme update (https://github.com/sap-linuxlab/community.sap_infrastructure/pull/109)
101+
- sap_hypervisor_node_preconfigure - Updated redhat_ocpv (https://github.com/sap-linuxlab/community.sap_infrastructure/pull/106)
102+
- sap_vm_provision - Updated kubevirt_vm (https://github.com/sap-linuxlab/community.sap_infrastructure/pull/100)

docs/CONTRIBUTORS.md

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,12 @@
55
- **Sean Freeman** - Developer of Ansible Collection and sap_vm_provision Ansible Role
66
- **Red Hat**
77
- Red Hat for SAP CoP
8-
- **Janine Fuchs** - Developer of Ansible parallelisation and OVirt capability for sap_vm_provision Ansible Role
8+
- **Janine Fuchs** - Developer of Ansible parallelization and OVirt capability for sap_vm_provision Ansible Role
99
- **Nils Koenig** - Developer of sap_hypervisor_node_preconfigure and KubeVirt capability for sap_vm_provision Ansible Role
10+
- **SUSE**
11+
- SUSE SAP Emerging Technology Solutions
12+
- **Marcel Mamula** - Developer of Ansible Collection
13+
1014

1115
# New contributors
1216

docs/README.md

Lines changed: 0 additions & 100 deletions
This file was deleted.

galaxy.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ namespace: community
1010
name: sap_infrastructure
1111

1212
# The version of the collection. Must be compatible with semantic versioning
13-
version: 1.1.3
13+
version: 1.2.0
1414

1515
# The path to the Markdown (.md) readme file. This path is relative to the root of the collection
1616
readme: README.md

0 commit comments

Comments
 (0)