É possível definir variáveis de ambiente para fluxos de trabalho no momento da implantação. Por exemplo, é possível criar um fluxo de trabalho configurado dinamicamente dependendo do ambiente em que ele é implantado. Também é possível criar um fluxo de trabalho que pode ser reutilizado como modelo e configurado de acordo com as variáveis de ambiente mantidas separadamente.
As variáveis de ambiente são definidas como pares de string de chave e valor arbitrários que podem ser acessados pelo fluxo de trabalho no momento da execução. Eles são armazenados back-end de Workflows, tem escopo para a execução do fluxo de trabalho e são imutáveis durante a execução de um fluxo de trabalho.
Todas as variáveis de ambiente estão vinculadas a uma implantação de um fluxo de trabalho e podem só pode ser definido ou alterado com uma implantação. Criar ou mudar um ambiente requer uma implantação bem-sucedida. Se uma implantação falhar por algum motivo, todas as mudanças feitas nas variáveis de ambiente não serão aplicadas.
É possível adicionar, atualizar ou remover variáveis de ambiente definidas pelo usuário usando a CLI do Google Cloud.
Nomes reservados
As variáveis de ambiente integradas definidas para fluxos de trabalho são reservadas e não podem ser definidas.
Não é possível usar o seguinte ao definir variáveis de ambiente para fluxos de trabalho:
Chave | Descrição |
---|---|
Vazio ('' ) |
As chaves não podem ser uma string vazia. |
GOOGLE_ |
As chaves não podem conter o prefixo GOOGLE_ . |
WORKFLOWS_ |
As chaves não podem conter o prefixo WORKFLOWS_ . |
Defina as variáveis de ambiente
É possível definir novas variáveis ou substituir as atuais ao implantar um fluxo de trabalho. Para fazer outras alterações, consulte as seções a seguir: Atualize as variáveis de ambiente.
Console
No console do Google Cloud, acesse a página Fluxos de trabalho.
Na página Fluxos de trabalho, clique em
Criar.Na página Criar fluxo de trabalho, preencha os campos apropriados para configurar a definição do fluxo de trabalho.
Na seção Variáveis de ambiente (opcional), clique em Adicionar variável.
No campo Nome 1, especifique o nome da variável.
No campo Valor 1, especifique o valor da variável.
Para adicionar outra variável, clique em Adicionar variável.
Clique em Próxima.
Depois de definir o fluxo de trabalho, clique em Implantar para implantar.
gcloud
Para definir uma variável de ambiente, use a sinalização --set-env-vars
:
gcloud workflows deploy WORKFLOW_NAME \ --set-env-vars KEY1=VALUE1
Substitua:
WORKFLOW_NAME
: o ID do fluxo de trabalho.KEY1=VALUE1
: o nome da variável de ambiente e o valor correspondente, por exemplo,MONTH=January
.
Terraform
Para criar um fluxo de trabalho, use o
recurso google_workflows_workflow
e modifique o arquivo main.tf
, conforme mostrado no exemplo. Para mais informações,
ver
Criar um fluxo de trabalho usando o Terraform.
Use o argumento user_env_vars
para associar uma variável de ambiente à
revisão do fluxo de trabalho.
Para saber como aplicar ou remover uma configuração do Terraform, consulte Comandos básicos do Terraform.
Defina diversas variáveis de ambiente
Para definir várias variáveis de ambiente, use uma lista separada por vírgulas:
gcloud workflows deploy WORKFLOW_NAME \ --set-env-vars KEY1=VALUE1,KEY2=VALUE2
Escape de caracteres de vírgula
Como o caractere de vírgula (,
) é usado para delimitar variáveis de ambiente, se
os valores da variável incluírem vírgulas, especifique um caractere delimitador
diferente, por exemplo, @
:
gcloud workflows deploy WORKFLOW_NAME \ --set-env-vars ^@^KEY1=VALUE1,VALUE2,VALUE3@KEY2=VALUE2
Armazenar variáveis em um arquivo
Para armazenar suas variáveis em um arquivo (por exemplo, no controle de origem), use um
arquivo YAML e a flag --env-vars-file
:
gcloud workflows deploy WORKFLOW_NAME \ --env-vars-file FILE_PATH
Substitua FILE_PATH
pelo caminho para um arquivo YAML local.
que lista as definições das variáveis de ambiente. Observe que o
nomes e valores de variáveis devem ser strings. Todas as variáveis de ambiente atuais
são removidos pelo Workflows antes das novas variáveis de ambiente
forem adicionados.
Por exemplo, o conteúdo do arquivo YAML pode ser o seguinte:
KEY1: "value1" KEY2: "value2"
Para mais informações sobre o comando deploy
, consulte
gcloud workflows deploy
.
Acessar variáveis de ambiente
Para acessar uma variável de ambiente, faça uma chamada para o
função sys.get_env()
em uma
, passando o nome da variável de ambiente como um parâmetro. O
da variável de ambiente precisa ser transmitido como uma string.
Por exemplo, o fluxo de trabalho a seguir atribui o valor do ambiente
variável KEY1
para uma variável de fluxo de trabalho chamada keyValue
e, em seguida, gera essa variável
:
main: steps: - init: assign: - keyValue: ${sys.get_env("KEY1")} - returnResult: return: ${keyValue}
Atualizar variáveis de ambiente
É possível atualizar variáveis de ambiente definidas pelo usuário para fluxos de trabalho atuais. Isso é uma abordagem não destrutiva que altera ou adiciona variáveis de ambiente, mas não exclui variáveis.
Console
No console do Google Cloud, abra a página Workflows.
Clique no nome do fluxo de trabalho que você quer atualizar.
A página Detalhes do fluxo de trabalho é exibida.
Para editar uma variável de ambiente, faça o seguinte:
Clique na guia Details.
- Ao lado de Variáveis de ambiente, clique no ícone .
- Faça suas alterações.
- Para implantar o fluxo de trabalho atualizado, clique em Salvar.
Clique em
Editar.- Na seção Variáveis de ambiente (opcional), configure mudanças.
- Para implantar o fluxo de trabalho atualizado, clique em Próxima e em Implantar.
gcloud
Para atualizar uma variável, use a sinalização --update-env-vars
:
gcloud workflows deploy WORKFLOW_NAME \ --update-env-vars KEY1=VALUE1
Para atualizar várias variáveis de ambiente, use uma lista separada por vírgulas:
gcloud workflows deploy WORKFLOW_NAME \ --update-env-vars KEY1=VALUE1,KEY2=VALUE2
Excluir variáveis de ambiente
É possível excluir variáveis de ambiente definidas pelo usuário para fluxos de trabalho atuais.
Console
No console do Google Cloud, abra a página Workflows.
Clique no nome do fluxo de trabalho que você quer atualizar.
A página Detalhes do fluxo de trabalho é exibida.
Para excluir uma variável de ambiente existente, siga um destes procedimentos:
Clique na guia Details.
- Clique na opção :
- Ao lado da variável de ambiente que você quer excluir, clique no botão ícone.
- Para implantar o fluxo de trabalho atualizado, clique em Salvar.
Clique em
Editar.- Ao lado da variável de ambiente que você quer excluir, clique no ícone .
- Para implantar o fluxo de trabalho atualizado, clique em Próxima e em Implantar.
gcloud
Se você quiser remover seletivamente as variáveis de ambiente, use a
flag --remove-env-vars
:
gcloud workflows deploy WORKFLOW_NAME \ --remove-env-vars KEY1,KEY2
Também é possível apagar todas as variáveis de ambiente definidas anteriormente com a sinalização --clear-env-vars
:
gcloud workflows deploy WORKFLOW_NAME \ --clear-env-vars
Práticas recomendadas
Como prática recomendada, recomendamos que você não dependa de ou modifique variáveis de ambiente que não foram definidas explicitamente. Se você modificar variáveis de ambiente diferentes daquelas que definiu explicitamente, isso poderá causar consequências não intencionais.
Como gerenciar secrets
As variáveis de ambiente podem ser usadas para configurar fluxos de trabalho, mas não são recomendadas como uma maneira de armazenar e consumir segredos, como credenciais de banco de dados ou chaves de API. Esses valores confidenciais devem ser armazenados separadamente de cada código-fonte e variáveis de ambiente que não sejam enviadas acidentalmente aos registros.
Para armazenar segredos, recomendamos consultar as práticas recomendadas para gerenciamento de segredos e seguir as instruções para usar o Secret Manager com fluxos de trabalho.
Convenções de nomenclatura
Como regra geral, recomendamos que as chaves de variável de ambiente sejam compostas apenas de
letras maiúsculas, dígitos e sublinhados (_
) e que não começam com
um dígito. Considere prefixar as variáveis de ambiente definidas pelo usuário com uma
chave exclusiva para evitar conflitos com outras variáveis.
Limites de tamanho
É possível definir no máximo 20 variáveis de ambiente definidas pelo usuário. Cada
string de definição (KEY=value
) é limitada a 4 KiB.
A seguir
- Executar um fluxo de trabalho.
- Transmitir argumentos de ambiente de execução em uma solicitação de execução.