Skip to content
Merged
17 changes: 12 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,11 +26,15 @@ The collection has several dependencies that should resolve automatically via th
- [cloudera.cloud](https://github.com/cloudera-labs/cloudera.cloud.git) (on Cloudera Labs)
- [ansible.netcommon](https://github.com/ansible-collections/ansible.netcommon)
- [community.general](https://github.com/ansible-collections/community.general)
- [community.aws](https://github.com/ansible-collections/community.aws)
- [amazon.aws](https://github.com/ansible-collections/amazon.aws)
- [azure.azcollection](https://github.com/ansible-collections/azure)
- [google.cloud](https://github.com/ansible-collections/google.cloud)
- [netapp.azure](https://github.com/ansible-collections/netapp.azure)

You may want to install additional cloud provider collections depending on your target platform:

| Cloud Provider | Dependency | Version |
| Azure | [azure.azcollection](https://github.com/ansible-collections/azure) | `1.11.0` |
|| [netapp.azure](https://github.com/ansible-collections/netapp.azure) | `21.10.0` |
| AWS | [amazon.aws](https://github.com/ansible-collections/amazon.aws) | `3.0.0` |
|| [community.aws](https://github.com/ansible-collections/community.aws) | `3.0.1` |
| GCP | [google.cloud](https://github.com/ansible-collections/google.cloud) | `1.0.2` |

## Option #1: Install from GitHub

Expand Down Expand Up @@ -74,6 +78,9 @@ The collection requires Ansible `2.10.0` or higher.
+ `cloudera.cloud`
+ `ansible.netcommon`
+ `community.general`

You will need to add the following, depending on your target deployment:

+ `community.aws`
+ `amazon.aws`
+ `azure.azcollection`
Expand Down
14 changes: 4 additions & 10 deletions galaxy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,34 +16,28 @@

namespace: cloudera
name: exe
version: 1.7.5
version: 2.0.0-rc1
readme: README.md
authors:
- Webster Mudge <[email protected]>
- Daniel Chaffelson <[email protected]>
- Daniel Chaffelson

description: >
A set of roles and other artifacts that encapsulate best practices and opinionated
deployment and management processes for Cloudera Data Platform (CDP) Public Cloud
and Private Cloud, including Private Cloud Base, deployments.
and Private Cloud deployments.
license_file: LICENSE
tags:
- cloudera
- cdp
- azure
- ec2
- aws
- gcp
- openstack

dependencies:
'git+https://github.com/cloudera-labs/cloudera.cloud.git': 'main'
'ansible.netcommon': '2.5.1'
'community.aws': '3.0.1'
'community.general': '4.5.0'
'amazon.aws': '3.0.0'
'azure.azcollection': '1.11.0'
'google.cloud': '1.0.2'
'netapp.azure': '21.10.0'

repository: https://github.com/cloudera-labs/cloudera.exe
# TODO: Set documentation URL
Expand Down
44 changes: 44 additions & 0 deletions playbooks/pbc_infra_setup.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
---

# Copyright 2023 Cloudera, Inc. All Rights Reserved.
#
# 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.

- name: Set up CDP Public Cloud infrastructure (Ansible-based)
hosts: "{{ target | default('localhost') }}"
environment: "{{ globals.env_vars }}"
gather_facts: yes
tasks:
- name: Validate CDP Public Cloud infrastructure configuration
ansible.builtin.import_role:
name: cloudera.exe.infrastructure
tasks_from: validate
tags:
- validate
- initialize
- infra

- name: Initialize CDP Public Cloud infrastructure setup
ansible.builtin.import_role:
name: cloudera.exe.infrastructure
tasks_from: initialize_setup
tags:
- initialize
- infra

- name: Set up CDP Public Cloud infrastructure
ansible.builtin.import_role:
name: cloudera.exe.infrastructure
tasks_from: setup
tags:
- infra
45 changes: 45 additions & 0 deletions playbooks/pbc_infra_teardown.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
---

# Copyright 2023 Cloudera, Inc. All Rights Reserved.
#
# 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.

- name: Tear down CDP Public Cloud infrastructure (Ansible-based)
hosts: "{{ target | default('localhost') }}"
environment: "{{ globals.env_vars }}"
gather_facts: yes
tasks:
- name: Validate CDP Public Cloud infrastructure configuration
ansible.builtin.import_role:
name: cloudera.exe.infrastructure
tasks_from: validate
tags:
- validate
- initialize
- infra

- name: Initialize CDP Public Cloud infrastructure teardown
ansible.builtin.import_role:
name: cloudera.exe.infrastructure
tasks_from: initialize_teardown
tags:
- initialize
- infra

- name: Tear down CDP Public Cloud infrastructure
ansible.builtin.import_role:
name: cloudera.exe.infrastructure
tasks_from: teardown
tags:
- infra

76 changes: 76 additions & 0 deletions playbooks/pbc_setup.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
---

# Copyright 2023 Cloudera, Inc. All Rights Reserved.
#
# 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.

- name: Set up CDP Public Cloud
hosts: "{{ target | default('localhost') }}"
environment: "{{ globals.env_vars }}"
gather_facts: yes
tasks:

# TODO Need to propagate 'ml', 'dw', etc. to selected tasks within the roles,
# including those that would otherwise be 'always' - in this context; 'always'
# should be reserved for the initialization of cloudera-deploy

- name: Validate Platform configuration
ansible.builtin.import_role:
name: cloudera.exe.platform
tasks_from: validate
tags:
- validate
- initialize
- plat
- run

- name: Validate Data Services configuration
ansible.builtin.import_role:
name: cloudera.exe.runtime
tasks_from: validate
tags:
- validate
- initialize
- run

- name: Initialize Platform setup
ansible.builtin.import_role:
name: cloudera.exe.platform
tasks_from: initialize_setup
tags:
- initialize
- plat
- run

- name: Set up Platform
ansible.builtin.import_role:
name: cloudera.exe.platform
tasks_from: setup
tags:
- plat
- run

- name: Initialize Data Services setup
ansible.builtin.import_role:
name: cloudera.exe.runtime
tasks_from: initialize_setup
tags:
- initialize
- run

- name: Set up Data Services
ansible.builtin.import_role:
name: cloudera.exe.runtime
tasks_from: setup
tags:
- run
73 changes: 73 additions & 0 deletions playbooks/pbc_teardown.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
---

# Copyright 2023 Cloudera, Inc. All Rights Reserved.
#
# 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.

- name: Tear down CDP Public Cloud
hosts: "{{ target | default('localhost') }}"
environment: "{{ globals.env_vars }}"
gather_facts: yes
tasks:

# TODO Need to propagate 'ml', 'dw', etc. to selected tasks within the roles,
# including those that would otherwise be 'always' - in this context; 'always'
# should be reserved for the initialization of cloudera-deploy

- name: Validate Platform configuration
ansible.builtin.import_role:
name: cloudera.exe.platform
tasks_from: validate
tags:
- validate
- initialize

- name: Validate Data Services configuration
ansible.builtin.import_role:
name: cloudera.exe.runtime
tasks_from: validate
tags:
- validate
- initialize

- name: Initialize Data Services teardown
ansible.builtin.import_role:
name: cloudera.exe.runtime
tasks_from: initialize_teardown
tags:
- initialize
- run
- plat

- name: Tear down Data Services
ansible.builtin.import_role:
name: cloudera.exe.runtime
tasks_from: teardown
tags:
- run
- plat

- name: Initialize Platform teardown
ansible.builtin.import_role:
name: cloudera.exe.platform
tasks_from: initialize_teardown
tags:
- initialize
- plat

- name: Tear down Platform
ansible.builtin.import_role:
name: cloudera.exe.platform
tasks_from: teardown
tags:
- plat
Loading