Alterando o perfil de configuração do Quarkus
Tags: braziliandevs, ptbr, quarkus, java
Published: 2021-02-03 01:06:48

[Num post passado](https://dev.to/lucasscharf/configurando-sua-aplicacao-java-com-quarkus-configproperty-2h2c), nós já vimos bastante sobre como injetar configurações no Quarkus. Mas a parte de configuração do Quarkus é tão linda que deveria ser exposto num museu como o Louvre e dá vontade de falar bastante sobre ela. No post de hoje, nós vamos ver como alterar o Perfil de configuração.

#O que é esse tal de perfil de configuração?
Se você já leu o [outro post](https://dev.to/lucasscharf/configurando-sua-aplicacao-java-com-quarkus-configproperty-2h2c) e entendeu o que são os perfis de configuração, pode passar pro próximo tópico. Se você não leu e não vai ler, não se preocupe vou explicar de novo porque o̶ ̶e̶d̶i̶t̶o̶r̶ ̶m̶e̶ ̶o̶b̶r̶i̶g̶o̶u̶ ̶a̶ ̶t̶e̶r̶ ̶u̶m̶ ̶n̶ú̶m̶e̶r̶o̶ ̶m̶í̶n̶i̶m̶o̶ ̶d̶e̶ ̶p̶a̶l̶a̶v̶r̶a̶s̶ ̶n̶o̶ ̶p̶o̶s̶t̶ eu gosto muito de você <3

#O que faremos
Vamos reutilizar a classe ConfigResource do [post sobre @ConfigProperty](https://dev.to/lucasscharf/configurando-sua-aplicacao-java-com-quarkus-configproperty-2h2c) (é sério, vai lá, é um post bem legal), mas vamos adicionar configurações para serem utilizadas no ambiente de QA (que é um perfil diferente de test, prod ou dev). Depois disso, vamos chamar a nossa aplicação com o perfil de QA e vamos ver a magia acontecer.


![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/ipaqwfug1bptrcj4zgsw.gif)


#Hora da ação
Após pegar o de exemplo de configuração lá no github, nós vamos rodá-lo através do comando

```bash
mvn quarkus:dev
```

e acessar a página de configuração ``/config`` para ver as configurações salvas.

Nisso, vamos ter o seguinte resultado:

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/u1dxxxvxadwhbwypiy3f.png)

Agora, vamos alterar o arquivo application.properties e adicionar o seguinte trecho:

```properties
%test.config=Configuração simples de teste
%qa.config=Configuração simples de QA
%dev.config=Configuração simples em dev
```

Com isso, nós mudamos o valor da configuração para diferentes perfis. Quando estamos usando o ``quarkus:dev``, nós estamos com o perfil de dev. Se nós atualizarmos a nossa página, nós já vamos ver uma mensagem diferente:

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/jbz6e01bi0gzb327twj8.png)

Se fosse em produção (ou em teste, o resultado seria diferente). Aproveite para testar e ver a magia acontecer.

##Usando um perfil não padrão
Além de termos adicionado opções para perfis de teste e de desenvolvimento, nós também adicionamos um perfil de QA. Mas fica a dúvida, como fazer para ativar esse perfil?

Para fazer isso, basta passar a configuração -Dquarkus.profile.

Para rodar com o perfil de QA, basta usar o seguinte código

```bash
mvn quarkus:dev -Dprofile=QA
```

Com isso, o restultado final será:
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/g2ul6np5lklb0l9hcd2d.png)

#Considerações
Cada vez mais, gosto desse processo de compartilhar conhecimento e esse foi o meu primeiro post para adicionar algo que eu já falei num post passado. Estou todo bobo :3

Também aproveitei pra fazer algo mais simples e direto. Espero que tenham gostado.

Ah, e o código de hoje pode ser encontrado no [github](https://github.com/lucasscharf/blog-posts-code/tree/master/config-with-profile).