Skip to content

Commit a614363

Browse files
Merge pull request #7 from ShibraAmin18/gcp
Added Gcp provider
2 parents e4d58ec + b690503 commit a614363

File tree

18 files changed

+325
-9
lines changed

18 files changed

+325
-9
lines changed

IAM.md

Lines changed: 31 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
11
## IAM Permission
22

3-
The Policy required to deploy this module is:
4-
5-
```
3+
The Policy required to deploy this module:
4+
```json
65
{
76
"Version": "2012-10-17",
87
"Statement": [
@@ -18,6 +17,34 @@ The Policy required to deploy this module is:
1817
}
1918
]
2019
}
20+
```
21+
## Azure Role Permissions
2122

22-
23+
```json
24+
{
25+
"Name": "AKS Describe Role",
26+
"IsCustom": true,
27+
"Description": "Allows describing AKS clusters",
28+
"Actions": [
29+
"Microsoft.ContainerService/managedClusters/read"
30+
],
31+
"DataActions": [],
32+
"NotDataActions": [],
33+
"AssignableScopes": [
34+
"/subscriptions/{subscriptionId}"
35+
]
36+
}
2337
```
38+
39+
## Google IAM Permissions
40+
41+
```json
42+
{
43+
"title": "GKE Describe Role",
44+
"description": "Allows describing GKE clusters",
45+
"stage": "GA",
46+
"includedPermissions": [
47+
"container.clusters.get"
48+
]
49+
}
50+
```

README.md

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,13 +10,13 @@
1010
This module deploys ArgoCD with Redis High Availability (HA) as the backend data store, and Slack notifications configured for real-time updates about deployments. With this module, you can automate your application deployment process with the GitOps methodology and ensure that the desired state of your application is always in sync with the actual state. Redis HA provides enhanced resilience and availability, while Slack notifications keep you informed of the status of your deployments.
1111

1212
## Important Notes:
13-
This module is compatible with EKS version 1.23,1.24 and 1.25 which is great news for users deploying the module on an EKS cluster running that version. Review the module's documentation, meet specific configuration requirements, and test thoroughly after deployment to ensure everything works as expected.
13+
This module is compatible with EKS, AKS & GKE which is great news for users deploying the module on an AWS, Azure & GCP cloud. Review the module's documentation, meet specific configuration requirements, and test thoroughly after deployment to ensure everything works as expected.
1414

1515
## Supported Versions:
1616

17-
| Argocd Helm Chart Version | K8s supported version |
17+
| Argocd Helm Chart Version | K8s supported version (EKS, AKS & GKE) |
1818
| :-----: | :--- |
19-
| **5.4.0** | **1.23,1.24,1.25** |
19+
| **5.4.0** | **1.23,1.24,1.25,1.26,1.27** |
2020

2121

2222
## Usage Example
@@ -35,7 +35,9 @@ module "argocd" {
3535
}
3636
3737
```
38-
Refer [examples](https://github.com/squareops/terraform-kubernetes-argocd/tree/main/examples/complete) for more details.
38+
- Refer [AWS examples](https://github.com/squareops/terraform-kubernetes-argocd/tree/main/examples/complete/aws) for more details.
39+
- Refer [Azure examples](https://github.com/squareops/terraform-kubernetes-argocd/tree/main/examples/complete/azure) for more details.
40+
- Refer [GCP examples](https://github.com/squareops/terraform-kubernetes-argocd/tree/main/examples/complete/gcp) for more details.
3941

4042
## IAM Permissions
4143
The required IAM permissions to create resources from this module can be found [here](https://github.com/squareops/terraform-kubernetes-argocd/blob/main/IAM.md)

examples/complate/README.md renamed to examples/complete/README.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
### [SquareOps Technologies](https://squareops.com/) Your DevOps Partner for Accelerating cloud journey.
88
<br>
99
This example will be very useful for users who are new to a module and want to quickly learn how to use it. By reviewing the examples, users can gain a better understanding of how the module works, what features it supports, and how to customize it to their specific needs.
10+
1011
<!-- BEGINNING OF PRE-COMMIT-TERRAFORM DOCS HOOK -->
1112
## Requirements
1213

@@ -17,6 +18,8 @@ No requirements.
1718
| Name | Version |
1819
|------|---------|
1920
| <a name="provider_aws"></a> [aws](#provider\_aws) | n/a |
21+
| <a name="provider_azure"></a> [azure](#provider\_azure) | n/a |
22+
| <a name="provider_gcp"></a> [gcp](#provider\_gcp) | n/a |
2023

2124
## Modules
2225

examples/complete/aws/README.md

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
# AWS Argocd Terraform Kubernetes Module
2+
<!-- BEGIN_TF_DOCS -->
3+
## Requirements
4+
5+
No requirements.
6+
7+
## Providers
8+
9+
| Name | Version |
10+
|------|---------|
11+
| <a name="provider_aws"></a> [aws](#provider\_aws) | n/a |
12+
13+
## Modules
14+
15+
| Name | Source | Version |
16+
|------|--------|---------|
17+
| <a name="module_argocd"></a> [argocd](#module\_argocd) | squareops/argocd/kubernetes | n/a |
18+
19+
## Resources
20+
21+
| Name | Type |
22+
|------|------|
23+
| [aws_eks_cluster.cluster](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/eks_cluster) | data source |
24+
| [aws_eks_cluster_auth.cluster](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/eks_cluster_auth) | data source |
25+
26+
## Inputs
27+
28+
No inputs.
29+
30+
## Outputs
31+
32+
| Name | Description |
33+
|------|-------------|
34+
| <a name="output_argocd_credentials"></a> [argocd\_credentials](#output\_argocd\_credentials) | Argocd\_Info |
35+
<!-- END_TF_DOCS -->
File renamed without changes.

examples/complate/main.tf renamed to examples/complete/aws/main.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ module "argocd" {
1515
values_yaml = file("./helm/values.yaml")
1616
redis_ha_enabled = true
1717
autoscaling_enabled = true
18-
slack_notification_token = "xoxb-qQ8486bluEuvmxrYx"
18+
slack_notification_token = ""
1919
argocd_notifications_enabled = true
2020
}
2121
}
File renamed without changes.
File renamed without changes.

examples/complete/azure/README.md

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
# Azure Argocd Terraform Kubernetes Module
2+
3+
<!-- BEGIN_TF_DOCS -->
4+
## Requirements
5+
6+
No requirements.
7+
8+
## Providers
9+
10+
| Name | Version |
11+
|------|---------|
12+
| <a name="provider_azurerm"></a> [azurerm](#provider\_azurerm) | 3.71.0 |
13+
14+
## Modules
15+
16+
| Name | Source | Version |
17+
|------|--------|---------|
18+
| <a name="module_argocd"></a> [argocd](#module\_argocd) | squareops/argocd/kubernetes | n/a |
19+
20+
## Resources
21+
22+
| Name | Type |
23+
|------|------|
24+
| [azurerm_kubernetes_cluster.primary](https://registry.terraform.io/providers/hashicorp/azurerm/latest/docs/data-sources/kubernetes_cluster) | data source |
25+
26+
## Inputs
27+
28+
No inputs.
29+
30+
## Outputs
31+
32+
| Name | Description |
33+
|------|-------------|
34+
| <a name="output_argocd_credentials"></a> [argocd\_credentials](#output\_argocd\_credentials) | Argocd\_Info |
35+
<!-- END_TF_DOCS -->
Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
controller:
2+
resources:
3+
limits:
4+
cpu: 400m
5+
memory: 512Mi
6+
requests:
7+
cpu: 100m
8+
memory: 200Mi
9+
affinity:
10+
nodeAffinity:
11+
requiredDuringSchedulingIgnoredDuringExecution:
12+
nodeSelectorTerms:
13+
- matchExpressions:
14+
- key: "Addons-Services"
15+
operator: In
16+
values:
17+
- "true"
18+
repoServer:
19+
affinity:
20+
nodeAffinity:
21+
requiredDuringSchedulingIgnoredDuringExecution:
22+
nodeSelectorTerms:
23+
- matchExpressions:
24+
- key: "Addons-Services"
25+
operator: In
26+
values:
27+
- "true"
28+
29+
server:
30+
affinity:
31+
nodeAffinity:
32+
requiredDuringSchedulingIgnoredDuringExecution:
33+
nodeSelectorTerms:
34+
- matchExpressions:
35+
- key: "Addons-Services"
36+
operator: In
37+
values:
38+
- "true"
39+
40+
redis:
41+
resources:
42+
limits:
43+
cpu: 400m
44+
memory: 500Mi
45+
requests:
46+
cpu: 100m
47+
memory: 150Mi
48+
affinity:
49+
nodeAffinity:
50+
requiredDuringSchedulingIgnoredDuringExecution:
51+
nodeSelectorTerms:
52+
- matchExpressions:
53+
- key: "Addons-Services"
54+
operator: In
55+
values:
56+
- "true"

0 commit comments

Comments
 (0)