Skip to content

Commit c657d92

Browse files
committed
updated README.md docs, main.tf, and CONTRIBUTING.md
1 parent 3701aa3 commit c657d92

File tree

8 files changed

+44
-18
lines changed

8 files changed

+44
-18
lines changed

CONTRIBUTING.md

Lines changed: 15 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -9,13 +9,8 @@ Contributors to this project must abide by the [Contributor Covenant Code of Con
99
The project has the following folders and files:
1010

1111
- /: root folder.
12-
- /docs: Examples for using this module.
1312
- /examples: Examples for using this module.
14-
- /files: Static files referenced but not executed by Terraform.
15-
- /helpers: Helper scripts NOT called by Terraform.
1613
- /modules: Inline local modules called by this module.
17-
- /scripts: Scripts for specific tasks on module.
18-
- /templates: Template files used to be execute by data sources.
1914
- /main.tf: Main file for this module, contains all the resources to operate the module.
2015
- /variables.tf: All the variables necessary for run the module.
2116
- /output.tf: The outputs generate from the module.
@@ -25,6 +20,20 @@ The project has the following folders and files:
2520
- /CODE_OF_CONDUCT.md: Code of Conduct file.
2621
- /CONTRIBUTING.md: This file.
2722

23+
## Adding a new module
24+
25+
To add a new module, fork this repo then add your module under [./modules](./modules/) folder. Please visit our [Terraform Module Development Standards guide](https://github.com/equinix-labs/equinix-labs/blob/main/terraform-module-standards.md) for more info on module development best practices.
26+
2827
## Issues and Change Requests
2928

30-
Please submit change requests and / or features via [Issues](https://github.com/equinix-labs/equinix-labs/issues).
29+
Please submit change requests and / or features via [Issues](https://github.com/equinix-labs/terraform-equinix-labs/issues).
30+
31+
## Submitting Pull Requests
32+
33+
Before starting any work or sending us a pull request, please ensure that:
34+
35+
- Your working branch is up-to-date with the latest source on the main branch.
36+
- Check issues and pull requests (open/merged) to make sure someone else hasn't already addressed that issue.
37+
- You open an issue to discuss your proposal.
38+
39+
To learn how to send us a pull request, please see [Contributing to Projects](https://docs.github.com/en/get-started/quickstart/contributing-to-projects) in the GitHub Docs.

README.md

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,11 @@
44
[![run-pre-commit-hooks](https://github.com/equinix-labs/terraform-equinix-labs/actions/workflows/pre-commit.yaml/badge.svg)](https://github.com/equinix-labs/terraform-equinix-labs/actions/workflows/pre-commit.yaml)
55
[![generate-terraform-docs](https://github.com/equinix-labs/terraform-equinix-labs/actions/workflows/documentation.yaml/badge.svg)](https://github.com/equinix-labs/terraform-equinix-labs/actions/workflows/documentation.yaml)
66

7-
This repository contains a collection of Terraform modules to help automate the deployment and management of both baremetal and [Kubernetes (EKS-A)](https://github.com/equinix-labs/terraform-equinix-metal-eks-anywhere) environments running on [Equinix Metal](https://deploy.equinix.com/).
8-
9-
Visit [EKS-A Baremetal on Equinix Metal](https://github.com/equinix-labs/terraform-equinix-metal-eks-anywhere) for more info on EKS-A on baremetal.
7+
This repository contains a collection of Terraform modules to help automate the deployment and management of either bare metal nodes or a kubernetes cluster environment running on [Equinix Metal](https://deploy.equinix.com/).
108

119
## Usage
1210

13-
This project is intended to be used as a Terraform module. It may also be forked, cloned, or downloaded and modified as needed as the base in your integrations and deployments. Module [invite-from-csv](./modules/invite-from-csv/) may be enabled mutually exclusively.
11+
This project is intended to be used as a Terraform module. It may also be forked, cloned, or downloaded and modified as needed as the base in your integrations and deployments.
1412

1513
Prerequesites:
1614

@@ -20,7 +18,12 @@ Prerequesites:
2018

2119
## Examples
2220

23-
Check out [examples](./examples/) directory for examples on how to utilize this module.
21+
This project may be deployed into new project(s) or existing project(s). Check out sample deployments in the [examples](./examples/) directory described as follows:
22+
23+
| Name | Description |
24+
|------|---------|
25+
| [eksa-setup](./examples/eksa-setup/) | Deploys a AWS EKS-A cluster into new projects provisioned for each user described in users.csv |
26+
| [metal-setup](./examples/metal-setup/) | Deploys a cluster or bare nodes into new projects provisioned for each user described in users.csv |
2427

2528
<!-- BEGIN_TF_DOCS -->
2629
## Requirements
@@ -68,3 +71,10 @@ No resources.
6871
| <a name="output_deploy_metal_outputs"></a> [deploy\_metal\_outputs](#output\_deploy\_metal\_outputs) | Outputs of the Deploy Metal module |
6972
| <a name="output_project_setup_outputs"></a> [project\_setup\_outputs](#output\_project\_setup\_outputs) | Outputs of the Project Setup module |
7073
<!-- END_TF_DOCS -->
74+
## Contributing
75+
76+
If you would like to contribute to this module, see [CONTRIBUTING](CONTRIBUTING.md) page for more info.
77+
78+
## License
79+
80+
Apache License, Version 2.0. See [LICENSE](LICENSE).

examples/eksa-setup/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Terraform Equinix Labs EKSA Setup Example
22

3-
This is an example of how to utilize the root module to deploy the [eksa](../../modules/eksa/) module.
3+
This is an example of how to utilize the root module to deploy the [invite-from-csv](https://github.com/equinix-labs/terraform-equinix-labs/tree/main/modules/invite-from-csv) module and the [eksa](https://github.com/equinix-labs/terraform-equinix-labs/tree/main/modules/eksa) module. In this example, each user identified in the `users.csv` file (see users.csv.example) will have a project provisioned and an invitation sent by email to join that project. Kubernetes will then be provisioned into each user's project with the configurations set within the [variables.tf](./variables.tf) file.
44

55
<!-- BEGIN_TF_DOCS -->
66
## Requirements

examples/metal-setup/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Terraform Equinix Labs Metal Setup Example
22

3-
This is an example of how to utilize the root module to deploy the [metal](../../modules/metal/) module.
3+
This is an example of how to utilize the root module to deploy the [invite-from-csv](https://github.com/equinix-labs/terraform-equinix-labs/tree/main/modules/invite-from-csv) module and the [metal](https://github.com/equinix-labs/terraform-equinix-labs/tree/main/modules/metal) module. In this example, each user identified in the `users.csv` file (see users.csv.example) will have a project provisioned and an invitation sent by email to join that project. Kubernetes will then be provisioned into each user's project with the configurations set within the [variables.tf](./variables.tf) file.
44

55
<!-- BEGIN_TF_DOCS -->
66
## Requirements

main.tf

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,22 @@ terraform {
33
required_version = ">= 1.3"
44
}
55

6+
# ---------------------------------------------------------------------------------------------------------------------
7+
# Project Setup
8+
# ---------------------------------------------------------------------------------------------------------------------
9+
610
# Setup Project for deploying metal or EKSA
711
module "project_setup" {
812
count = var.enable_workshop_setup ? 1 : 0
913
source = "./modules/invite-from-csv"
1014
metal_organization_id = var.metal_organization_id
1115
}
1216

13-
# Deploy the metal module if platform of choice is metal
17+
# ---------------------------------------------------------------------------------------------------------------------
18+
# Platforms
19+
# ---------------------------------------------------------------------------------------------------------------------
20+
21+
# Deploy the metal module if platform of choice is Metal
1422
module "deploy_metal" {
1523
count = var.enable_metal ? 1 : 0
1624
source = "./modules/metal"
@@ -19,7 +27,7 @@ module "deploy_metal" {
1927
module_config = var.metal_config
2028
}
2129

22-
# Deploy the eksa module if platform of choice is eksa
30+
# Deploy the eksa module if platform of choice is EKSA
2331
module "deploy_eksa" {
2432
count = var.enable_eksa ? 1 : 0
2533
source = "./modules/eksa"

modules/eksa/main.tf

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,5 +14,4 @@ module "eksa" {
1414
cluster_name = var.module_config.cluster_name
1515
cp_device_count = var.module_config.cp_device_count
1616
worker_device_count = var.module_config.worker_device_count
17-
1817
}

modules/invite-from-csv/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Terraform Equinix Labs Invite from CSV Module
22

3-
This module will loop over every user provided in the users.csv file and call the [collaborator-project](../collaborator-project/) module to create a project.
3+
This module reads a given filename `users.csv`, identifies each user entry in the file, then calls [collaborator-project](../collaborator-project/) module to create a project for them.
44

55
<!-- BEGIN_TF_DOCS -->
66
## Requirements

modules/metal/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Terraform Equinix Labs Metal Module
22

3-
This module deploys bare metal machines as a cluster.
3+
This module provisions a cluster of bare metal machines, VLAN, gateway, and an SSH key for users to SSH into the provisioned bare metal machines.
44

55
<!-- BEGIN_TF_DOCS -->
66
## Requirements

0 commit comments

Comments
 (0)