From 4dcc76d7c9b7d619119963b523288a26f7894f3e Mon Sep 17 00:00:00 2001 From: sohanyadav Date: Tue, 23 Sep 2025 11:52:48 +0530 Subject: [PATCH 1/2] update tag --- example/basic/example.tf | 2 +- example/complete/example.tf | 2 +- example/only_rules/example.tf | 2 +- example/prefix_list/example.tf | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/example/basic/example.tf b/example/basic/example.tf index 24238f2..cf2a8cb 100644 --- a/example/basic/example.tf +++ b/example/basic/example.tf @@ -6,7 +6,7 @@ provider "aws" { ## VPC Module Call. ##----------------------------------------------------------------------------- module "vpc" { - source = "git@github.com:opszero/terraform-aws-vpc?ref=v1.0.1" + source = "git::https://github.com/opszero/terraform-aws-vpc.git?ref=v1.0.1" name = "test" cidr_block = "10.0.0.0/16" } diff --git a/example/complete/example.tf b/example/complete/example.tf index 3469167..1667428 100644 --- a/example/complete/example.tf +++ b/example/complete/example.tf @@ -6,7 +6,7 @@ provider "aws" { ## VPC Module Call. ##----------------------------------------------------------------------------- module "vpc" { - source = "git@github.com:opszero/terraform-aws-vpc?ref=v1.0.1" + source = "git::https://github.com/opszero/terraform-aws-vpc.git?ref=v1.0.1" name = "test" cidr_block = "10.0.0.0/16" } diff --git a/example/only_rules/example.tf b/example/only_rules/example.tf index d30dba8..bb001a6 100644 --- a/example/only_rules/example.tf +++ b/example/only_rules/example.tf @@ -6,7 +6,7 @@ provider "aws" { ## VPC Module Call. ##----------------------------------------------------------------------------- module "vpc" { - source = "git@github.com:opszero/terraform-aws-vpc?ref=v1.0.1" + source = "git::https://github.com/opszero/terraform-aws-vpc.git?ref=v1.0.1" name = "test" cidr_block = "10.0.0.0/16" } diff --git a/example/prefix_list/example.tf b/example/prefix_list/example.tf index 2968e73..013d5b7 100644 --- a/example/prefix_list/example.tf +++ b/example/prefix_list/example.tf @@ -6,7 +6,7 @@ provider "aws" { ## VPC Module Call. ##----------------------------------------------------------------------------- module "vpc" { - source = "git@github.com:opszero/terraform-aws-vpc?ref=v1.0.1" + source = "git::https://github.com/opszero/terraform-aws-vpc.git?ref=v1.0.1" name = "test" cidr_block = "10.0.0.0/16" } From 3cc31ae1882d0ad980a05469aa23640da79b39a0 Mon Sep 17 00:00:00 2001 From: sohanyadav Date: Tue, 23 Sep 2025 16:21:00 +0530 Subject: [PATCH 2/2] update tag --- .github/FUNDING.yml | 13 +++++ .github/dependabot.yml | 23 +++++++++ .github/pull_request_template.md | 22 ++++++++ .github/workflows/pre-commit.yml | 15 ++++-- .github/workflows/tf-lint.yml | 6 +-- .github/workflows/tfdocs.yml | 21 ++++++++ .github/workflows/tfsec.yml | 2 +- .terraform-docs.yml | 48 +++++++++++++++++ README.md | 88 +++++++++++++++++++------------- SUPPORT | 31 +++++++++++ usage.md | 0 11 files changed, 227 insertions(+), 42 deletions(-) create mode 100644 .github/FUNDING.yml create mode 100644 .github/dependabot.yml create mode 100644 .github/pull_request_template.md create mode 100644 .github/workflows/tfdocs.yml create mode 100644 .terraform-docs.yml create mode 100644 SUPPORT create mode 100644 usage.md diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml new file mode 100644 index 0000000..f40de5f --- /dev/null +++ b/.github/FUNDING.yml @@ -0,0 +1,13 @@ +# These are supported funding model platforms + +github: [abhiyerra] +# patreon: # Replace with a single Patreon username +# open_collective: # Replace with a single Open Collective username +# ko_fi: # Replace with a single Ko-fi username +# tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel +# community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry +# liberapay: # Replace with a single Liberapay username +# issuehunt: # Replace with a single IssueHunt username +# otechie: # Replace with a single Otechie username +# lfx_crowdfunding: # Replace with a single LFX Crowdfunding project-name e.g., cloud-foundry +custom: ["https://www.opszero.com"] diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 0000000..04d3418 --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,23 @@ +# To get started with Dependabot version updates, you'll need to specify which +# package ecosystems to update and where the package manifests are located. +# Please see the documentation for all configuration options: +# https://docs.github.com/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file + +version: 2 +updates: + - package-ecosystem: "terraform" + directory: "/" + schedule: + interval: "weekly" + - package-ecosystem: "github-actions" + directory: "/" + schedule: + interval: "weekly" + - package-ecosystem: "npm" + directory: "/" + schedule: + interval: "weekly" + - package-ecosystem: "pip" + directory: "/" + schedule: + interval: "weekly" \ No newline at end of file diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md new file mode 100644 index 0000000..c3abef9 --- /dev/null +++ b/.github/pull_request_template.md @@ -0,0 +1,22 @@ +Closes # . + +# Code Checklist + +Ensure the following tasks are completed. + +- [ ] Is dependencies added with `poetry add`? +- [ ] Is the README.md updated? +- [ ] Are tests included? + - [ ] Are the tests running? +- [ ] Are the names of the files correct? +- [ ] Add PR/Issue to opsZero Project and set to `Review` column + +# Reviewer Checklist + +- [ ] Go through https://docs.opszero.com/intro.html#pull-request-checklist + +# Business Checklist + +- [ ] Is the marketing landing page updated? +- [ ] Is the sales proposal updated? +- [ ] Is the documentation updated \ No newline at end of file diff --git a/.github/workflows/pre-commit.yml b/.github/workflows/pre-commit.yml index 598bb91..9df5424 100644 --- a/.github/workflows/pre-commit.yml +++ b/.github/workflows/pre-commit.yml @@ -9,6 +9,15 @@ jobs: pre-commit: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 - - uses: actions/setup-python@v3 - - uses: pre-commit/action@v3.0.0 \ No newline at end of file + - uses: actions/checkout@v4 + + - uses: actions/setup-python@v5 + with: + python-version: "3.x" + + - name: Setup Terraform + uses: hashicorp/setup-terraform@v3 + with: + terraform_version: 1.9.8 + + - uses: pre-commit/action@v3.0.1 diff --git a/.github/workflows/tf-lint.yml b/.github/workflows/tf-lint.yml index 158928f..875908c 100644 --- a/.github/workflows/tf-lint.yml +++ b/.github/workflows/tf-lint.yml @@ -9,16 +9,16 @@ jobs: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v5 name: Checkout source code - - uses: actions/cache@v3 + - uses: actions/cache@v4 name: Cache plugin dir with: path: ~/.tflint.d/plugins key: ubuntu-latest-tflint-${{ hashFiles('.tflint.hcl') }} - - uses: terraform-linters/setup-tflint@v3 + - uses: terraform-linters/setup-tflint@v5 name: Setup TFLint with: tflint_version: v0.44.1 diff --git a/.github/workflows/tfdocs.yml b/.github/workflows/tfdocs.yml new file mode 100644 index 0000000..44b93b1 --- /dev/null +++ b/.github/workflows/tfdocs.yml @@ -0,0 +1,21 @@ +name: Generate terraform docs +on: [push] + +jobs: + docs: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v5 + with: + ref: main + + - name: Render terraform docs inside the README.md and push changes back to PR branch + uses: terraform-docs/gh-actions@v1.4.1 + with: + working-dir: . + config-file: .terraform-docs.yml + output-file: README.md + output-method: inject + indention: 3 + git-push: true + git-commit-message: "terraform-docs: automated action" \ No newline at end of file diff --git a/.github/workflows/tfsec.yml b/.github/workflows/tfsec.yml index ca444bd..c98df69 100644 --- a/.github/workflows/tfsec.yml +++ b/.github/workflows/tfsec.yml @@ -26,7 +26,7 @@ jobs: GITHUB_TOKEN: ${{ github.token }} - name: Terraform security scan Advanced - uses: triat/terraform-security-scan@v3.1.0 + uses: triat/terraform-security-scan@v3.2.0 if: github.event_name == 'pull_request' env: GITHUB_TOKEN: ${{ github.token }} diff --git a/.terraform-docs.yml b/.terraform-docs.yml new file mode 100644 index 0000000..4b6c69a --- /dev/null +++ b/.terraform-docs.yml @@ -0,0 +1,48 @@ +formatter: "markdown" + +version: "" + +recursive: + enabled: false + path: modules + +sections: + hide: [] + show: [] + +content: |- + {{ include "./usage.md" }} + {{ .Providers }} + {{ .Inputs }} + {{ .Resources }} + {{ .Outputs }} + {{ include "./SUPPORT" }} +output: + file: README.md + mode: inject + template: |- + + {{ .Content }} + +output-values: + enabled: false + from: "" + +sort: + enabled: true + by: name + +settings: + anchor: true + color: true + default: true + description: false + escape: true + hide-empty: false + html: true + indent: 2 + lockfile: true + read-comments: true + required: true + sensitive: true + type: true diff --git a/README.md b/README.md index 1b88f5b..7f00340 100644 --- a/README.md +++ b/README.md @@ -185,47 +185,12 @@ Your Name Replace **MIT** and **opsZero** with the appropriate license and your This project is licensed under the **MIT** License - see the [LICENSE](https://github.com/opszero/terraform-aws-security-group/blob/master/LICENSE) file for details. -## Requirements - -| Name | Version | -|------|---------| -| [terraform](#requirement\_terraform) | >= 1.13.3 | -| [aws](#requirement\_aws) | >= 6.14.0 | ## Providers | Name | Version | |------|---------| | [aws](#provider\_aws) | >= 6.14.0 | - -## Modules - -No modules. - -## Resources - -| Name | Type | -|------|------| -| [aws_ec2_managed_prefix_list.prefix_list](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/ec2_managed_prefix_list) | resource | -| [aws_security_group.default](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/security_group) | resource | -| [aws_security_group_rule.existing_sg_egress_with_cidr_blocks](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/security_group_rule) | resource | -| [aws_security_group_rule.existing_sg_egress_with_prefix_list](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/security_group_rule) | resource | -| [aws_security_group_rule.existing_sg_egress_with_self](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/security_group_rule) | resource | -| [aws_security_group_rule.existing_sg_egress_with_source_sg_id](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/security_group_rule) | resource | -| [aws_security_group_rule.existing_sg_ingress_cidr_blocks](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/security_group_rule) | resource | -| [aws_security_group_rule.existing_sg_ingress_with_prefix_list](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/security_group_rule) | resource | -| [aws_security_group_rule.existing_sg_ingress_with_self](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/security_group_rule) | resource | -| [aws_security_group_rule.existing_sg_ingress_with_source_sg_id](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/security_group_rule) | resource | -| [aws_security_group_rule.new_sg_egress_with_cidr_blocks](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/security_group_rule) | resource | -| [aws_security_group_rule.new_sg_egress_with_prefix_list](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/security_group_rule) | resource | -| [aws_security_group_rule.new_sg_egress_with_self](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/security_group_rule) | resource | -| [aws_security_group_rule.new_sg_egress_with_source_sg_id](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/security_group_rule) | resource | -| [aws_security_group_rule.new_sg_ingress_with_cidr_blocks](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/security_group_rule) | resource | -| [aws_security_group_rule.new_sg_ingress_with_prefix_list](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/security_group_rule) | resource | -| [aws_security_group_rule.new_sg_ingress_with_self](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/security_group_rule) | resource | -| [aws_security_group_rule.new_sg_ingress_with_source_sg_id](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/security_group_rule) | resource | -| [aws_security_group.existing](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/security_group) | data source | - ## Inputs | Name | Description | Type | Default | Required | @@ -260,7 +225,29 @@ No modules. | [sg\_description](#input\_sg\_description) | Security group description. Defaults to Managed by Terraform. Cannot be empty string. NOTE: This field maps to the AWS GroupDescription attribute, for which there is no Update API. If you'd like to classify your security groups in a way that can be updated, use tags. | `string` | `null` | no | | [tags](#input\_tags) | Additional tags to apply to the security group | `map(string)` | `{}` | no | | [vpc\_id](#input\_vpc\_id) | The ID of the VPC that the instance security group belongs to. | `string` | `""` | no | +## Resources +| Name | Type | +|------|------| +| [aws_ec2_managed_prefix_list.prefix_list](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/ec2_managed_prefix_list) | resource | +| [aws_security_group.default](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/security_group) | resource | +| [aws_security_group_rule.existing_sg_egress_with_cidr_blocks](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/security_group_rule) | resource | +| [aws_security_group_rule.existing_sg_egress_with_prefix_list](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/security_group_rule) | resource | +| [aws_security_group_rule.existing_sg_egress_with_self](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/security_group_rule) | resource | +| [aws_security_group_rule.existing_sg_egress_with_source_sg_id](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/security_group_rule) | resource | +| [aws_security_group_rule.existing_sg_ingress_cidr_blocks](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/security_group_rule) | resource | +| [aws_security_group_rule.existing_sg_ingress_with_prefix_list](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/security_group_rule) | resource | +| [aws_security_group_rule.existing_sg_ingress_with_self](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/security_group_rule) | resource | +| [aws_security_group_rule.existing_sg_ingress_with_source_sg_id](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/security_group_rule) | resource | +| [aws_security_group_rule.new_sg_egress_with_cidr_blocks](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/security_group_rule) | resource | +| [aws_security_group_rule.new_sg_egress_with_prefix_list](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/security_group_rule) | resource | +| [aws_security_group_rule.new_sg_egress_with_self](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/security_group_rule) | resource | +| [aws_security_group_rule.new_sg_egress_with_source_sg_id](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/security_group_rule) | resource | +| [aws_security_group_rule.new_sg_ingress_with_cidr_blocks](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/security_group_rule) | resource | +| [aws_security_group_rule.new_sg_ingress_with_prefix_list](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/security_group_rule) | resource | +| [aws_security_group_rule.new_sg_ingress_with_self](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/security_group_rule) | resource | +| [aws_security_group_rule.new_sg_ingress_with_source_sg_id](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/security_group_rule) | resource | +| [aws_security_group.existing](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/security_group) | data source | ## Outputs | Name | Description | @@ -273,4 +260,35 @@ No modules. | [security\_group\_arn](#output\_security\_group\_arn) | IDs on the AWS Security Groups associated with the instance. | | [security\_group\_id](#output\_security\_group\_id) | IDs on the AWS Security Groups associated with the instance. | | [security\_group\_tags](#output\_security\_group\_tags) | A mapping of public tags to assign to the resource. | +# 🚀 Built by opsZero! + + + +Since 2016 [opsZero](https://opszero.com) has been providing Kubernetes +expertise to companies of all sizes on any Cloud. With a focus on AI and +Compliance we can say we seen it all whether SOC2, HIPAA, PCI-DSS, ITAR, +FedRAMP, CMMC we have you and your customers covered. + +We provide support to organizations in the following ways: + +- [Modernize or Migrate to Kubernetes](https://opszero.com/solutions/modernization/) +- [Cloud Infrastructure with Kubernetes on AWS, Azure, Google Cloud, or Bare Metal](https://opszero.com/solutions/cloud-infrastructure/) +- [Building AI and Data Pipelines on Kubernetes](https://opszero.com/solutions/ai/) +- [Optimizing Existing Kubernetes Workloads](https://opszero.com/solutions/optimized-workloads/) + +We do this with a high-touch support model where you: + +- Get access to us on Slack, Microsoft Teams or Email +- Get 24/7 coverage of your infrastructure +- Get an accelerated migration to Kubernetes + +Please [schedule a call](https://calendly.com/opszero-llc/discovery) if you need support. + +

+ +
+ + + +
\ No newline at end of file diff --git a/SUPPORT b/SUPPORT new file mode 100644 index 0000000..8fb6c2b --- /dev/null +++ b/SUPPORT @@ -0,0 +1,31 @@ +# 🚀 Built by opsZero! + + + +Since 2016 [opsZero](https://opszero.com) has been providing Kubernetes +expertise to companies of all sizes on any Cloud. With a focus on AI and +Compliance we can say we seen it all whether SOC2, HIPAA, PCI-DSS, ITAR, +FedRAMP, CMMC we have you and your customers covered. + +We provide support to organizations in the following ways: + +- [Modernize or Migrate to Kubernetes](https://opszero.com/solutions/modernization/) +- [Cloud Infrastructure with Kubernetes on AWS, Azure, Google Cloud, or Bare Metal](https://opszero.com/solutions/cloud-infrastructure/) +- [Building AI and Data Pipelines on Kubernetes](https://opszero.com/solutions/ai/) +- [Optimizing Existing Kubernetes Workloads](https://opszero.com/solutions/optimized-workloads/) + +We do this with a high-touch support model where you: + +- Get access to us on Slack, Microsoft Teams or Email +- Get 24/7 coverage of your infrastructure +- Get an accelerated migration to Kubernetes + +Please [schedule a call](https://calendly.com/opszero-llc/discovery) if you need support. + +

+ +
+ + + +
diff --git a/usage.md b/usage.md new file mode 100644 index 0000000..e69de29