[Seção 4.21] Dúvidas sobre Modules - filename - variável var.files - #108
Replies: 3 comments 2 replies
-
@fernandomullerjr vamos lá: Dúvida 1 Exemplo: module.objects = {
"meu_site/index.html" = {
// aqui vai os outputs do módulo
},
"meu_site/error.html" = {
// aqui vai os outputs do módulo
},
} Aqui você pode ver todos os outputs. Se você olhar na documentação, a sintaxe para iterar sobre um map ou objeto é usando Ali, Dúvida 2 No trecho de código abaixo eu estou utilizando uma função do terraform para ler um diretório e retornar uma lista de arquivos encontrados.
É a partir do retorno desta função que o |
Beta Was this translation helpful? Give feedback.
-
Oi Cleber, boa noite. Obrigado pelo retorno. Ainda fiquei com algumas dúvidas sobre a segunda dúvida. Dúvida 2 Sobre a variável files, você menciona que:
Eu não consegui entender o final sobre o valor dado a variável var.files, porque a principio não é dado nenhum valor a ela. Único momento que vi algo com nome "files" receber algum valor, foi no atributo do module "website": Mas não consegui ver como ele popula o Consegue me ajudar nessa parte novamente, por favor? |
Beta Was this translation helpful? Give feedback.
-
Oi Cleber, boa tarde. Primeiro, muito obrigado, teus esclarecimentos ajudaram demais, esse segundo esclareceu 99% das dúvidas. Na estrutura do projeto, vem a raíz e depois as pastas ├── main.tf Só não entendi como a |
Beta Was this translation helpful? Give feedback.
-
Oi Cleber, boa noite!
Estou com 2 dúvidas sobre a aula 21, que trata sobre o assunto Modules, por volta dos 20min de aula.
Sobre o arquivo outputs da pasta s3_module, fiquei na dúvida como o Data Source "module.objects" é utilizado na expressão "for".
/s3_module/outputs.tf
-Trecho do código:
No caso o primeiro nome "filename" é só um nome para os valores que são trazidos pelo Data Source, certo? Só que aquele segundo "filename" ao final da
expressão "for", o que ele faz? Não entendi aonde exatamente diz para a expressão trazer só o filename do Data Source, visto que olhando a documentação da Terraform sobre o Data Source "aws_s3_bucket_object"
Não há alguma indicação deste "filename"
Consegue me explicar como é obtido o valor deste output files, por favor?
No arquivo main.tf do módulo s3_module existem alguns campos onde é usada a variável var.files
Verificando o arquivo variables.tf da pasta s3_module, essa variável var.files é iniciada com um valor default vazio.
Não consegui entender da onde o Terraform obtém o valor para a variável var.files que é usado no for_each e na no campo src do módulo objects.
Devido isto, não consegui entender como o for_each vai funcionar, porque em nenhum momento informei um valor para o var.files ou indiquei algum lugar para ele obter um valor.
Consegue me ajudar a entender melhor sobre como esta variável está sendo usada, por favor?
Arquivo de referência:
/s3_module/main.tf
Trecho de código:
Obrigado desde já!
Beta Was this translation helpful? Give feedback.
All reactions