Skip to content

Commit 684c998

Browse files
committed
update README.md
1 parent 5dd1598 commit 684c998

File tree

2 files changed

+203
-138
lines changed

2 files changed

+203
-138
lines changed

README.md

Lines changed: 104 additions & 138 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,13 @@
11
<!-- This file was automatically generated by the `geine`. Make all changes to `README.yaml` and run `make readme` to rebuild this file. -->
2-
3-
<p align="center"> <img src="https://user-images.githubusercontent.com/50652676/62349836-882fef80-b51e-11e9-99e3-7b974309c7e3.png" width="100" height="100"></p>
4-
5-
2+
[![Banner](https://github.com/clouddrove/terraform-module-template/assets/119565952/67a8a1af-2eb7-40b7-ae07-c94cde9ce062)][website]
63
<h1 align="center">
74
Terraform AZURE APP SERVICE
85
</h1>
96

10-
<p align="center" style="font-size: 1.2rem;">
11-
Terraform module to create app-service resource on AZURE.
12-
</p>
7+
<p align="center" style="font-size: 1.2rem;">
8+
With our comprehensive DevOps toolkit - streamline operations, automate workflows, enhance collaboration and, most importantly, deploy with confidence.
9+
</p>
10+
1311

1412
<p align="center">
1513

@@ -27,6 +25,9 @@
2725
<a href='https://facebook.com/sharer/sharer.php?u=https://github.com/clouddrove/terraform-azure-app-service'>
2826
<img title="Share on Facebook" src="https://user-images.githubusercontent.com/50652676/62817743-4f64cb80-bb59-11e9-90c7-b057252ded50.png" />
2927
</a>
28+
<a href='https://www.instagram.com/cloud_drove?igsh=cHJqaDY3bGtnYmh3' title="Follow On Instagram">
29+
<img src="https://github.com/gauravghongde/social-icons/blob/master/SVG/Color/Instagram.svg" width="23" height="23" />
30+
</a>
3031
<a href='https://www.linkedin.com/shareArticle?mini=true&title=Terraform+AZURE+APP+SERVICE&url=https://github.com/clouddrove/terraform-azure-app-service'>
3132
<img title="Share on LinkedIn" src="https://user-images.githubusercontent.com/50652676/62817742-4e339e80-bb59-11e9-87b9-a1f68cae1049.png" />
3233
</a>
@@ -38,166 +39,131 @@
3839
<hr>
3940

4041

41-
We eat, drink, sleep and most importantly love **DevOps**. We are working towards strategies for standardizing architecture while ensuring security for the infrastructure. We are strong believer of the philosophy <b>Bigger problems are always solved by breaking them into smaller manageable problems</b>. Resonating with microservices architecture, it is considered best-practice to run database, cluster, storage in smaller <b>connected yet manageable pieces</b> within the infrastructure.
42+
We are a group of DevOps engineers & architects, joining hands in this ever evolving digital landscape. With our strong belief in Automation; just like microservices, always on the lookout to split the the infrastructure into smaller connected resources (database, cluster and more) which could be standardized, are manageable, scalable, secure & follow industry best practices.
43+
4244

43-
This module is basically combination of [Terraform open source](https://www.terraform.io/) and includes automatation tests and examples. It also helps to create and improve your infrastructure with minimalistic code instead of maintaining the whole infrastructure code yourself.
45+
This module includes Terraform open source, examples, and automation tests (for better understanding), which would help you create and improve your infrastructure with minimalistic coding.
4446

45-
We have [*fifty plus terraform modules*][terraform_modules]. A few of them are comepleted and are available for open source usage while a few others are in progress.
4647

4748

4849

4950

50-
## Prerequisites
5151

52-
This module has a few dependencies:
5352

54-
- [Terraform 1.x.x](https://learn.hashicorp.com/terraform/getting-started/install.html)
55-
- [Go](https://golang.org/doc/install)
56-
- [github.com/stretchr/testify/assert](https://github.com/stretchr/testify)
57-
- [github.com/gruntwork-io/terratest/modules/terraform](https://github.com/gruntwork-io/terratest)
53+
54+
## Examples
55+
56+
**IMPORTANT:** Since the master branch used in source varies based on new modifications, we recommend using the [release versions](https://github.com/clouddrove/terraform-azure-app-service/releases).
57+
58+
📌 For additional usage examples, check the complete list under [`examples/`](./examples) directory.
59+
60+
61+
62+
## Inputs and Outputs
63+
64+
Refer to complete documentation: [here](docs/io.md)
65+
66+
67+
<!--
68+
## Module Dependencies
69+
70+
This module has dependencies on:
71+
72+
- [Labels Module](https://github.com/clouddrove/terraform-aws-labels): Provides resource tagging.
73+
- [Security Groups Module](https://github.com/clouddrove/terraform-aws-security-group): Manage security groups
74+
- [KMS Module](https://github.com/clouddrove/terraform-aws-kms): Manage resource encryption
75+
76+
77+
-->
78+
79+
80+
81+
## 📑 Changelog
82+
83+
Refer [here](CHANGELOG.md).
84+
85+
86+
87+
88+
## ✨ Contributors
89+
90+
Big thanks to our contributors for elevating our project with their dedication and expertise! But, we do not wish to stop there, would like to invite contributions from the community in improving these projects and making them more versatile for better reach. Remember, every bit of contribution is immensely valuable, as, together, we are moving in only 1 direction, i.e. forward.
91+
92+
<a href="https://github.com/clouddrove/terraform-azure-app-service/graphs/contributors">
93+
<img src="https://contrib.rocks/image?repo=clouddrove/terraform-azure-app-service&max" />
94+
</a>
95+
<br>
96+
<br>
97+
98+
If you're considering contributing to our project, here are a few quick guidelines that we have been following (Got a suggestion? We are all ears!):
99+
100+
- **Fork the Repository:** Create a new branch for your feature or bug fix.
101+
- **Coding Standards:** You know the drill.
102+
- **Clear Commit Messages:** Write clear and concise commit messages to facilitate understanding.
103+
- **Thorough Testing:** Test your changes thoroughly before submitting a pull request.
104+
- **Documentation Updates:** Include relevant documentation updates if your changes impact it.
105+
58106

59107

60108

61109

62110

63111

64112

65-
## Examples
66113

67114

68-
**IMPORTANT:** Since the `master` branch used in `source` varies based on new modifications, we suggest that you use the release versions [here](https://github.com/clouddrove/terraform-azure-app-service/releases).
69-
70-
71-
### Simple Example
72-
Here is an example of how you can use this module in your inventory structure:
73-
#### Default App Service with NODE
74-
```hcl
75-
module "key_vault" {
76-
source = "clouddrove/app-service/azure"
77-
version = "1.0.0"
78-
enabled = true
79-
name = "app"
80-
environment = "test"
81-
label_order = ["name", "environment", ]
82-
resource_group_name = module.resource_group.resource_group_name
83-
location = module.resource_group.resource_group_location
84-
85-
service_plan = {
86-
kind = "Windows"
87-
size = "S1"
88-
tier = "Free"
89-
}
90-
91-
app_service_name = "test-app-service"
92-
enable_client_affinity = true
93-
enable_https = true
94-
95-
site_config = {
96-
use_32_bit_worker_process = true
97-
windows_fx_version = "node|18-lts"
98-
}
99-
100-
app_settings = {
101-
WEBSITE_NODE_DEFAULT_VERSION = "~16"
102-
}
103-
}
104-
```
105-
106-
107-
108-
109-
110-
111-
## Inputs
112-
113-
| Name | Description | Type | Default | Required |
114-
|------|-------------|------|---------|:--------:|
115-
| active\_directory\_auth\_setttings | Acitve directory authentication provider settings for app service | `any` | `{}` | no |
116-
| addon\_resource\_group\_name | The name of the addon vnet resource group | `string` | `""` | no |
117-
| addon\_vent\_link | The name of the addon vnet | `bool` | `false` | no |
118-
| addon\_virtual\_network\_id | The name of the addon vnet link vnet id | `string` | `""` | no |
119-
| app\_insights\_name | The Name of the application insights | `string` | `""` | no |
120-
| app\_service\_name | Specifies the name of the App Service. | `string` | `""` | no |
121-
| app\_settings | A key-value pair of App Settings. | `map(string)` | `{}` | no |
122-
| application\_insights\_enabled | Specify the Application Insights use for this App Service | `bool` | `true` | no |
123-
| application\_insights\_id | Resource ID of the existing Application Insights | `any` | `null` | no |
124-
| application\_insights\_type | Specifies the type of Application Insights to create. Valid values are `ios` for iOS, `java` for Java web, `MobileCenter` for App Center, `Node.JS` for Node.js, `other` for General, `phone` for Windows Phone, `store` for Windows Store and `web` for ASP.NET. | `string` | `"web"` | no |
125-
| connection\_strings | Connection strings for App Service | `list(map(string))` | `[]` | no |
126-
| default\_auth\_provider | The default provider to use when multiple providers have been set up. Possible values are `AzureActiveDirectory`, `Facebook`, `Google`, `MicrosoftAccount` and `Twitter` | `string` | `"AzureActiveDirectory"` | no |
127-
| disable\_ip\_masking | By default the real client ip is masked as `0.0.0.0` in the logs. Use this argument to disable masking and log the real client ip | `bool` | `false` | no |
128-
| enable\_auth\_settings | Specifies the Authenication enabled or not | `bool` | `false` | no |
129-
| enable\_client\_affinity | Should the App Service send session affinity cookies, which route client requests in the same session to the same instance? | `bool` | `false` | no |
130-
| enable\_client\_certificate | Does the App Service require client certificates for incoming requests | `bool` | `false` | no |
131-
| enable\_https | Can the App Service only be accessed via HTTPS? | `bool` | `false` | no |
132-
| enable\_private\_endpoint | enable or disable private endpoint to storage account | `bool` | `false` | no |
133-
| enable\_vnet\_integration | Manages an App Service Virtual Network Association | `bool` | `false` | no |
134-
| enabled | Set to false to prevent the module from creating any resources. | `bool` | `true` | no |
135-
| environment | Environment (e.g. `prod`, `dev`, `staging`). | `string` | `""` | no |
136-
| existing\_private\_dns\_zone | Name of the existing private DNS zone | `string` | `null` | no |
137-
| existing\_private\_dns\_zone\_resource\_group\_name | The name of the existing resource group | `string` | `""` | no |
138-
| identity\_ids | Specifies a list of user managed identity ids to be assigned | `any` | `null` | no |
139-
| integration\_subnet\_id | The resource ID of the subnet | `string` | `null` | no |
140-
| ips\_allowed | IPs restriction for App Service to allow specific IP addresses or ranges | `list(string)` | `[]` | no |
141-
| label\_order | Label order, e.g. sequence of application name and environment `name`,`environment`,'attribute' [`webserver`,`qa`,`devops`,`public`,] . | `list(any)` | `[]` | no |
142-
| location | Location where resource group will be created. | `string` | `null` | no |
143-
| managedby | ManagedBy, eg ''. | `string` | `""` | no |
144-
| name | Name (e.g. `app` or `cluster`). | `string` | `""` | no |
145-
| repository | Terraform current module repo | `string` | `""` | no |
146-
| resource\_group\_name | A container that holds related resources for an Azure solution | `string` | `""` | no |
147-
| retention\_in\_days | Specifies the retention period in days. Possible values are `30`, `60`, `90`, `120`, `180`, `270`, `365`, `550` or `730` | `number` | `90` | no |
148-
| service\_plan | Definition of the dedicated plan to use | <pre>object({<br> kind = string<br> size = string<br> capacity = optional(number)<br> tier = string<br> per_site_scaling = optional(bool)<br> })</pre> | n/a | yes |
149-
| site\_config | Site configuration for Application Service | `any` | `{}` | no |
150-
| storage\_mounts | Storage account mount points for App Service | `list(map(string))` | `[]` | no |
151-
| subnet\_id | The resource ID of the subnet | `string` | `null` | no |
152-
| subnet\_ids\_allowed | Allow Specific Subnets for App Service | `list(string)` | `[]` | no |
153-
| tags | A map of tags to add to all resources | `map(string)` | `{}` | no |
154-
| token\_store\_enabled | If enabled the module will durably store platform-specific security tokens that are obtained during login flows | `bool` | `false` | no |
155-
| unauthenticated\_client\_action | The action to take when an unauthenticated client attempts to access the app. Possible values are `AllowAnonymous` and `RedirectToLoginPage` | `string` | `"RedirectToLoginPage"` | no |
156-
| virtual\_network\_id | The name of the virtual network | `string` | `null` | no |
157-
158-
## Outputs
159-
160-
| Name | Description |
161-
|------|-------------|
162-
| custom\_domain\_verification\_id | An identifier used by App Service to perform domain ownership verification via DNS TXT record. |
163-
| default\_site\_hostname | The Default Hostname associated with the App Service - such as mysite.azurewebsites.net |
164-
| id | The ID of the App Service. |
165-
| maximum\_number\_of\_workers | The maximum number of workers supported with the App Service Plan's sku. |
166-
| outbound\_ip\_address\_list | A list of outbound IP addresses - such as ['52.23.25.3', '52.143.43.12'] |
167-
| outbound\_ip\_addresses | A comma separated list of outbound IP addresses - such as 52.23.25.3,52.143.43.12 |
168-
| possible\_outbound\_ip\_address\_list | A list of outbound IP addresses - such as ['52.23.25.3', '52.143.43.12', '52.143.43.17'] - not all of which are necessarily in use. Superset of outbound\_ip\_address\_list |
169-
| possible\_outbound\_ip\_addresses | A comma separated list of outbound IP addresses - such as 52.23.25.3,52.143.43.12,52.143.43.17 - not all of which are necessarily in use. Superset of outbound\_ip\_addresses |
170-
| service\_plan\_id | The ID of the App Service Plan component. |
171-
| site\_credential | A site\_credential block as defined below, which contains the site-level credentials used to publish to this App Service. |
172-
| source\_control | A source\_control block as defined below, which contains the Source Control information when scm\_type is set to LocalGit. |
173-
174-
175-
176-
177-
## Testing
178-
In this module testing is performed with [terratest](https://github.com/gruntwork-io/terratest) and it creates a small piece of infrastructure, matches the output like ARN, ID and Tags name etc and destroy infrastructure in your AWS account. This testing is written in GO, so you need a [GO environment](https://golang.org/doc/install) in your system.
179-
180-
You need to run the following command in the testing folder:
181-
```hcl
182-
go test -run Test
183-
```
184115

185116

186117

187118
## Feedback
188-
If you come accross a bug or have any feedback, please log it in our [issue tracker](https://github.com/clouddrove/terraform-azure-app-service/issues), or feel free to drop us an email at [[email protected]](mailto:[email protected]).
119+
Spot a bug or have thoughts to share with us? Let's squash it together! Log it in our [issue tracker](https://github.com/clouddrove/terraform-azure-app-service/issues), feel free to drop us an email at [[email protected]](mailto:[email protected]).
120+
121+
Show some love with a ★ on [our GitHub](https://github.com/clouddrove/terraform-azure-app-service)! if our work has brightened your day! – your feedback fuels our journey!
122+
123+
124+
## :rocket: Our Accomplishment
125+
126+
We have [*100+ Terraform modules*][terraform_modules] 🙌. You could consider them finished, but, with enthusiasts like yourself, we are able to ever improve them, so we call our status - improvement in progress.
127+
128+
- [Terraform Module Registry:](https://registry.terraform.io/namespaces/clouddrove) Discover our Terraform modules here.
129+
130+
- [Terraform Modules for AWS/Azure Modules:](https://github.com/clouddrove/toc) Explore our comprehensive Table of Contents for easy navigation through our documentation for modules pertaining to AWS, Azure & GCP.
131+
132+
- [Terraform Modules for Digital Ocean:](https://github.com/terraform-do-modules/toc) Check out our specialized Terraform modules for Digital Ocean.
133+
134+
135+
136+
137+
## Join Our Slack Community
138+
139+
Join our vibrant open-source slack community and embark on an ever-evolving journey with CloudDrove; helping you in moving upwards in your career path.
140+
Join our vibrant Open Source Slack Community and embark on a learning journey with CloudDrove. Grow with us in the world of DevOps and set your career on a path of consistency.
141+
142+
🌐💬What you'll get after joining this Slack community:
143+
144+
- 🚀 Encouragement to upgrade your best version.
145+
- 🌈 Learning companionship with our DevOps squad.
146+
- 🌱 Relentless growth with daily updates on new advancements in technologies.
147+
148+
Join our tech elites [Join Now][slack] 🚀
149+
150+
151+
## Explore Our Blogs
189152

190-
If you have found it worth your time, go ahead and give us a ★ on [our GitHub](https://github.com/clouddrove/terraform-azure-app-service)!
153+
Click [here][blog] :books: :star2:
191154

192-
## About us
155+
## Tap into our capabilities
156+
We provide a platform for organizations to engage with experienced top-tier DevOps & Cloud services. Tap into our pool of certified engineers and architects to elevate your DevOps and Cloud Solutions.
193157

194-
At [CloudDrove][website], we offer expert guidance, implementation support and services to help organisations accelerate their journey to the cloud. Our services include docker and container orchestration, cloud migration and adoption, infrastructure automation, application modernisation and remediation, and performance engineering.
158+
At [CloudDrove][website], has extensive experience in designing, building & migrating environments, securing, consulting, monitoring, optimizing, automating, and maintaining complex and large modern systems. With remarkable client footprints in American & European corridors, our certified architects & engineers are ready to serve you as per your requirements & schedule. Write to us at [[email protected]](mailto:[email protected]).
195159

196160
<p align="center">We are <b> The Cloud Experts!</b></p>
197161
<hr />
198-
<p align="center">We ❤️ <a href="https://github.com/clouddrove">Open Source</a> and you can check out <a href="https://github.com/clouddrove">our other modules</a> to get help with your new Cloud ideas.</p>
162+
<p align="center">We ❤️ <a href="https://github.com/clouddrove">Open Source</a> and you can check out <a href="https://registry.terraform.io/namespaces/clouddrove">our other modules</a> to get help with your new Cloud ideas.</p>
199163

200164
[website]: https://clouddrove.com
165+
[blog]: https://blog.clouddrove.com
166+
[slack]: https://www.launchpass.com/devops-talks
201167
[github]: https://github.com/clouddrove
202168
[linkedin]: https://cpco.io/linkedin
203169
[twitter]: https://twitter.com/clouddrove/

0 commit comments

Comments
 (0)