O que é obrigatório e o que é um padrão
Três pilhas prontas para usar
O golden path parte de um template do Copier que oferece três pilhas: Java (Spring), Node e Python (FastAPI). A plataforma gera com ele o repositório de um produto novo, na pilha que a sua entrada do catálogo nomeia, com as raízes de Terraform, o Dockerfile e um pipeline feito dos componentes da plataforma. Cada mudança no template gera de novo os três exemplos e os compara com os que estão no repositório; o exemplo de cada pilha é compilado e testado sempre que a sua parte do template ou o pipeline muda.
Ou o seu próprio Dockerfile
Depois do primeiro commit, a aplicação é da equipe: ela pode mudar o Dockerfile ou adicionar outro, listado em .airframe/images.yaml. Cada FROM precisa nomear uma das imagens base da plataforma, fixada: hoje Node, Python, Java, Bun, PostgreSQL e Redis, e uma pilha que não tem a sua pede à plataforma que a adicione. O compilador confiável compila cada imagem listada na aprovação e a atesta, como faz com as do template. Os jobs de compilação e de testes da plataforma conhecem só as três pilhas do template: outra pilha não roda nenhum deles, e os seus merge requests não passam no controle de cobertura até que a sua entrada do catálogo reduza quality.minimum_coverage, o que um líder de equipe ou um líder de domínio aprova.
Os módulos ajudam; recursos diretos são permitidos
Os módulos de Terraform do golden path codificam os padrões, e uma raiz de produto pode declarar recursos próprios no lugar deles. O pacote de políticas avisa sobre cada recurso que uma raiz de produto declara fora de um módulo e pede um motivo no merge request; um aviso não impede nada. O que o pacote nega, ele nega seja qual for o jeito como o recurso foi escrito: um conjunto incompleto de rótulos, o acesso público, ou uma rede ou um projeto, que são da plataforma.
Um serviço é aprovado uma vez
Um serviço do Google Cloud além dos que todo projeto de produto recebe é aprovado uma vez, como uma entrada na lista de serviços aprovados do catálogo, pela equipe de plataforma. Depois, qualquer produto pode declará-lo na sua entrada: um líder de domínio aprova a declaração (a equipe de plataforma o substitui quando o líder não tem conta), e a fábrica de projetos habilita a API do serviço nos projetos faturados do produto e concede os seus papéis só às identidades de apply desse produto. O Memorystore for Redis é o primeiro.