{"id":18624807,"url":"https://github.com/opszero/template-infra","last_synced_at":"2025-07-20T11:31:48.390Z","repository":{"id":42020520,"uuid":"482053945","full_name":"opszero/template-infra","owner":"opszero","description":null,"archived":false,"fork":false,"pushed_at":"2025-05-28T21:53:56.000Z","size":1391,"stargazers_count":1,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-06-03T19:20:06.704Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://opszero.com","language":"Jupyter Notebook","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/opszero.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null},"funding":{"github":["abhiyerra"],"custom":["https://www.opszero.com"]}},"created_at":"2022-04-15T18:45:41.000Z","updated_at":"2025-05-28T21:54:00.000Z","dependencies_parsed_at":"2024-04-01T09:23:58.947Z","dependency_job_id":"69b61f14-27ad-45b5-aa19-af0273e85b0e","html_url":"https://github.com/opszero/template-infra","commit_stats":null,"previous_names":[],"tags_count":0,"template":true,"template_full_name":null,"purl":"pkg:github/opszero/template-infra","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/opszero%2Ftemplate-infra","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/opszero%2Ftemplate-infra/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/opszero%2Ftemplate-infra/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/opszero%2Ftemplate-infra/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/opszero","download_url":"https://codeload.github.com/opszero/template-infra/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/opszero%2Ftemplate-infra/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":266117143,"owners_count":23879019,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-07T04:31:07.731Z","updated_at":"2025-07-20T11:31:48.368Z","avatar_url":"https://github.com/opszero.png","language":"Jupyter Notebook","funding_links":["https://github.com/sponsors/abhiyerra","https://www.opszero.com"],"categories":[],"sub_categories":[],"readme":"# Infra (Template)\n\n[![GitHub](https://img.shields.io/github/stars/opszero/template-infra?style=social)](https://github.com/opszero/template-infra)\n![GitHub Issues](https://img.shields.io/github/issues/opszero/template-infra)\n\nopsZero uses Infrastructure as Code to build all infrastructure. The directory\nstructure contains everything needed to run the entire Cloud infrastructure from\nDNS to IAM to the Cloud. The way different components are used is through\ndifferent terraform modules.\n\n## Structure\n\n- `dns`: DNS and Cloudflare Access\n  - [terraform-cloudflare-edge](https://github.com/opszero/terraform-aws-mrmgr). Configure IAM resources including Github OIDC, Gitlab OIDC, and IAM.\n- `identity`:\n  - Setting up\n- `monitoring`: Monitoring configuration\n  - [terraform-datadog-panopticon](https://github.com/opszero/terraform-datadog-panopticon): Datadog powered panopticon.\n- `environments`: Cloud Kubernetes Clusters, Common Cloud Terraform, Shared Terraform\n  - `\u003cenvironment\u003e`: Individual environments. e.g prod, dev, staging.\n    - Bastion\n      - [terraform-aws-bastion](https://github.com/opszero/terraform-aws-bastion). AWS Bastion / Instance with EC2 Instance Connect\n    - Kubernetes\n      - [terraform-aws-kubespot](https://github.com/opszero/terraform-aws-kubespot). AWS Configuration\n      - [terraform-helm-kubespot](https://github.com/opszero/terraform-helm-kubespot). Common Helm Charts.\n  - `shared/\u003cshared\u003e`: Shared Terraform ~modules~ used by environments. e.g S3 Bucket configuration\n  - `common/\u003ccommon\u003e`: Common Terraform ~resources~ used across environments. e.g ECR\n\n\n# Compliance\n\nTo enable the compliance for SOC2, CMMC, HIPAA, ITAR, PCI-DSS please follow the\nfollowing:\n\n - AWS module\n   - `environments/common/compliance/aws-cloudtrail`: Setup Cloudtrail.\n   - `environments/common/complaince/aws-elb`: Add monitoring to ELBs.\n   - `environments/common/compliance/aws-guardduty`: Enable the Intrusion Detection System.\n\n - `bin/aws-log-group-retention-update.py --profile \u003caccount\u003e --region us-west-2`: Update the AWS Retention period to 365 days.\n\n\n# Tools \u0026 Setup\n\n```\nbrew install kubectl kubernetes-helm awscli terraform azure-cli\n```\n\n## Makefile\n\n- `make fmt`: Run `terraform fmt`\n\n\n## Modules\n\n - DevOps\n   - Github Actions\n     - [actions-cloudflare-dns](https://github.com/opszero/actions-cloudflare-dns)\n     - [actions-deploytag](https://github.com/opszero/actions-deploytag)\n     - [actions-deploytag-cleanup](https://github.com/opszero/actions-deploytag-cleanup)\n     - [flowtune](https://github.com/opszero/flowtune)\n     - [flowtune-runner-images](https://github.com/opszero/flowtune-runner-images)\n     - [tiphys](https://github.com/opszero/tiphys)\n   - Cloud\n     - [wintune](https://github.com/opszero/wintune)\n     - [nixtune](https://github.com/opszero/nixtune)\n     - [opshell](https://github.com/opszero/opshell)\n     - [terraform-aws-cloudflare-security-group](https://github.com/opszero/terraform-aws-cloudflare-security-group)\n     - [terraform-aws-eks-efs](https://github.com/opszero/terraform-aws-eks-efs)\n     - [terraform-aws-elb-cloudwatch](https://github.com/opszero/terraform-aws-elb-cloudwatch)\n     - [terraform-aws-github-security-group](https://github.com/opszero/terraform-aws-github-security-group)\n     - [terraform-aws-instance](https://github.com/opszero/terraform-aws-instance)\n     - [terraform-aws-kubespot](https://github.com/opszero/terraform-aws-kubespot)\n     - [terraform-aws-mongodbatlas](https://github.com/opszero/terraform-aws-mongodbatlas)\n     - [terraform-aws-mrmgr](https://github.com/opszero/terraform-aws-mrmgr)\n     - [terraform-aws-rds-cross-region-backup](https://github.com/opszero/terraform-aws-rds-cross-region-backup)\n     - [terraform-aws-redshift](https://github.com/opszero/terraform-aws-redshift)\n     - [terraform-aws-ssm](https://github.com/opszero/terraform-aws-ssm)\n     - [terraform-cloudflare-domain](https://github.com/opszero/terraform-cloudflare-domain)\n     - [terraform-datadog-panopticon](https://github.com/opszero/terraform-datadog-panopticon)\n     - [terraform-github-mrmgr](https://github.com/opszero/terraform-github-mrmgr)\n     - [terraform-helm-aws-vault](https://github.com/opszero/terraform-helm-aws-vault)\n     - [terraform-helm-kubespot](https://github.com/opszero/terraform-helm-kubespot)\n     - [terraform-kubernetes-socat](https://github.com/opszero/terraform-kubernetes-socat)\n     - [terraform-template](https://github.com/opszero/terraform-template)\n     - [terraform-azuread-mrmgr](https://github.com/opszero/terraform-azuread-mrmgr)\n     - [terraform-azurerm-kubespot](https://github.com/opszero/terraform-azurerm-kubespot)\n     - [terraform-google-kubespot](https://github.com/opszero/terraform-google-kubespot)\n     - [terraform-google-mrmgr](https://github.com/opszero/terraform-google-mrmgr)\n - DataOps\n   - [airbase](https://github.com/opszero/airbase)\n   - [terraform-aws-airflow](https://github.com/opszero/terraform-aws-airflow)\n - Workflows\n   - [template-aws-lambda-django](https://github.com/opszero/template-aws-lambda-django)\n   - [template-aws-lambda-flask](https://github.com/opszero/template-aws-lambda-flask)\n   - [template-azure-functions-django](https://github.com/opszero/template-azure-functions-django)\n   - [template-helm-django](https://github.com/opszero/template-helm-django)\n   - [template-helm-jupyter-voila](https://github.com/opszero/template-helm-jupyter-voila)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopszero%2Ftemplate-infra","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fopszero%2Ftemplate-infra","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopszero%2Ftemplate-infra/lists"}