Skip to content

Commit 401ee6a

Browse files
malhussanmeshkodiak[bot]
authored andcommitted
feat: add a pre-commit config file
1 parent 6141e10 commit 401ee6a

File tree

14 files changed

+276
-94
lines changed

14 files changed

+276
-94
lines changed

.github/workflows/workflow.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ jobs:
77
name: Validate
88
runs-on: ubuntu-latest
99
steps:
10-
- name: Check out code
10+
- name: Check out code
1111
uses: actions/checkout@v1
1212

1313
- uses: hashicorp/setup-terraform@v1

.pre-commit-config.yaml

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
repos:
2+
- repo: https://github.com/pre-commit/pre-commit-hooks
3+
rev: v1.2.3
4+
hooks:
5+
- id: trailing-whitespace
6+
- repo: https://github.com/antonbabenko/pre-commit-terraform
7+
rev: v1.73.0
8+
hooks:
9+
- id: terraform_fmt
10+
- id: terraform_validate
11+
- id: terraform_docs
12+
args:
13+
- --args=--config=.terraform-docs.yml

.terraform-docs.yml

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
formatter: "markdown" # this is required
2+
3+
version: ""
4+
5+
recursive:
6+
enabled: false
7+
path: modules
8+
9+
content: ""
10+
11+
output:
12+
file: "README.md"
13+
mode: inject
14+
template: |-
15+
<!-- BEGIN_TF_DOCS -->
16+
{{ .Content }}
17+
<!-- END_TF_DOCS -->
18+
19+
sort:
20+
enabled: true
21+
by: name

README.md

