diff --git a/.github/workflows/terraform-docs.yml b/.github/workflows/terraform-docs.yml index cd6d07bb..8a1c7d9a 100644 --- a/.github/workflows/terraform-docs.yml +++ b/.github/workflows/terraform-docs.yml @@ -7,10 +7,10 @@ name: "Documentation: terraform-docs" on: pull_request: paths: - - 'Terraform/**' + - 'Infrastructure_as_Code/Terraform/**' push: paths: - - 'Terraform/**' + - 'Infrastructure_as_Code/Terraform/**' branches: - main @@ -20,8 +20,8 @@ jobs: strategy: matrix: directory: - - 'Terraform/deploy-fsx-ontap/module' - - 'Terraform/deploy-fsx-ontap/standalone-module' + - 'Infrastructure_as_Code/Terraform/deploy-fsx-ontap/module' + - 'Infrastructure_as_Code/Terraform/deploy-fsx-ontap/standalone-module' steps: - name: Checkout pull request uses: actions/checkout@v3.5.0 diff --git a/.github/workflows/terraform.yml b/.github/workflows/terraform.yml index 8b9ed55b..6e74c3ba 100644 --- a/.github/workflows/terraform.yml +++ b/.github/workflows/terraform.yml @@ -7,10 +7,10 @@ name: "Code Quality: Terraform" on: pull_request: paths: - - 'Terraform/**' + - 'Infrastructure_as_Code/Terraform/**' push: paths: - - 'Terraform/**' + - 'Infrastructure_as_Code/Terraform/**' branches: - main @@ -21,8 +21,8 @@ jobs: strategy: matrix: directory: - - 'Terraform/deploy-fsx-ontap/module' - - 'Terraform/deploy-fsx-ontap/standalone-module' + - 'Infrastructure_as_Code/Terraform/deploy-fsx-ontap/module' + - 'Infrastructure_as_Code/Terraform/deploy-fsx-ontap/standalone-module' defaults: run: working-directory: ${{ matrix.directory }} @@ -47,4 +47,4 @@ jobs: # run: terraform fmt -diff -check -no-color -recursive - name: Validate Terraform configuration - run: terraform validate \ No newline at end of file + run: terraform validate diff --git a/Ansible/README.md b/Infrastructure_as_Code/Ansible/README.md similarity index 100% rename from Ansible/README.md rename to Infrastructure_as_Code/Ansible/README.md diff --git a/Ansible/fsx_inventory_report/README.md b/Infrastructure_as_Code/Ansible/fsx_inventory_report/README.md similarity index 100% rename from Ansible/fsx_inventory_report/README.md rename to Infrastructure_as_Code/Ansible/fsx_inventory_report/README.md diff --git a/Ansible/fsx_inventory_report/generate_report.yaml b/Infrastructure_as_Code/Ansible/fsx_inventory_report/generate_report.yaml similarity index 100% rename from Ansible/fsx_inventory_report/generate_report.yaml rename to Infrastructure_as_Code/Ansible/fsx_inventory_report/generate_report.yaml diff --git a/Ansible/fsx_inventory_report/get_fsxn_regions.yaml b/Infrastructure_as_Code/Ansible/fsx_inventory_report/get_fsxn_regions.yaml similarity index 100% rename from Ansible/fsx_inventory_report/get_fsxn_regions.yaml rename to Infrastructure_as_Code/Ansible/fsx_inventory_report/get_fsxn_regions.yaml diff --git a/Ansible/fsx_inventory_report/process_region.yaml b/Infrastructure_as_Code/Ansible/fsx_inventory_report/process_region.yaml similarity index 100% rename from Ansible/fsx_inventory_report/process_region.yaml rename to Infrastructure_as_Code/Ansible/fsx_inventory_report/process_region.yaml diff --git a/Ansible/snapmirror_report/README.md b/Infrastructure_as_Code/Ansible/snapmirror_report/README.md similarity index 100% rename from Ansible/snapmirror_report/README.md rename to Infrastructure_as_Code/Ansible/snapmirror_report/README.md diff --git a/Ansible/snapmirror_report/generate_report.yaml b/Infrastructure_as_Code/Ansible/snapmirror_report/generate_report.yaml similarity index 100% rename from Ansible/snapmirror_report/generate_report.yaml rename to Infrastructure_as_Code/Ansible/snapmirror_report/generate_report.yaml diff --git a/Ansible/snapmirror_report/get_fsxn_regions.yaml b/Infrastructure_as_Code/Ansible/snapmirror_report/get_fsxn_regions.yaml similarity index 100% rename from Ansible/snapmirror_report/get_fsxn_regions.yaml rename to Infrastructure_as_Code/Ansible/snapmirror_report/get_fsxn_regions.yaml diff --git a/Ansible/snapmirror_report/process_region.yaml b/Infrastructure_as_Code/Ansible/snapmirror_report/process_region.yaml similarity index 100% rename from Ansible/snapmirror_report/process_region.yaml rename to Infrastructure_as_Code/Ansible/snapmirror_report/process_region.yaml diff --git a/CloudFormation/NetApp-FSxN-Custom-Resources-Samples/README.md b/Infrastructure_as_Code/CloudFormation/NetApp-FSxN-Custom-Resources-Samples/README.md similarity index 100% rename from CloudFormation/NetApp-FSxN-Custom-Resources-Samples/README.md rename to Infrastructure_as_Code/CloudFormation/NetApp-FSxN-Custom-Resources-Samples/README.md diff --git a/CloudFormation/NetApp-FSxN-Custom-Resources-Samples/create_clone.yaml b/Infrastructure_as_Code/CloudFormation/NetApp-FSxN-Custom-Resources-Samples/create_clone.yaml similarity index 100% rename from CloudFormation/NetApp-FSxN-Custom-Resources-Samples/create_clone.yaml rename to Infrastructure_as_Code/CloudFormation/NetApp-FSxN-Custom-Resources-Samples/create_clone.yaml diff --git a/CloudFormation/NetApp-FSxN-Custom-Resources-Samples/create_export_policy.yaml b/Infrastructure_as_Code/CloudFormation/NetApp-FSxN-Custom-Resources-Samples/create_export_policy.yaml similarity index 100% rename from CloudFormation/NetApp-FSxN-Custom-Resources-Samples/create_export_policy.yaml rename to Infrastructure_as_Code/CloudFormation/NetApp-FSxN-Custom-Resources-Samples/create_export_policy.yaml diff --git a/CloudFormation/NetApp-FSxN-Custom-Resources-Samples/create_sm_with_peering.yaml b/Infrastructure_as_Code/CloudFormation/NetApp-FSxN-Custom-Resources-Samples/create_sm_with_peering.yaml similarity index 100% rename from CloudFormation/NetApp-FSxN-Custom-Resources-Samples/create_sm_with_peering.yaml rename to Infrastructure_as_Code/CloudFormation/NetApp-FSxN-Custom-Resources-Samples/create_sm_with_peering.yaml diff --git a/CloudFormation/NetApp-FSxN-Custom-Resources-Samples/create_sm_without_peering.yaml b/Infrastructure_as_Code/CloudFormation/NetApp-FSxN-Custom-Resources-Samples/create_sm_without_peering.yaml similarity index 100% rename from CloudFormation/NetApp-FSxN-Custom-Resources-Samples/create_sm_without_peering.yaml rename to Infrastructure_as_Code/CloudFormation/NetApp-FSxN-Custom-Resources-Samples/create_sm_without_peering.yaml diff --git a/CloudFormation/NetApp-FSxN-Custom-Resources-Samples/create_snapshot.yaml b/Infrastructure_as_Code/CloudFormation/NetApp-FSxN-Custom-Resources-Samples/create_snapshot.yaml similarity index 100% rename from CloudFormation/NetApp-FSxN-Custom-Resources-Samples/create_snapshot.yaml rename to Infrastructure_as_Code/CloudFormation/NetApp-FSxN-Custom-Resources-Samples/create_snapshot.yaml diff --git a/CloudFormation/NetApp-FSxN-Custom-Resources-Samples/create_volume.yaml b/Infrastructure_as_Code/CloudFormation/NetApp-FSxN-Custom-Resources-Samples/create_volume.yaml similarity index 100% rename from CloudFormation/NetApp-FSxN-Custom-Resources-Samples/create_volume.yaml rename to Infrastructure_as_Code/CloudFormation/NetApp-FSxN-Custom-Resources-Samples/create_volume.yaml diff --git a/CloudFormation/NetApp-FSxN-Custom-Resources-Samples/scripts/README.md b/Infrastructure_as_Code/CloudFormation/NetApp-FSxN-Custom-Resources-Samples/scripts/README.md similarity index 100% rename from CloudFormation/NetApp-FSxN-Custom-Resources-Samples/scripts/README.md rename to Infrastructure_as_Code/CloudFormation/NetApp-FSxN-Custom-Resources-Samples/scripts/README.md diff --git a/CloudFormation/NetApp-FSxN-Custom-Resources-Samples/scripts/activate_extensions b/Infrastructure_as_Code/CloudFormation/NetApp-FSxN-Custom-Resources-Samples/scripts/activate_extensions similarity index 100% rename from CloudFormation/NetApp-FSxN-Custom-Resources-Samples/scripts/activate_extensions rename to Infrastructure_as_Code/CloudFormation/NetApp-FSxN-Custom-Resources-Samples/scripts/activate_extensions diff --git a/CloudFormation/NetApp-FSxN-Custom-Resources-Samples/scripts/createClone.py b/Infrastructure_as_Code/CloudFormation/NetApp-FSxN-Custom-Resources-Samples/scripts/createClone.py similarity index 100% rename from CloudFormation/NetApp-FSxN-Custom-Resources-Samples/scripts/createClone.py rename to Infrastructure_as_Code/CloudFormation/NetApp-FSxN-Custom-Resources-Samples/scripts/createClone.py diff --git a/CloudFormation/NetApp-FSxN-Custom-Resources-Samples/scripts/create_SM_relationship b/Infrastructure_as_Code/CloudFormation/NetApp-FSxN-Custom-Resources-Samples/scripts/create_SM_relationship similarity index 100% rename from CloudFormation/NetApp-FSxN-Custom-Resources-Samples/scripts/create_SM_relationship rename to Infrastructure_as_Code/CloudFormation/NetApp-FSxN-Custom-Resources-Samples/scripts/create_SM_relationship diff --git a/CloudFormation/NetApp-FSxN-Custom-Resources-Samples/scripts/create_clone b/Infrastructure_as_Code/CloudFormation/NetApp-FSxN-Custom-Resources-Samples/scripts/create_clone similarity index 100% rename from CloudFormation/NetApp-FSxN-Custom-Resources-Samples/scripts/create_clone rename to Infrastructure_as_Code/CloudFormation/NetApp-FSxN-Custom-Resources-Samples/scripts/create_clone diff --git a/CloudFormation/NetApp-FSxN-Custom-Resources-Samples/scripts/create_export_policy b/Infrastructure_as_Code/CloudFormation/NetApp-FSxN-Custom-Resources-Samples/scripts/create_export_policy similarity index 100% rename from CloudFormation/NetApp-FSxN-Custom-Resources-Samples/scripts/create_export_policy rename to Infrastructure_as_Code/CloudFormation/NetApp-FSxN-Custom-Resources-Samples/scripts/create_export_policy diff --git a/CloudFormation/NetApp-FSxN-Custom-Resources-Samples/scripts/create_snapshot b/Infrastructure_as_Code/CloudFormation/NetApp-FSxN-Custom-Resources-Samples/scripts/create_snapshot similarity index 100% rename from CloudFormation/NetApp-FSxN-Custom-Resources-Samples/scripts/create_snapshot rename to Infrastructure_as_Code/CloudFormation/NetApp-FSxN-Custom-Resources-Samples/scripts/create_snapshot diff --git a/CloudFormation/NetApp-FSxN-Custom-Resources-Samples/scripts/create_volume b/Infrastructure_as_Code/CloudFormation/NetApp-FSxN-Custom-Resources-Samples/scripts/create_volume similarity index 100% rename from CloudFormation/NetApp-FSxN-Custom-Resources-Samples/scripts/create_volume rename to Infrastructure_as_Code/CloudFormation/NetApp-FSxN-Custom-Resources-Samples/scripts/create_volume diff --git a/CloudFormation/NetApp-FSxN-Custom-Resources-Samples/scripts/deactivate_extensions b/Infrastructure_as_Code/CloudFormation/NetApp-FSxN-Custom-Resources-Samples/scripts/deactivate_extensions similarity index 100% rename from CloudFormation/NetApp-FSxN-Custom-Resources-Samples/scripts/deactivate_extensions rename to Infrastructure_as_Code/CloudFormation/NetApp-FSxN-Custom-Resources-Samples/scripts/deactivate_extensions diff --git a/CloudFormation/NetApp-FSxN-Custom-Resources-Samples/scripts/deploy_link b/Infrastructure_as_Code/CloudFormation/NetApp-FSxN-Custom-Resources-Samples/scripts/deploy_link similarity index 100% rename from CloudFormation/NetApp-FSxN-Custom-Resources-Samples/scripts/deploy_link rename to Infrastructure_as_Code/CloudFormation/NetApp-FSxN-Custom-Resources-Samples/scripts/deploy_link diff --git a/CloudFormation/README.md b/Infrastructure_as_Code/CloudFormation/README.md similarity index 100% rename from CloudFormation/README.md rename to Infrastructure_as_Code/CloudFormation/README.md diff --git a/CloudFormation/deploy-fsx-ontap/README.md b/Infrastructure_as_Code/CloudFormation/deploy-fsx-ontap/README.md similarity index 100% rename from CloudFormation/deploy-fsx-ontap/README.md rename to Infrastructure_as_Code/CloudFormation/deploy-fsx-ontap/README.md diff --git a/CloudFormation/deploy-fsx-ontap/images/create_stack-01.png b/Infrastructure_as_Code/CloudFormation/deploy-fsx-ontap/images/create_stack-01.png similarity index 100% rename from CloudFormation/deploy-fsx-ontap/images/create_stack-01.png rename to Infrastructure_as_Code/CloudFormation/deploy-fsx-ontap/images/create_stack-01.png diff --git a/CloudFormation/deploy-fsx-ontap/images/create_stack-02.png b/Infrastructure_as_Code/CloudFormation/deploy-fsx-ontap/images/create_stack-02.png similarity index 100% rename from CloudFormation/deploy-fsx-ontap/images/create_stack-02.png rename to Infrastructure_as_Code/CloudFormation/deploy-fsx-ontap/images/create_stack-02.png diff --git a/CloudFormation/deploy-fsx-ontap/images/create_stack-03.png b/Infrastructure_as_Code/CloudFormation/deploy-fsx-ontap/images/create_stack-03.png similarity index 100% rename from CloudFormation/deploy-fsx-ontap/images/create_stack-03.png rename to Infrastructure_as_Code/CloudFormation/deploy-fsx-ontap/images/create_stack-03.png diff --git a/CloudFormation/deploy-fsx-ontap/template.yaml b/Infrastructure_as_Code/CloudFormation/deploy-fsx-ontap/template.yaml similarity index 100% rename from CloudFormation/deploy-fsx-ontap/template.yaml rename to Infrastructure_as_Code/CloudFormation/deploy-fsx-ontap/template.yaml diff --git a/Infrastructure_as_Code/README.md b/Infrastructure_as_Code/README.md new file mode 100644 index 00000000..118b43e2 --- /dev/null +++ b/Infrastructure_as_Code/README.md @@ -0,0 +1,32 @@ +# Infrastructure as Code + +This folder contains code samples and automation scripts for FSx for NetApp ONTAP operations using the various Infrastructure as Code (IAC) tools. + +* [Ansible](Ansible) + * [FSx ONTAP inventory report](Ansible/fsx_inventory_report) + * [SnapMirror report](Ansible/snapmirror_report) +* [CloudFormation](CloudFormation) + * [NetApp-FSxN-Custom-Resources-Samples](CloudFormation/NetApp-FSxN-Custom-Resources-Samples) + * [deploy-fsx-ontap](CloudFormation/deploy-fsx-ontap) +* [Terraform](Terraform) + * [FSx ONTAP deployment using Terraform](Terraform/deploy-fsx-ontap) + * [FSx ONTAP Replication](Terraform/fsxn-replicate) + * [Deployment of SQL Server on EC2 with FSx ONTAP](Terraform/deploy-fsx-ontap-sqlserver) + * [Deployment of FSx ONTAP with VPN for File Share Access](Terraform/deploy-fsx-ontap-fileshare-access) + +## Author Information + +This repository is maintained by the contributors listed on [GitHub](https://github.com/NetApp/FSx-ONTAP-samples-scripts/graphs/contributors). + +## License + +Licensed under the Apache License, Version 2.0 (the "License"). + +You may obtain a copy of the License at [apache.org/licenses/LICENSE-2.0](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. + +© 2024 NetApp, Inc. All Rights Reserved. diff --git a/Terraform/README.md b/Infrastructure_as_Code/Terraform/README.md similarity index 57% rename from Terraform/README.md rename to Infrastructure_as_Code/Terraform/README.md index 61df7447..bcc46e6b 100644 --- a/Terraform/README.md +++ b/Infrastructure_as_Code/Terraform/README.md @@ -3,10 +3,10 @@ This subfolder contains various examples of how you can use Terraform to deploy | Tool | Description | | --- | --- | -| [Deploy FSx ONTAP File Share](/Terraform/deploy-fsx-ontap-fileshare-access) | This sample shows how to deploy an FSx for ONTAP file system and access it from a remote system using OpenVPN. | -| [Deploy FSx ONTAP SQL Server](/Terraform/deploy-fsx-ontap-sqlserver) | This sample shows how to deploy on FSx for ONTAP file system and use it as a shared storage for a SQL Server. | -| [Deploy FSx ONTAP](/Terraform/deploy-fsx-ontap) | This sample shows how to deploy an FSx for ONTAP file system using Terraform. | -| [FSx ONTAP Replicate](/Terraform/fsxn-replicate)| This sample shows how to use Terraform to replicate an FSx for ONTAP file system for disaster recovery purposes. | +| [Deploy FSx ONTAP File Share](deploy-fsx-ontap-fileshare-access) | This sample shows how to deploy an FSx for ONTAP file system and access it from a remote system using OpenVPN. | +| [Deploy FSx ONTAP SQL Server](deploy-fsx-ontap-sqlserver) | This sample shows how to deploy on FSx for ONTAP file system and use it as a shared storage for a SQL Server. | +| [Deploy FSx ONTAP](deploy-fsx-ontap) | This sample shows how to deploy an FSx for ONTAP file system using Terraform. | +| [FSx ONTAP Replicate](fsxn-replicate)| This sample shows how to use Terraform to replicate an FSx for ONTAP file system for disaster recovery purposes. | ## Author Information diff --git a/Terraform/deploy-fsx-ontap-fileshare-access/README.md b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/README.md similarity index 100% rename from Terraform/deploy-fsx-ontap-fileshare-access/README.md rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/README.md diff --git a/Terraform/deploy-fsx-ontap-fileshare-access/images/EC2-AD-Check.png b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/images/EC2-AD-Check.png similarity index 100% rename from Terraform/deploy-fsx-ontap-fileshare-access/images/EC2-AD-Check.png rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/images/EC2-AD-Check.png diff --git a/Terraform/deploy-fsx-ontap-fileshare-access/images/FSxN+ClientVPN.png b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/images/FSxN+ClientVPN.png similarity index 100% rename from Terraform/deploy-fsx-ontap-fileshare-access/images/FSxN+ClientVPN.png rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/images/FSxN+ClientVPN.png diff --git a/Terraform/deploy-fsx-ontap-fileshare-access/images/FSxN-AD-Check.png b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/images/FSxN-AD-Check.png similarity index 100% rename from Terraform/deploy-fsx-ontap-fileshare-access/images/FSxN-AD-Check.png rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/images/FSxN-AD-Check.png diff --git a/Terraform/deploy-fsx-ontap-fileshare-access/images/FSxN-FS-Check.png b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/images/FSxN-FS-Check.png similarity index 100% rename from Terraform/deploy-fsx-ontap-fileshare-access/images/FSxN-FS-Check.png rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/images/FSxN-FS-Check.png diff --git a/Terraform/deploy-fsx-ontap-fileshare-access/images/IAM_Policy.png b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/images/IAM_Policy.png similarity index 100% rename from Terraform/deploy-fsx-ontap-fileshare-access/images/IAM_Policy.png rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/images/IAM_Policy.png diff --git a/Terraform/deploy-fsx-ontap-fileshare-access/images/MacOS-Finder-Connect.png b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/images/MacOS-Finder-Connect.png similarity index 100% rename from Terraform/deploy-fsx-ontap-fileshare-access/images/MacOS-Finder-Connect.png rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/images/MacOS-Finder-Connect.png diff --git a/Terraform/deploy-fsx-ontap-fileshare-access/images/VPN-Client-Setup.png b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/images/VPN-Client-Setup.png similarity index 100% rename from Terraform/deploy-fsx-ontap-fileshare-access/images/VPN-Client-Setup.png rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/images/VPN-Client-Setup.png diff --git a/Terraform/deploy-fsx-ontap-fileshare-access/main.tf b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/main.tf similarity index 100% rename from Terraform/deploy-fsx-ontap-fileshare-access/main.tf rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/main.tf diff --git a/Terraform/deploy-fsx-ontap-fileshare-access/modules/ec2ad/ec2-ad.tf b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/modules/ec2ad/ec2-ad.tf similarity index 100% rename from Terraform/deploy-fsx-ontap-fileshare-access/modules/ec2ad/ec2-ad.tf rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/modules/ec2ad/ec2-ad.tf diff --git a/Terraform/deploy-fsx-ontap-fileshare-access/modules/ec2ad/ec2-ami.tf b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/modules/ec2ad/ec2-ami.tf similarity index 100% rename from Terraform/deploy-fsx-ontap-fileshare-access/modules/ec2ad/ec2-ami.tf rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/modules/ec2ad/ec2-ami.tf diff --git a/Terraform/deploy-fsx-ontap-fileshare-access/modules/ec2ad/outputs.tf b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/modules/ec2ad/outputs.tf similarity index 100% rename from Terraform/deploy-fsx-ontap-fileshare-access/modules/ec2ad/outputs.tf rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/modules/ec2ad/outputs.tf diff --git a/Terraform/deploy-fsx-ontap-fileshare-access/modules/ec2ad/variables.tf b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/modules/ec2ad/variables.tf similarity index 100% rename from Terraform/deploy-fsx-ontap-fileshare-access/modules/ec2ad/variables.tf rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/modules/ec2ad/variables.tf diff --git a/Terraform/deploy-fsx-ontap-fileshare-access/modules/fsxn/fsx-fs.tf b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/modules/fsxn/fsx-fs.tf similarity index 100% rename from Terraform/deploy-fsx-ontap-fileshare-access/modules/fsxn/fsx-fs.tf rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/modules/fsxn/fsx-fs.tf diff --git a/Terraform/deploy-fsx-ontap-fileshare-access/modules/fsxn/fsx-svm.tf b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/modules/fsxn/fsx-svm.tf similarity index 100% rename from Terraform/deploy-fsx-ontap-fileshare-access/modules/fsxn/fsx-svm.tf rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/modules/fsxn/fsx-svm.tf diff --git a/Terraform/deploy-fsx-ontap-fileshare-access/modules/fsxn/fsx-volume.tf b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/modules/fsxn/fsx-volume.tf similarity index 100% rename from Terraform/deploy-fsx-ontap-fileshare-access/modules/fsxn/fsx-volume.tf rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/modules/fsxn/fsx-volume.tf diff --git a/Terraform/deploy-fsx-ontap-fileshare-access/modules/fsxn/outputs.tf b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/modules/fsxn/outputs.tf similarity index 100% rename from Terraform/deploy-fsx-ontap-fileshare-access/modules/fsxn/outputs.tf rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/modules/fsxn/outputs.tf diff --git a/Terraform/deploy-fsx-ontap-fileshare-access/modules/fsxn/variables.tf b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/modules/fsxn/variables.tf similarity index 100% rename from Terraform/deploy-fsx-ontap-fileshare-access/modules/fsxn/variables.tf rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/modules/fsxn/variables.tf diff --git a/Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/README.md b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/README.md similarity index 100% rename from Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/README.md rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/README.md diff --git a/Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/certs/README.md b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/certs/README.md similarity index 100% rename from Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/certs/README.md rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/certs/README.md diff --git a/Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/certs/ca.crt b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/certs/ca.crt similarity index 100% rename from Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/certs/ca.crt rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/certs/ca.crt diff --git a/Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/certs/ca.pem b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/certs/ca.pem similarity index 100% rename from Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/certs/ca.pem rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/certs/ca.pem diff --git a/Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/certs/client.fsxn.crt b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/certs/client.fsxn.crt similarity index 100% rename from Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/certs/client.fsxn.crt rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/certs/client.fsxn.crt diff --git a/Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/certs/client.fsxn.key b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/certs/client.fsxn.key similarity index 100% rename from Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/certs/client.fsxn.key rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/certs/client.fsxn.key diff --git a/Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/certs/client.fsxn.pem b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/certs/client.fsxn.pem similarity index 100% rename from Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/certs/client.fsxn.pem rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/certs/client.fsxn.pem diff --git a/Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/certs/server.crt b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/certs/server.crt similarity index 100% rename from Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/certs/server.crt rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/certs/server.crt diff --git a/Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/certs/server.fsxn.crt b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/certs/server.fsxn.crt similarity index 100% rename from Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/certs/server.fsxn.crt rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/certs/server.fsxn.crt diff --git a/Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/certs/server.fsxn.key b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/certs/server.fsxn.key similarity index 100% rename from Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/certs/server.fsxn.key rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/certs/server.fsxn.key diff --git a/Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/certs/server.fsxn.pem b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/certs/server.fsxn.pem similarity index 100% rename from Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/certs/server.fsxn.pem rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/certs/server.fsxn.pem diff --git a/Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/certs/server.key b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/certs/server.key similarity index 100% rename from Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/certs/server.key rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/certs/server.key diff --git a/Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/main.tf b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/main.tf similarity index 100% rename from Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/main.tf rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/main.tf diff --git a/Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/securitygroups.tf b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/securitygroups.tf similarity index 100% rename from Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/securitygroups.tf rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/securitygroups.tf diff --git a/Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/variables.tf b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/variables.tf similarity index 100% rename from Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/variables.tf rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/modules/vpn/variables.tf diff --git a/Terraform/deploy-fsx-ontap-fileshare-access/networking.tf b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/networking.tf similarity index 100% rename from Terraform/deploy-fsx-ontap-fileshare-access/networking.tf rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/networking.tf diff --git a/Terraform/deploy-fsx-ontap-fileshare-access/outputs.tf b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/outputs.tf similarity index 100% rename from Terraform/deploy-fsx-ontap-fileshare-access/outputs.tf rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/outputs.tf diff --git a/Terraform/deploy-fsx-ontap-fileshare-access/ssm.tf b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/ssm.tf similarity index 100% rename from Terraform/deploy-fsx-ontap-fileshare-access/ssm.tf rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/ssm.tf diff --git a/Terraform/deploy-fsx-ontap-fileshare-access/terraform.sample.tfvars b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/terraform.sample.tfvars similarity index 100% rename from Terraform/deploy-fsx-ontap-fileshare-access/terraform.sample.tfvars rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/terraform.sample.tfvars diff --git a/Terraform/deploy-fsx-ontap-fileshare-access/variables.tf b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/variables.tf similarity index 100% rename from Terraform/deploy-fsx-ontap-fileshare-access/variables.tf rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access/variables.tf diff --git a/Terraform/deploy-fsx-ontap-sqlserver/README.md b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap-sqlserver/README.md similarity index 100% rename from Terraform/deploy-fsx-ontap-sqlserver/README.md rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap-sqlserver/README.md diff --git a/Terraform/deploy-fsx-ontap-sqlserver/main.tf b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap-sqlserver/main.tf similarity index 100% rename from Terraform/deploy-fsx-ontap-sqlserver/main.tf rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap-sqlserver/main.tf diff --git a/Terraform/deploy-fsx-ontap-sqlserver/modules/ec2/ec2-ami.tf b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap-sqlserver/modules/ec2/ec2-ami.tf similarity index 100% rename from Terraform/deploy-fsx-ontap-sqlserver/modules/ec2/ec2-ami.tf rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap-sqlserver/modules/ec2/ec2-ami.tf diff --git a/Terraform/deploy-fsx-ontap-sqlserver/modules/ec2/ec2-sql.tf b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap-sqlserver/modules/ec2/ec2-sql.tf similarity index 100% rename from Terraform/deploy-fsx-ontap-sqlserver/modules/ec2/ec2-sql.tf rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap-sqlserver/modules/ec2/ec2-sql.tf diff --git a/Terraform/deploy-fsx-ontap-sqlserver/modules/ec2/outputs.tf b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap-sqlserver/modules/ec2/outputs.tf similarity index 100% rename from Terraform/deploy-fsx-ontap-sqlserver/modules/ec2/outputs.tf rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap-sqlserver/modules/ec2/outputs.tf diff --git a/Terraform/deploy-fsx-ontap-sqlserver/modules/ec2/variables.tf b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap-sqlserver/modules/ec2/variables.tf similarity index 100% rename from Terraform/deploy-fsx-ontap-sqlserver/modules/ec2/variables.tf rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap-sqlserver/modules/ec2/variables.tf diff --git a/Terraform/deploy-fsx-ontap-sqlserver/modules/fsxn/fsx-fs.tf b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap-sqlserver/modules/fsxn/fsx-fs.tf similarity index 100% rename from Terraform/deploy-fsx-ontap-sqlserver/modules/fsxn/fsx-fs.tf rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap-sqlserver/modules/fsxn/fsx-fs.tf diff --git a/Terraform/deploy-fsx-ontap-sqlserver/modules/fsxn/fsx-svm.tf b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap-sqlserver/modules/fsxn/fsx-svm.tf similarity index 100% rename from Terraform/deploy-fsx-ontap-sqlserver/modules/fsxn/fsx-svm.tf rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap-sqlserver/modules/fsxn/fsx-svm.tf diff --git a/Terraform/deploy-fsx-ontap-sqlserver/modules/fsxn/fsx-volume.tf b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap-sqlserver/modules/fsxn/fsx-volume.tf similarity index 100% rename from Terraform/deploy-fsx-ontap-sqlserver/modules/fsxn/fsx-volume.tf rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap-sqlserver/modules/fsxn/fsx-volume.tf diff --git a/Terraform/deploy-fsx-ontap-sqlserver/modules/fsxn/outputs.tf b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap-sqlserver/modules/fsxn/outputs.tf similarity index 100% rename from Terraform/deploy-fsx-ontap-sqlserver/modules/fsxn/outputs.tf rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap-sqlserver/modules/fsxn/outputs.tf diff --git a/Terraform/deploy-fsx-ontap-sqlserver/modules/fsxn/variables.tf b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap-sqlserver/modules/fsxn/variables.tf similarity index 100% rename from Terraform/deploy-fsx-ontap-sqlserver/modules/fsxn/variables.tf rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap-sqlserver/modules/fsxn/variables.tf diff --git a/Terraform/deploy-fsx-ontap-sqlserver/networking.tf b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap-sqlserver/networking.tf similarity index 100% rename from Terraform/deploy-fsx-ontap-sqlserver/networking.tf rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap-sqlserver/networking.tf diff --git a/Terraform/deploy-fsx-ontap-sqlserver/outputs.tf b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap-sqlserver/outputs.tf similarity index 100% rename from Terraform/deploy-fsx-ontap-sqlserver/outputs.tf rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap-sqlserver/outputs.tf diff --git a/Terraform/deploy-fsx-ontap-sqlserver/ssm.tf b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap-sqlserver/ssm.tf similarity index 100% rename from Terraform/deploy-fsx-ontap-sqlserver/ssm.tf rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap-sqlserver/ssm.tf diff --git a/Terraform/deploy-fsx-ontap-sqlserver/terraform.sample.tfvars b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap-sqlserver/terraform.sample.tfvars similarity index 100% rename from Terraform/deploy-fsx-ontap-sqlserver/terraform.sample.tfvars rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap-sqlserver/terraform.sample.tfvars diff --git a/Terraform/deploy-fsx-ontap-sqlserver/variables.tf b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap-sqlserver/variables.tf similarity index 100% rename from Terraform/deploy-fsx-ontap-sqlserver/variables.tf rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap-sqlserver/variables.tf diff --git a/Terraform/deploy-fsx-ontap/README.md b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap/README.md similarity index 100% rename from Terraform/deploy-fsx-ontap/README.md rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap/README.md diff --git a/Terraform/deploy-fsx-ontap/module/README.md b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap/module/README.md similarity index 100% rename from Terraform/deploy-fsx-ontap/module/README.md rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap/module/README.md diff --git a/Terraform/deploy-fsx-ontap/module/main.tf b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap/module/main.tf similarity index 100% rename from Terraform/deploy-fsx-ontap/module/main.tf rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap/module/main.tf diff --git a/Terraform/deploy-fsx-ontap/module/output.tf b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap/module/output.tf similarity index 100% rename from Terraform/deploy-fsx-ontap/module/output.tf rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap/module/output.tf diff --git a/Terraform/deploy-fsx-ontap/module/security_groups.tf b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap/module/security_groups.tf similarity index 100% rename from Terraform/deploy-fsx-ontap/module/security_groups.tf rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap/module/security_groups.tf diff --git a/Terraform/deploy-fsx-ontap/module/variables.tf b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap/module/variables.tf similarity index 100% rename from Terraform/deploy-fsx-ontap/module/variables.tf rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap/module/variables.tf diff --git a/Terraform/deploy-fsx-ontap/standalone-module/README.md b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap/standalone-module/README.md similarity index 100% rename from Terraform/deploy-fsx-ontap/standalone-module/README.md rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap/standalone-module/README.md diff --git a/Terraform/deploy-fsx-ontap/standalone-module/main.tf b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap/standalone-module/main.tf similarity index 100% rename from Terraform/deploy-fsx-ontap/standalone-module/main.tf rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap/standalone-module/main.tf diff --git a/Terraform/deploy-fsx-ontap/standalone-module/output.tf b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap/standalone-module/output.tf similarity index 100% rename from Terraform/deploy-fsx-ontap/standalone-module/output.tf rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap/standalone-module/output.tf diff --git a/Terraform/deploy-fsx-ontap/standalone-module/security_groups.tf b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap/standalone-module/security_groups.tf similarity index 100% rename from Terraform/deploy-fsx-ontap/standalone-module/security_groups.tf rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap/standalone-module/security_groups.tf diff --git a/Terraform/deploy-fsx-ontap/standalone-module/variables.tf b/Infrastructure_as_Code/Terraform/deploy-fsx-ontap/standalone-module/variables.tf similarity index 100% rename from Terraform/deploy-fsx-ontap/standalone-module/variables.tf rename to Infrastructure_as_Code/Terraform/deploy-fsx-ontap/standalone-module/variables.tf diff --git a/Terraform/fsxn-replicate/DR_FSxN_variables.tf b/Infrastructure_as_Code/Terraform/fsxn-replicate/DR_FSxN_variables.tf similarity index 100% rename from Terraform/fsxn-replicate/DR_FSxN_variables.tf rename to Infrastructure_as_Code/Terraform/fsxn-replicate/DR_FSxN_variables.tf diff --git a/Terraform/fsxn-replicate/Primary_FSxN_variables.tf b/Infrastructure_as_Code/Terraform/fsxn-replicate/Primary_FSxN_variables.tf similarity index 100% rename from Terraform/fsxn-replicate/Primary_FSxN_variables.tf rename to Infrastructure_as_Code/Terraform/fsxn-replicate/Primary_FSxN_variables.tf diff --git a/Terraform/fsxn-replicate/README.md b/Infrastructure_as_Code/Terraform/fsxn-replicate/README.md similarity index 100% rename from Terraform/fsxn-replicate/README.md rename to Infrastructure_as_Code/Terraform/fsxn-replicate/README.md diff --git a/Terraform/fsxn-replicate/main.tf b/Infrastructure_as_Code/Terraform/fsxn-replicate/main.tf similarity index 100% rename from Terraform/fsxn-replicate/main.tf rename to Infrastructure_as_Code/Terraform/fsxn-replicate/main.tf diff --git a/Terraform/fsxn-replicate/output.tf b/Infrastructure_as_Code/Terraform/fsxn-replicate/output.tf similarity index 100% rename from Terraform/fsxn-replicate/output.tf rename to Infrastructure_as_Code/Terraform/fsxn-replicate/output.tf diff --git a/Terraform/fsxn-replicate/security_groups.tf b/Infrastructure_as_Code/Terraform/fsxn-replicate/security_groups.tf similarity index 100% rename from Terraform/fsxn-replicate/security_groups.tf rename to Infrastructure_as_Code/Terraform/fsxn-replicate/security_groups.tf diff --git a/Terraform/fsxn-replicate/terraform.sample.tfvars b/Infrastructure_as_Code/Terraform/fsxn-replicate/terraform.sample.tfvars similarity index 100% rename from Terraform/fsxn-replicate/terraform.sample.tfvars rename to Infrastructure_as_Code/Terraform/fsxn-replicate/terraform.sample.tfvars diff --git a/Management-Utilities/Workload-Factory-API-Samples/README.md b/Management-Utilities/Workload-Factory-API-Samples/README.md index f147d326..9e6411e5 100644 --- a/Management-Utilities/Workload-Factory-API-Samples/README.md +++ b/Management-Utilities/Workload-Factory-API-Samples/README.md @@ -1,30 +1,39 @@ # Workload Factory API Samples -The idea behind this folder is to show examples of how to use the [BlueXP Workload Factory APIs](https://console.workloads.netapp.com/api-doc). -Not every API is covered, but the ones required to get you started (get a refresh token, get the BlueXP accountID, -get BlueXP credentials ID) are included. Once you have the information provided from these APIs are ready to start +The idea behind this folder is to show examples of how to use the [Workload Factory APIs](https://console.workloads.netapp.com/api-doc). +Not every API is covered, but the ones required to get you started (i.e. get a bearer token, get the BlueXP accountID, +get BlueXP credentials ID) are included. Once you have the information provided from these APIs you are ready to start calling the others. While these examples are implemented as bash shell scripts you should be able to translate them to the programming language that you prefer, such as Python, Go, or JavaScript. -Note that all these scripts depend on the [wf_utils](wf_utils) file that contains common functions used by all the -scripts. One function in particular, `get_token()`, is used to get an authentication token from the BlueXP Workload -Factory API. So, if you copy just some of the files from this repository, make sure to copy the `wf_utils` file as well. +You authenticate to the Workload Factory APIs with a "Bearer Token." You generate a bearer token +by running a specific API using your "Refresh Token." Instructions on how to obtain your "Refresh Token" and generate an bearer token can be found +in the [NetApp Console documentation](https://docs.netapp.com/us-en/bluexp-automation/platform/create_user_token.html#1-generate-a-netapp-refresh-token). +Note that a bearer token expires after 24 hours whereas the Refresh Token does not expire until you revoke it from the NetApp Console. + +Also note that all these scripts depend on the [wf_utils](wf_utils) file that contains common functions used by all of them. +So, if you copy just one of these scripts, make sure to also copy the `wf_utils` file as well. + +To make it easier to run the scripts, a `get_token()` function is included in the `wf_utils` file +that retrieves a bearer token for you. So, you don't have to worry about manually generating a bearer token +everyday instead, you just pass the "Refresh Token" to the scripts, they will call the `get_token()` function and +generate a bearer token for you. ## Prerequisites To run these scripts, you need to have the following prerequisites: -- A bash shell. +- A NetApp Console refresh token. You can generate one by visiting [Refresh Token Generator](https://services.cloud.netapp.com/refresh-token) page and following the instructions there. +- A bash shell. If you want to run from a Windows environment, you can use the Windows Subsystem for Linux (WSL). - The `curl` command-line tool installed. - The `jq` command-line JSON processor installed. You can install it using your package manager, e.g., `apt-get install jq` on Debian/Ubuntu or `brew install jq` on macOS. ## Notes: - All scripts allow you to set environment variables to pass options instead of having to use the -command line options. For example, instead of using the `-t` option to pass the -[BlueXP Refresh Token](https://docs.netapp.com/us-en/bluexp-automation/platform/create_user_token.html#1-generate-a-netapp-refresh-token), +command line options. For example, instead of using the `-t` option to pass the Refresh Token you can set the `REFRESH_TOKEN` environment variable. - All scripts accept the `-h` option to display the help message, which includes the available options and their descriptions. -Hopefully with these samples you'll be able to create your own scripts that use any the Workload Factory APIs. +Hopefully with these samples you'll be able to create your own scripts that use any of the Workload Factory APIs. If you do create a new script, please consider contributing it back to this repository so that others can benefit from it. ## Available Scripts diff --git a/README.md b/README.md index 8e063154..404ae8f6 100644 --- a/README.md +++ b/README.md @@ -8,7 +8,7 @@ built to maximize cost performance, resilience, and accessibility in business-cr This GitHub repository contains comprehensive code samples and automation scripts for FSx for Netapp ONTAP operations, promoting the use of Infrastructure as Code (IAC) tools and encouraging developers to extend the product's functionalities through code. The samples here go alongside the automation, management and monitoring that -[BlueXP Workload Factory](https://console.workloads.netapp.com) provides. +[Workload Factory](https://console.workloads.netapp.com) provides. We welcome contributions from the community! Please read our [contribution guidelines](CONTRIBUTING.md) before getting started. @@ -16,12 +16,18 @@ Have a great idea? We'd love to hear it! Please email us at [ng-fsxn-github-samp ## Table of Contents -* [Anisble](/Ansible) - * [FSx ONTAP inventory report](/Ansible/fsx_inventory_report) - * [SnapMirror report](/Ansible/snapmirror_report) -* [CloudFormation](/CloudFormation) - * [NetApp-FSxN-Custom-Resources-Samples](/CloudFormation/NetApp-FSxN-Custom-Resources-Samples) - * [deploy-fsx-ontap](/CloudFormation/deploy-fsx-ontap) +* [Infrastructure as Code](/Infrastructure_as_Code) + * [Ansible](/Infrastructure_as_Code/Ansible) + * [FSx ONTAP inventory report](/Infrastructure_as_Code/Ansible/fsx_inventory_report) + * [SnapMirror report](/Infrastructure_as_Code/Ansible/snapmirror_report) + * [CloudFormation](/Infrastructure_as_Code/CloudFormation) + * [NetApp-FSxN-Custom-Resources-Samples](/Infrastructure_as_Code/CloudFormation/NetApp-FSxN-Custom-Resources-Samples) + * [deploy-fsx-ontap](/Infrastructure_as_Code/CloudFormation/deploy-fsx-ontap) + * [Terraform](/Infrastructure_as_Code/Terraform) + * [FSx ONTAP deployment using Terraform](/Infrastructure_as_Code/Terraform/deploy-fsx-ontap) + * [FSx ONTAP Replication](/Infrastructure_as_Code/Terraform/fsxn-replicate) + * [Deployment of SQL Server on EC2 with FSx ONTAP](/Infrastructure_as_Code/Terraform/deploy-fsx-ontap-sqlserver) + * [Deployment of FSx ONTAP with VPN for File Share Access](/Infrastructure_as_Code/Terraform/deploy-fsx-ontap-fileshare-access) * [EKS](/EKS) * [Backup-EKS-Applications-with-Trident-Protect](/EKS/Backup-EKS-Applications-with-Trident-Protect) * [FSx for NetApp ONTAP as persistent storage for EKS](/EKS/FSxN-as-PVC-for-EKS) @@ -43,11 +49,6 @@ Have a great idea? We'd love to hear it! Please email us at [ng-fsxn-github-samp * [Monitor FSx for ONTAP with Harvest on EKS](/Monitoring/monitor_fsxn_with_harvest_on_eks) * [Solutions](/Solutions) * [k8s applications non-stdout logs collection into ELK](/Solutions/EKS-logs-to-ELK) -* [Terraform](/Terraform) - * [FSx ONTAP deployment using Terraform](/Terraform/deploy-fsx-ontap) - * [FSx ONTAP Replication](/Terraform/fsxn-replicate) - * [Deployment of SQL Server on EC2 with FSx ONTAP](/Terraform/deploy-fsx-ontap-sqlserver) - * [Deployment of FSx ONTAP with VPN for File Share Access](/Terraform/deploy-fsx-ontap-fileshare-access) ## Author Information