-
Notifications
You must be signed in to change notification settings - Fork 14
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Signed-off-by: Paul Czarkowski <[email protected]>
- Loading branch information
Showing
21 changed files
with
294 additions
and
190 deletions.
There are no files selected for viewing
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
# network_math | ||
|
||
## Description | ||
|
||
This module calculates private and public subnet CIDR blocks based on the `rosa_vpc_cidr` and `rosa_egress_vpc_cidr` variables that can then be used to create subnets. | ||
|
||
## License | ||
|
||
Copyright 2024 Red Hat | ||
|
||
Licensed under the Apache License, Version 2.0 (the "License"); | ||
you may not use this file except in compliance with the License. | ||
You may obtain a copy of the License at | ||
|
||
http://www.apache.org/licenses/LICENSE-2.0 | ||
|
||
Unless required by applicable law or agreed to in writing, software | ||
distributed under the License is distributed on an "AS IS" BASIS, | ||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||
See the License for the specific language governing permissions and | ||
limitations under the License. | ||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,38 +1,43 @@ | ||
Role Name | ||
rosa_account_roles | ||
========= | ||
|
||
A brief description of the role goes here. | ||
This role is designed to create the necessary roles and policies for a ROSA account. It can be used once per account (ROSA clusters can share account roles), or once per cluster depending on your needs. | ||
|
||
Requirements | ||
------------ | ||
|
||
Any pre-requisites that may not be covered by Ansible itself or the role should be mentioned here. For instance, if the role uses the EC2 module, it may be a good idea to mention in this section that the boto package is required. | ||
|
||
Role Variables | ||
-------------- | ||
|
||
A description of the settable variables for this role should go here, including any variables that are in defaults/main.yml, vars/main.yml, and any variables that can/should be set via parameters to the role. Any variables that are read from other roles and/or the global scope (ie. hostvars, group vars, etc.) should be mentioned here as well. | ||
|
||
Dependencies | ||
------------ | ||
The following variables are required for this role: | ||
|
||
A list of other roles hosted on Galaxy should go here, plus any details in regards to parameters that may need to be set for other roles, or variables that are used from other roles. | ||
```yaml | ||
state: present|absent | ||
rosa_account_roles: | ||
hosted_cp: False | ||
version: "4.14" | ||
prefix: ManagedOpenShift | ||
|
||
Example Playbook | ||
---------------- | ||
# set force to true to delete the default account role | ||
# (prefix is ManagedOpenShift or ManagedOpenShift-HCP) | ||
force: False | ||
|
||
Including an example of how to use your role (for instance, with variables passed in as parameters) is always nice for users too: | ||
``` | ||
|
||
- hosts: servers | ||
roles: | ||
- { role: username.rolename, x: 42 } | ||
|
||
License | ||
------- | ||
|
||
BSD | ||
Copyright 2024 Red Hat | ||
|
||
Licensed under the Apache License, Version 2.0 (the "License"); | ||
you may not use this file except in compliance with the License. | ||
You may obtain a copy of the License at | ||
|
||
http://www.apache.org/licenses/LICENSE-2.0 | ||
|
||
Unless required by applicable law or agreed to in writing, software | ||
distributed under the License is distributed on an "AS IS" BASIS, | ||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||
See the License for the specific language governing permissions and | ||
limitations under the License. | ||
|
||
Author Information | ||
------------------ | ||
|
||
An optional section for the role authors to include contact information, or a website (HTML is not allowed). |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,38 +1,39 @@ | ||
Role Name | ||
rosa_dns_resolver | ||
========= | ||
|
||
A brief description of the role goes here. | ||
|
||
Requirements | ||
------------ | ||
|
||
Any pre-requisites that may not be covered by Ansible itself or the role should be mentioned here. For instance, if the role uses the EC2 module, it may be a good idea to mention in this section that the boto package is required. | ||
this role will create or destroy a Route53 DNS resolver for a ROSA cluster in multiple VPCs in order to make your private-link ROSA cluster accessible from multiple VPCs. | ||
|
||
Role Variables | ||
-------------- | ||
|
||
A description of the settable variables for this role should go here, including any variables that are in defaults/main.yml, vars/main.yml, and any variables that can/should be set via parameters to the role. Any variables that are read from other roles and/or the global scope (ie. hostvars, group vars, etc.) should be mentioned here as well. | ||
```yaml | ||
state: present|absent | ||
rosa_dns_resolver: | ||
zone: example.com. | ||
tags: {} | ||
vpcs: | ||
- id: vpc-12345678 | ||
region: us-east-2 | ||
- id: vpc-87654321 | ||
region: us-east-2 | ||
|
||
Dependencies | ||
------------ | ||
``` | ||
|
||
A list of other roles hosted on Galaxy should go here, plus any details in regards to parameters that may need to be set for other roles, or variables that are used from other roles. | ||
|
||
Example Playbook | ||
---------------- | ||
License | ||
------- | ||
|
||
Including an example of how to use your role (for instance, with variables passed in as parameters) is always nice for users too: | ||
Copyright 2024 Red Hat | ||
|
||
- hosts: servers | ||
roles: | ||
- { role: username.rolename, x: 42 } | ||
Licensed under the Apache License, Version 2.0 (the "License"); | ||
you may not use this file except in compliance with the License. | ||
You may obtain a copy of the License at | ||
|
||
License | ||
------- | ||
http://www.apache.org/licenses/LICENSE-2.0 | ||
|
||
BSD | ||
Unless required by applicable law or agreed to in writing, software | ||
distributed under the License is distributed on an "AS IS" BASIS, | ||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||
See the License for the specific language governing permissions and | ||
limitations under the License. | ||
|
||
Author Information | ||
------------------ | ||
|
||
An optional section for the role authors to include contact information, or a website (HTML is not allowed). |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,38 +1,53 @@ | ||
Role Name | ||
rosa_ec2_instance | ||
========= | ||
|
||
A brief description of the role goes here. | ||
A helper role to create ec2 instances that can be used as jumphosts or secure proxies for ROSA clusters to more easily allow for access to the private ROSA cluster from a local machine. | ||
|
||
Requirements | ||
------------ | ||
|
||
Any pre-requisites that may not be covered by Ansible itself or the role should be mentioned here. For instance, if the role uses the EC2 module, it may be a good idea to mention in this section that the boto package is required. | ||
|
||
Role Variables | ||
-------------- | ||
|
||
A description of the settable variables for this role should go here, including any variables that are in defaults/main.yml, vars/main.yml, and any variables that can/should be set via parameters to the role. Any variables that are read from other roles and/or the global scope (ie. hostvars, group vars, etc.) should be mentioned here as well. | ||
|
||
Dependencies | ||
------------ | ||
```yaml | ||
state: present|absent | ||
rosa_ec2_instance: | ||
name: rosa-ec2-instance | ||
ami: "" # if left blank will pick latest RHEL 8 AMI based on the below pattern | ||
ami_name: "RHEL-8.*_HVM-*-x86_64-*Hourly*" | ||
ami_owner: "309956199498" | ||
instance_type: t2.micro | ||
region: us-east-2 | ||
user_data: # "{{ lookup('file', 'basic_user_data.sh') }}" | ||
user_data_template: ~ | ||
assign_public_ip: false | ||
vpc_id: | ||
subnet_id: | ||
security_group_rules: | ||
- proto: tcp | ||
ports: [22] | ||
cidr_ip: 0.0.0.0/0 | ||
rule_desc: allow ssh | ||
ssh_public_key: "{{ lookup('file', '~/.ssh/id_rsa.pub') }}" | ||
tags: {} | ||
# extra vars that can be set for templates | ||
template_vars: {} | ||
|
||
``` | ||
|
||
A list of other roles hosted on Galaxy should go here, plus any details in regards to parameters that may need to be set for other roles, or variables that are used from other roles. | ||
|
||
Example Playbook | ||
---------------- | ||
License | ||
------- | ||
|
||
Including an example of how to use your role (for instance, with variables passed in as parameters) is always nice for users too: | ||
Copyright 2024 Red Hat | ||
|
||
- hosts: servers | ||
roles: | ||
- { role: username.rolename, x: 42 } | ||
Licensed under the Apache License, Version 2.0 (the "License"); | ||
you may not use this file except in compliance with the License. | ||
You may obtain a copy of the License at | ||
|
||
License | ||
------- | ||
http://www.apache.org/licenses/LICENSE-2.0 | ||
|
||
BSD | ||
Unless required by applicable law or agreed to in writing, software | ||
distributed under the License is distributed on an "AS IS" BASIS, | ||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||
See the License for the specific language governing permissions and | ||
limitations under the License. | ||
|
||
Author Information | ||
------------------ | ||
|
||
An optional section for the role authors to include contact information, or a website (HTML is not allowed). |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,38 +1,48 @@ | ||
Role Name | ||
rosa_egress_vpc | ||
========= | ||
|
||
A brief description of the role goes here. | ||
|
||
Requirements | ||
------------ | ||
|
||
Any pre-requisites that may not be covered by Ansible itself or the role should be mentioned here. For instance, if the role uses the EC2 module, it may be a good idea to mention in this section that the boto package is required. | ||
This role creates or destroys a VPC with public and private subnets and a transit gateway to allow for egress traffic from a ROSA cluster to the internet. Useful for private-link ROSA clusters that utilize a private VPC and Transit Gateway. | ||
|
||
Role Variables | ||
-------------- | ||
|
||
A description of the settable variables for this role should go here, including any variables that are in defaults/main.yml, vars/main.yml, and any variables that can/should be set via parameters to the role. Any variables that are read from other roles and/or the global scope (ie. hostvars, group vars, etc.) should be mentioned here as well. | ||
|
||
Dependencies | ||
------------ | ||
|
||
A list of other roles hosted on Galaxy should go here, plus any details in regards to parameters that may need to be set for other roles, or variables that are used from other roles. | ||
```yaml | ||
state: present|absent | ||
rosa_egress_vpc: | ||
extra_tags: {} | ||
name: "rosa-egress-vpc" | ||
region: "us-east-2" | ||
cidr: "" | ||
transit_gateway: | ||
name: | ||
id: | ||
arn: | ||
route_table: | ||
public_subnets: | ||
- cidr: "10.0.128.0/17" | ||
az: "us-east-2a" | ||
resource_tags: { "name":"{{ cluster_name }}-egress-public" } | ||
private_subnets: | ||
- cidr: "10.0.0.0/17" | ||
az: "us-east-2a" | ||
resource_tags: { "name":"{{ cluster_name }}-egress-private" } | ||
``` | ||
Example Playbook | ||
---------------- | ||
License | ||
------- | ||
Including an example of how to use your role (for instance, with variables passed in as parameters) is always nice for users too: | ||
Copyright 2024 Red Hat | ||
- hosts: servers | ||
roles: | ||
- { role: username.rolename, x: 42 } | ||
Licensed under the Apache License, Version 2.0 (the "License"); | ||
you may not use this file except in compliance with the License. | ||
You may obtain a copy of the License at | ||
License | ||
------- | ||
http://www.apache.org/licenses/LICENSE-2.0 | ||
BSD | ||
Unless required by applicable law or agreed to in writing, software | ||
distributed under the License is distributed on an "AS IS" BASIS, | ||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||
See the License for the specific language governing permissions and | ||
limitations under the License. | ||
Author Information | ||
------------------ | ||
An optional section for the role authors to include contact information, or a website (HTML is not allowed). |
Oops, something went wrong.