Closed afonsoaugusto closed 3 years ago
@gomex, @somatorio e @rehzende Estava pensando aqui o escopo desde modulo.
Quando falamos no GCP, ele tem a organização e o projeto. Na organization definimos as api que são habilitadas, billing e organização por exemplo.
E o google_compute_network é a VPC propriamente dito e ele recebe um projeto como base.
Eu ainda estou olhando, mas eu com uma conta grauita (ainda não ativa com um cartão de credito) não tenho uma organização. Vou ativar um cadastro meu no gcp para verificar.
Mas estou mais tendencioso a falarmos que o groundwork tbm contemple o projeto + newtork, e não somente a network
ps: Eu peguei as imagens do modulos do terraform-google-modules só para exemplo msm.
Eu realizei o setup inicial dos $300 por 90 dias do trial. Após realizar o setup com o cartão de credito eu vou precisar fazer todos esses passos para ter uma organization:
Neste caso é necessário ter um domínio para registrar uma organization.
@gomex, fiz mais alguns testes. Eu tenho um dominio e assim eu criei uma organization com ele. Aconteceu que essa organization caiu como um conta nova do GCP e não se associou a essa conta trial. Portanto, terei assinar novamente o Trial do GCP nessa nova conta.
Em reunião no dia 15/06 identificamos o desenho abaixo que será anexado pelo @Rehzende que é interessante que o modulo groundwork seja um modulo que implementa outros modulos.
Assim teremos o modulo de network para o gcp (vpc) e posteriormente teremos o modulo de Projetos. Sendo que o modulo de Projeto será opicional a execução.
Assim, também abrimos margem para uma implementação futura neste modulo do mesmo ser multi-account. Podendo ter uma variável indicando qual a implementação que será utilizada.
Os modulos serão chamados:
Exemplos futuros
Eu gostei do modelo, mas uma coisa que seria bem legal é que seja bem simples de consumir o módulo groundwork. Tipo:
module "observabilidade" { source = source_aqui name = blabla feature_flag_de_alguma_funcionalidade = true }
A idéia é que a implementação mesmo esteja no módulo. O como fazer. Quem consome o módulo, ainda mais do groundwork, não precisa ter muita flexibilidade não.
Conforme alinhado na implementado do projeto https://github.com/mentoriaiac/iac-modulo-rede-gcp e no desenho da solução https://github.com/mentoriaiac/iac/issues/4. O modulo do groundwork será a combinação de vários modulos. E o projeto irá criar o project no GCP para testar a si proprio e a combinação dos modulos implementados.
A ideia inicial modulo é fornecer todos os recursos compartilhados de um projeto no Google Cloud. Como recursos compartilhados em uma conta GCP, são os projetos e a network.
E portanto é necessário definir se o modulo irá considerar o projeto já criado, ou se vai cria-lo.