Lines changed: 60 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -74,3 +74,63 @@ For an overview of the module structure, refer to [generated terraform docs](./T
7474
## Example Usages
7575

7676
Check [examples](./examples/) for different use cases. As a quick start we recommend using [basic-azure-integration](./examples/basic-azure-integration) example.
77+
78+
<!-- BEGIN_TF_DOCS -->
79+
## Requirements
80+
81+
| Name | Version |
82+
|------|---------|
83+
| <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 1.0 |
84+
| <a name="requirement_azuread"></a> [azuread](#requirement\_azuread) | 2.18.0 |
85+
| <a name="requirement_azurerm"></a> [azurerm](#requirement\_azurerm) | 3.3.0 |
86+
87+
## Providers
88+
89+
| Name | Version |
90+
|------|---------|
91+
| <a name="provider_azuread"></a> [azuread](#provider\_azuread) | 2.18.0 |
92+
| <a name="provider_azurerm"></a> [azurerm](#provider\_azurerm) | 3.3.0 |
93+
94+
## Modules
95+
96+
| Name | Source | Version |
97+
|------|--------|---------|
98+
| <a name="module_idp_lookup_service_principal"></a> [idp\_lookup\_service\_principal](#module\_idp\_lookup\_service\_principal) | ./modules/meshcloud-idp-lookup-service-principal/ | n/a |
99+
| <a name="module_kraken_service_principal"></a> [kraken\_service\_principal](#module\_kraken\_service\_principal) | ./modules/meshcloud-kraken-service-principal/ | n/a |
100+
| <a name="module_replicator_service_principal"></a> [replicator\_service\_principal](#module\_replicator\_service\_principal) | ./modules/meshcloud-replicator-service-principal/ | n/a |
101+
| <a name="module_uami_blueprint_user_principal"></a> [uami\_blueprint\_user\_principal](#module\_uami\_blueprint\_user\_principal) | ./modules/uami-blueprint-user-principal/ | n/a |
102+
103+
## Resources
104+
105+
| Name | Type |
106+
|------|------|
107+
| [azuread_client_config.current](https://registry.terraform.io/providers/hashicorp/azuread/2.18.0/docs/data-sources/client_config) | data source |
108+
| [azurerm_management_group.root](https://registry.terraform.io/providers/hashicorp/azurerm/3.3.0/docs/data-sources/management_group) | data source |
109+
110+
## Inputs
111+
112+
| Name | Description | Type | Default | Required |
113+
|------|-------------|------|---------|:--------:|
114+
| <a name="input_additional_permissions"></a> [additional\_permissions](#input\_additional\_permissions) | Additional Subscription-Level Permissions the Service Principal needs. | `list(string)` | `[]` | no |
115+
| <a name="input_additional_required_resource_accesses"></a> [additional\_required\_resource\_accesses](#input\_additional\_required\_resource\_accesses) | Additional AAD-Level Resource Accesses the replicator Service Principal needs. | `list(object({ resource_app_id = string, resource_accesses = list(object({ id = string, type = string })) }))` | `[]` | no |
116+
| <a name="input_idplookup_enabled"></a> [idplookup\_enabled](#input\_idplookup\_enabled) | Whether to create idplookup Service Principal or not. | `bool` | `true` | no |
117+
| <a name="input_kraken_enabled"></a> [kraken\_enabled](#input\_kraken\_enabled) | Whether to create Metering Service Principal or not. | `bool` | `true` | no |
118+
| <a name="input_mgmt_group_name"></a> [mgmt\_group\_name](#input\_mgmt\_group\_name) | The name or UUID of the Management Group. | `string` | n/a | yes |
119+
| <a name="input_replicator_enabled"></a> [replicator\_enabled](#input\_replicator\_enabled) | Whether to create replicator Service Principal or not. | `bool` | `true` | no |
120+
| <a name="input_service_principal_name_suffix"></a> [service\_principal\_name\_suffix](#input\_service\_principal\_name\_suffix) | Service principal name suffix. Make sure this is unique. | `string` | n/a | yes |
121+
| <a name="input_subscriptions"></a> [subscriptions](#input\_subscriptions) | The scope to which UAMI blueprint service principal role assignment is applied. | `list(any)` | `[]` | no |
122+
123+
## Outputs
124+
125+
| Name | Description |
126+
|------|-------------|
127+
| <a name="output_azure_ad_tenant_id"></a> [azure\_ad\_tenant\_id](#output\_azure\_ad\_tenant\_id) | The Azure AD tenant id. |
128+
| <a name="output_idp_lookup_service_principal"></a> [idp\_lookup\_service\_principal](#output\_idp\_lookup\_service\_principal) | IDP Lookup Service Principal. |
129+
| <a name="output_idp_lookup_service_principal_password"></a> [idp\_lookup\_service\_principal\_password](#output\_idp\_lookup\_service\_principal\_password) | Password for IDP Lookup Service Principal. |
130+
| <a name="output_kraken_service_principal"></a> [kraken\_service\_principal](#output\_kraken\_service\_principal) | Metering Service Principal. |
131+
| <a name="output_kraken_service_principal_password"></a> [kraken\_service\_principal\_password](#output\_kraken\_service\_principal\_password) | Password for Metering Service Principal. |
132+
| <a name="output_replicator_service_principal"></a> [replicator\_service\_principal](#output\_replicator\_service\_principal) | Replicator Service Principal. |
133+
| <a name="output_replicator_service_principal_password"></a> [replicator\_service\_principal\_password](#output\_replicator\_service\_principal\_password) | Password for Replicator Service Principal. |
134+
| <a name="output_uami_blueprint_user_principal"></a> [uami\_blueprint\_user\_principal](#output\_uami\_blueprint\_user\_principal) | UAMI Blueprint Assignment Service Principal. |
135+
| <a name="output_uami_blueprint_user_principal_password"></a> [uami\_blueprint\_user\_principal\_password](#output\_uami\_blueprint\_user\_principal\_password) | Password for UAMI Blueprint Assignment Service Principal. |
136+
<!-- END_TF_DOCS -->

TERRAFORM_DOCS.md

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

examples/azure-integration-with-additional-resource-access/main.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ module "meshplatform" {
1515
mgmt_group_name = "<MANAGEMENT_GROUP_NAME>|<MANAGEMENT_GROUP_UUID>"
1616

1717
additional_required_resource_accesses = [
18-
# The block below configures replicator access
18+
# The block below configures replicator access
1919
# to the app with id `fe81736c-99c6-4fca-8cc2-2818a2365451` with the appRole with id `e29066a1-ecb1-4a8e-af2d-1627fae35711`
2020
#
2121
# This example configures access to an azure function

generate_tf_docs.sh

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

modules/meshcloud-idp-lookup-service-principal/README.md

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,3 +39,47 @@ No modules.
3939
|------|-------------|
4040
| <a name="output_service_principal"></a> [service\_principal](#output\_service\_principal) | Service Principal application id and object id |
4141
| <a name="output_service_principal_password"></a> [service\_principal\_password](#output\_service\_principal\_password) | Password for the Service Principal. |
42+
43+
<!-- BEGIN_TF_DOCS -->
44+
## Requirements
45+
46+
| Name | Version |
47+
|------|---------|
48+
| <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 1.0 |
49+
| <a name="requirement_azuread"></a> [azuread](#requirement\_azuread) | 2.18.0 |
50+
| <a name="requirement_azurerm"></a> [azurerm](#requirement\_azurerm) | 3.3.0 |
51+
52+
## Providers
53+
54+
| Name | Version |
55+
|------|---------|
56+
| <a name="provider_azuread"></a> [azuread](#provider\_azuread) | 2.18.0 |
57+
58+
## Modules
59+
60+
No modules.
61+
62+
## Resources
63+
64+
| Name | Type |
65+
|------|------|
66+
| [azuread_app_role_assignment.meshcloud_idp_lookup](https://registry.terraform.io/providers/hashicorp/azuread/2.18.0/docs/resources/app_role_assignment) | resource |
67+
| [azuread_application.meshcloud_idp_lookup](https://registry.terraform.io/providers/hashicorp/azuread/2.18.0/docs/resources/application) | resource |
68+
| [azuread_service_principal.meshcloud_idp_lookup](https://registry.terraform.io/providers/hashicorp/azuread/2.18.0/docs/resources/service_principal) | resource |
69+
| [azuread_service_principal.msgraph](https://registry.terraform.io/providers/hashicorp/azuread/2.18.0/docs/resources/service_principal) | resource |
70+
| [azuread_service_principal_password.service_principal_pw](https://registry.terraform.io/providers/hashicorp/azuread/2.18.0/docs/resources/service_principal_password) | resource |
71+
| [azuread_application_published_app_ids.well_known](https://registry.terraform.io/providers/hashicorp/azuread/2.18.0/docs/data-sources/application_published_app_ids) | data source |
72+
73+
## Inputs
74+
75+
| Name | Description | Type | Default | Required |
76+
|------|-------------|------|---------|:--------:|
77+
| <a name="input_service_principal_name_suffix"></a> [service\_principal\_name\_suffix](#input\_service\_principal\_name\_suffix) | Service principal name suffix. | `string` | n/a | yes |
78+
79+
## Outputs
80+
81+
| Name | Description |
82+
|------|-------------|
83+
| <a name="output_service_principal"></a> [service\_principal](#output\_service\_principal) | Service Principal application id and object id |
84+
| <a name="output_service_principal_password"></a> [service\_principal\_password](#output\_service\_principal\_password) | Password for the Service Principal. |
85+
<!-- END_TF_DOCS -->

modules/meshcloud-kraken-service-principal/README.md

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,3 +41,49 @@ No modules.
4141
|------|-------------|
4242
| <a name="output_service_principal"></a> [service\_principal](#output\_service\_principal) | Service Principal application id and object id |
4343
| <a name="output_service_principal_password"></a> [service\_principal\_password](#output\_service\_principal\_password) | Password for the Service Principal. |
44+
45+
<!-- BEGIN_TF_DOCS -->
46+
## Requirements
47+
48+
| Name | Version |
49+
|------|---------|
50+
| <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 1.0 |
51+
| <a name="requirement_azuread"></a> [azuread](#requirement\_azuread) | 2.18.0 |
52+
| <a name="requirement_azurerm"></a> [azurerm](#requirement\_azurerm) | 3.3.0 |
53+
54+
## Providers
55+
56+
| Name | Version |
57+
|------|---------|
58+
| <a name="provider_azuread"></a> [azuread](#provider\_azuread) | 2.18.0 |
59+
| <a name="provider_azurerm"></a> [azurerm](#provider\_azurerm) | 3.3.0 |
60+
61+
## Modules
62+
63+
No modules.
64+
65+
## Resources
66+
67+
| Name | Type |
68+
|------|------|
69+
| [azuread_application.meshcloud_kraken](https://registry.terraform.io/providers/hashicorp/azuread/2.18.0/docs/resources/application) | resource |
70+
| [azuread_service_principal.meshcloud_kraken](https://registry.terraform.io/providers/hashicorp/azuread/2.18.0/docs/resources/service_principal) | resource |
71+
| [azuread_service_principal_password.service_principal_pw](https://registry.terraform.io/providers/hashicorp/azuread/2.18.0/docs/resources/service_principal_password) | resource |
72+
| [azurerm_role_assignment.meshcloud_kraken](https://registry.terraform.io/providers/hashicorp/azurerm/3.3.0/docs/resources/role_assignment) | resource |
73+
| [azurerm_role_assignment.meshcloud_kraken_cloud_inventory](https://registry.terraform.io/providers/hashicorp/azurerm/3.3.0/docs/resources/role_assignment) | resource |
74+
| [azurerm_role_definition.meshcloud_kraken_cloud_inventory_role](https://registry.terraform.io/providers/hashicorp/azurerm/3.3.0/docs/resources/role_definition) | resource |
75+
76+
## Inputs
77+
78+
| Name | Description | Type | Default | Required |
79+
|------|-------------|------|---------|:--------:|
80+
| <a name="input_scope"></a> [scope](#input\_scope) | The scope to which Service Principal permissions should be assigned to. Usually this is the management group id of form `/providers/Microsoft.Management/managementGroups/<tenantId>` that sits atop the subscriptions. | `string` | n/a | yes |
81+
| <a name="input_service_principal_name_suffix"></a> [service\_principal\_name\_suffix](#input\_service\_principal\_name\_suffix) | Service principal name suffix. | `string` | n/a | yes |
82+
83+
## Outputs
84+
85+
| Name | Description |
86+
|------|-------------|
87+
| <a name="output_service_principal"></a> [service\_principal](#output\_service\_principal) | Service Principal application id and object id |
88+
| <a name="output_service_principal_password"></a> [service\_principal\_password](#output\_service\_principal\_password) | Password for the Service Principal. |
89+
<!-- END_TF_DOCS -->

modules/meshcloud-kraken-spp/README.md

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

0 commit comments

Comments
 (0)