fun act()

in plugins/gradle/src/main/kotlin/io/kotless/plugin/gradle/tasks/gen/KotlessLocalGenerateTask.kt [41:71]


    fun act() {
        require(myKotless.config.cloud!!.type == CloudPlatform.AWS) { "Currently only local starts for AWS are supported" }

        myGenDirectory.clearDirectory()

        val infra = tf("infra") {
            terraform {
                required_version = myKotless.config.cloud!!.terraform.version
            }

            provider {
                region = "us-east-1"
                version = (myKotless.config.cloud as KotlessGradleConfig.CloudGradle.AWS).terraform.provider.version

                skip_credentials_validation = true
                skip_metadata_api_check = true
                skip_requesting_account_id = true

                endpoints {
                    val resultedMap = services.mapKeys { it.key.prefix }
                    resultedMap.forEach { (k, v) ->
                        Provider.Endpoints::class.memberProperties.filter {
                            it.name == k
                        }.forEach { (it as KMutableProperty<*>).setter.call(this, v) }
                    }
                }
            }
        }

        dumpGeneratedFiles(infra)
    }