diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS
new file mode 100644
index 0000000..92fe38b
--- /dev/null
+++ b/.github/CODEOWNERS
@@ -0,0 +1 @@
+* @caerulescens
diff --git a/.github/ISSUE_TEMPLATE/1-FEATURE-REQUEST.yaml b/.github/ISSUE_TEMPLATE/1-FEATURE-REQUEST.yaml
new file mode 100644
index 0000000..998acfb
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/1-FEATURE-REQUEST.yaml
@@ -0,0 +1,47 @@
+name: "💡 Feature Request"
+description: "Create a new ticket for a new feature request."
+title: "feat:
"
+labels:
+ - "enhancement"
+assignees:
+ - "caerulescens"
+body:
+ # Feature
+ - type: textarea
+ id: summary
+ attributes:
+ label: "Summary"
+ description: What feature would you like to add?
+ placeholder: ...
+ validations:
+ required: true
+
+ # Implementation
+ - type: textarea
+ id: implementation
+ attributes:
+ label: "Implementation"
+ description: How would the feature work in more detail?
+ placeholder: ...
+ validations:
+ required: true
+
+ # Drawbacks
+ - type: textarea
+ id: drawback
+ attributes:
+ label: "Drawbacks"
+ description: What drawbacks does this feature have?
+ placeholder: ...
+ validations:
+ required: false
+
+ # Questions
+ - type: textarea
+ id: question
+ attributes:
+ label: "Questions"
+ description: Are there any unsolved question related to the feature?
+ placeholder: ...
+ validations:
+ required: false
diff --git a/.github/ISSUE_TEMPLATE/2-BUG-REPORT.yaml b/.github/ISSUE_TEMPLATE/2-BUG-REPORT.yaml
new file mode 100644
index 0000000..b34be8d
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/2-BUG-REPORT.yaml
@@ -0,0 +1,97 @@
+name: "🐞 Bug Report"
+description: "Create a new issue for a bug."
+title: "fix: "
+labels:
+ - "bug"
+assignees:
+ - "caerulescens"
+body:
+ # Version
+ - type: textarea
+ id: version
+ attributes:
+ label: "Version"
+ description: Which version were you running?
+ placeholder: e.g. '0.1.0'
+ validations:
+ required: true
+
+ # Terragrunt Version
+ - type: textarea
+ id: terragrunt-version
+ attributes:
+ label: "Terragrunt version"
+ description: Which terragrunt version were you using?
+ placeholder: e.g. '0.67.16'
+ validations:
+ required: true
+
+ # Tofu Version
+ - type: textarea
+ id: tofu-version
+ attributes:
+ label: "Tofu version"
+ description: Which tofu version were you using?
+ placeholder: e.g. '1.8.3'
+ validations:
+ required: true
+
+ # Operating System
+ - type: dropdown
+ id: operating-system
+ attributes:
+ label: "Operating system"
+ description: Which operating system were you using?
+ multiple: false
+ options:
+ - Windows
+ - macOS
+ - GNU/Linux
+ validations:
+ required: true
+
+ # Description
+ - type: textarea
+ id: description
+ attributes:
+ label: "Description"
+ description: Provide details of the issue you encountered
+ placeholder: ...
+ validations:
+ required: true
+
+ # Reproduction
+ - type: textarea
+ id: reproduction
+ attributes:
+ label: "Reproduction"
+ description: Provide details on how to reproduce the issue
+ placeholder: |
+ #. Use config '...'
+ #. Run program '...'
+ #. See error '...'
+ render: bash
+ validations:
+ required: true
+
+ # Screenshots
+ - type: textarea
+ id: screenshot
+ attributes:
+ label: "Screenshots"
+ description: Provide any relevant screenshots
+ value: |
+ ![DESCRIPTION](LINK.png)
+ render: bash
+ validations:
+ required: false
+
+ # Logs
+ - type: textarea
+ id: log
+ attributes:
+ label: "Logs"
+ description: Provide any raw log output
+ render: bash
+ validations:
+ required: false
diff --git a/.github/ISSUE_TEMPLATE/config.yaml b/.github/ISSUE_TEMPLATE/config.yaml
new file mode 100644
index 0000000..3ba13e0
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/config.yaml
@@ -0,0 +1 @@
+blank_issues_enabled: false
diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md
new file mode 100644
index 0000000..e1375d0
--- /dev/null
+++ b/.github/PULL_REQUEST_TEMPLATE.md
@@ -0,0 +1,29 @@
+# Title
+
+
+## Description
+
+
+## Motivation and Context
+
+
+
+## How has this been tested?
+
+
+
+
+## Screenshots (if appropriate):
+
+## Types of changes
+
+- [ ] Bug fix (non-breaking change which fixes an issue)
+- [ ] New feature (non-breaking change which adds functionality)
+- [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
+
+## Checklist:
+
+
+- [ ] My code follows the code style of this project.
+- [ ] My change requires a change to the documentation.
+- [ ] I have updated the documentation accordingly.
diff --git a/.terraform-version b/.terraform-version
deleted file mode 100644
index fee0a27..0000000
--- a/.terraform-version
+++ /dev/null
@@ -1 +0,0 @@
-1.9.7
diff --git a/README.md b/README.md
index a4b13be..b318322 100644
--- a/README.md
+++ b/README.md
@@ -4,15 +4,13 @@ A [`terragrunt`](https://github.com/gruntwork-io/terragrunt) module for [`miniku
## Install
-| name |
-|-----------------------------------------------------------|
-| [docker](https://github.com/docker) |
-| [minikube](https://github.com/kubernetes/minikube) |
-| [kubectl](https://github.com/kubernetes/kubectl) |
-| [terragrunt](https://github.com/gruntwork-io/terragrunt) |
-| [terraform](https://github.com/hashicorp/terraform) |
-| [opentofu](https://github.com/opentofu/opentofu) |
-| [pre-commit](https://github.com/pre-commit/pre-commit) |
+| Name |
+|--------------------------------------------------------|
+| [docker](https://github.com/docker) |
+| [kubectl](https://github.com/kubernetes/kubectl) |
+| [minikube](https://github.com/kubernetes/minikube) |
+| [tenv](https://github.com/tofuutils/tenv) |
+| [pre-commit](https://github.com/pre-commit/pre-commit) |
```shell
pre-commit install
@@ -22,28 +20,55 @@ pre-commit install
Configure:
```shell
-cat < live/minikube/local/dev/default/docker/terraform.tfvars
+cat < ./live/cluster/docker/terraform.tfvars
minikube_clusters = {
"minikube": {
- "driver": "docker",
- "nodes": 3,
- "cpus": 4,
- "memory": "4096mb"
+ "driver": "docker"
+ "nodes": 3
+ "cpus": 2
+ "memory": "2048mb"
+ "disk_size": "65536mb",
+ "extra_disks": 0
}
}
EOF
```
-Create:
+Validate:
```shell
-terragrunt init --terragrunt-working-dir live/minikube/local/dev/default/docker
-terragrunt plan --terragrunt-working-dir live/minikube/local/dev/default/docker
-terragrunt apply --terragrunt-working-dir live/minikube/local/dev/default/docker
+terragrunt validate-inputs --terragrunt-working-dir live/dev/cluster
```
-Remove:
+Init:
```shell
-terragrunt destroy --terragrunt-working-dir live/minikube/local/dev/default/docker
+terragrunt init --terragrunt-working-dir live/dev/cluster
+```
+
+Plan:
+```shell
+terragrunt plan --terragrunt-working-dir live/dev/cluster
+```
+
+Apply:
+```shell
+terragrunt apply --terragrunt-working-dir live/dev/cluster
+```
+
+Destroy:
+```shell
+terragrunt destroy --terragrunt-working-dir live/dev/cluster
+```
+
+## Development
+
+Validate:
+```shell
+terragrunt hclvalidate
+```
+
+Format:
+```shell
+terragrunt hclfmt
```
Check:
diff --git a/live/_envcommon/minikube.hcl b/live/_common/minikube.hcl
similarity index 100%
rename from live/_envcommon/minikube.hcl
rename to live/_common/minikube.hcl
diff --git a/live/dev/cluster/terragrunt.hcl b/live/dev/cluster/terragrunt.hcl
new file mode 100644
index 0000000..13f3c94
--- /dev/null
+++ b/live/dev/cluster/terragrunt.hcl
@@ -0,0 +1,14 @@
+include "root" {
+ path = find_in_parent_folders()
+}
+
+include "common" {
+ path = "${dirname(find_in_parent_folders())}/_common/minikube.hcl"
+ expose = true
+}
+
+terraform {
+ source = "${include.common.locals.base_source_url}?ref=${include.common.locals.ref}"
+}
+
+inputs = {}
diff --git a/live/minikube/local/dev/default/docker/.terraform.lock.hcl b/live/minikube/local/dev/default/docker/.terraform.lock.hcl
deleted file mode 100644
index 1127207..0000000
--- a/live/minikube/local/dev/default/docker/.terraform.lock.hcl
+++ /dev/null
@@ -1,21 +0,0 @@
-# This file is maintained automatically by "tofu init".
-# Manual edits may be lost in future updates.
-
-provider "registry.opentofu.org/scott-the-programmer/minikube" {
- version = "0.4.0"
- constraints = ">= 0.3.10"
- hashes = [
- "h1:503dXFnKCuOCDmW4dEOEpNB4Jq7SaCOtGcej3tT/C5U=",
- "zh:0e98165e545b462cbc7f4e3466211e11501110116d6267ffa4e1e101a5b639bd",
- "zh:1c3e89cf19118fc07d7b04257251fc9897e722c16e0a0df7b07fcd261f8c12e7",
- "zh:43e5fa4ba912af382a1930d870dae500d92de99da203d5a1e26e877fb240a727",
- "zh:577c2138dc87072183488e984c737236dc03fc41b706838da6e2c7c952fc1217",
- "zh:6a0d327c5cfb6eca30481ba8b18a4002c4c9f2b72ba42a7adf4ed99d6a37d1ed",
- "zh:92db0672d58615b9581d865c694eebbc1814bb4c1af8d130d8bca6dee85352d7",
- "zh:d31aa717a19ca11d5e4d2029c83a930b77fa96579cee43ddd80e1b3f07439cff",
- "zh:d95bf62f9cd9e96ff1f1667fcaa0d383f897f34c14b4b7db7c59491c848c89f9",
- "zh:ec07fe88016f185fde6f5efef6e61054ea826ca2d836c6c492b4f85ebd7e2348",
- "zh:fc742f2997d64b8dd99e13e73b6b2a98c14f5571b3900139822536372f9d05f3",
- "zh:fd4a95de5a35db43848cbadf42e907c18358bb77a7399e7773da67854e47c7e5",
- ]
-}
diff --git a/live/minikube/local/dev/default/docker/terragrunt.hcl b/live/minikube/local/dev/default/docker/terragrunt.hcl
deleted file mode 100644
index 32fb122..0000000
--- a/live/minikube/local/dev/default/docker/terragrunt.hcl
+++ /dev/null
@@ -1,16 +0,0 @@
-include "root" {
- path = find_in_parent_folders()
-}
-
-include "envcommon" {
- path = "${dirname(find_in_parent_folders())}/_envcommon/minikube.hcl"
- expose = true
-}
-
-terraform {
- source = "${include.envcommon.locals.base_source_url}?ref=${include.envcommon.locals.ref}"
-}
-
-inputs = {
- driver = "docker"
-}
diff --git a/live/minikube/local/dev/default/profile.hcl b/live/minikube/local/dev/default/profile.hcl
deleted file mode 100644
index 5cdb455..0000000
--- a/live/minikube/local/dev/default/profile.hcl
+++ /dev/null
@@ -1,3 +0,0 @@
-locals {
- profile = "default"
-}
diff --git a/live/minikube/local/dev/environment.hcl b/live/minikube/local/dev/environment.hcl
deleted file mode 100644
index 33d8b31..0000000
--- a/live/minikube/local/dev/environment.hcl
+++ /dev/null
@@ -1,3 +0,0 @@
-locals {
- environment = "dev"
-}
diff --git a/live/minikube/local/region.hcl b/live/minikube/local/region.hcl
deleted file mode 100644
index 262d537..0000000
--- a/live/minikube/local/region.hcl
+++ /dev/null
@@ -1,3 +0,0 @@
-locals {
- region = "local"
-}
diff --git a/live/minikube/platform.hcl b/live/minikube/platform.hcl
deleted file mode 100644
index 3d47611..0000000
--- a/live/minikube/platform.hcl
+++ /dev/null
@@ -1,3 +0,0 @@
-locals {
- platform = "minikube"
-}
diff --git a/live/terragrunt.hcl b/live/terragrunt.hcl
index a2fc665..67d0826 100644
--- a/live/terragrunt.hcl
+++ b/live/terragrunt.hcl
@@ -1,21 +1,3 @@
-locals {
- # automatically load platform variables
- platform_vars = read_terragrunt_config(find_in_parent_folders("platform.hcl"))
+locals {}
- # automatically load region variables
- region_vars = read_terragrunt_config(find_in_parent_folders("region.hcl"))
-
- # automatically load environment variables
- environment_vars = read_terragrunt_config(find_in_parent_folders("environment.hcl"))
-
- # automatically load environment variables
- profile_vars = read_terragrunt_config(find_in_parent_folders("profile.hcl"))
-}
-
-# merge platform, region, environment, and profile vars
-inputs = merge(
- local.platform_vars.locals,
- local.region_vars.locals,
- local.environment_vars.locals,
- local.profile_vars.locals
-)
+inputs = {}