TDC - Feature Flags

Integrando o governo, conectando as pessoas.
Como evitar merge hell
com Feature Flags
Luiz Henrique Salazar
Software Developer
Agenda
Integrando o governo, conectando as pessoas.
1. Conceitos:
○ Feature Flags
○ Git Branching Strategies
○ Merge Hell
2. Motivação
3. Aplicação e Ferramentas
Feature Flag
“Feature Toggles (often also refered to
as Feature Flags) are a powerful
technique, allowing teams to modify
system behavior without changing code”
Martin Fowler
https:/
/www.martinfowler.com/articles/feature-toggles.html
Feature Flag
Feature Flag
Podem ser usadas para:
● Deploy de testes A/B;
● Funcionalidades beta;
● Redução de múltiplos deployments ou
rollback de funcionalidades;
● Minimizar falhas de releases com a liberação
de features para pequenos grupos de
usuários.
Git Branching Strategies
Git Flow
Git Branching Strategies
GitHub Flow
Git Branching Strategies
Híbrido:
● Git Flow + GitHub Flow
○ Branch develop
○ Branches de features criados a
partir da master
Merge Hell
Merge Hell
Motivação
Motivação
Demora na homologação
de novas features pelos
clientes
Branches de features
desatualizados
GitLab
● Feature Flags: foi incluída na versão do
Gitlab Community a partir da versão 13.5.
GitLab
● Feature Flags: usuários devem ter, pelo
menos, o perfil de Developer no projeto em
que deseja configurar.
GitLab + Unleash
● GitLab utiliza o Unleash como
serviço de feature flag.
GitLab + Unleash
● GitLab utiliza o Unleash como
serviço de feature flag.
GitLab + Unleash
Aplicação Frontend
● Proxy server (Unleash Proxy) para
intermediar as requisições.
Unleash Proxy
Unleash Proxy
Unleash Proxy
● Deploy no OKD: dockerStrategy
Unleash Proxy
Feature Flag Branching Strategy
Sistema de Recomendação
Feature “Flagged”
Production Ready?
Caveats
● Performance Unleash GitLab
○ 500 requests por minuto
○ Acoplado no servidor do GitLab
(self-managed)
● Alternativa externa ao GitLab
○ Unleash Server
○ Outros (Harness, Flagsmith, etc)
Contato
https:/
/www.linkedin.com/in/luizhsalazar/
luizhsalazar@gmail.com
lsalazar@ciasc.sc.gov.br
Integrando o governo, conectando as pessoas.
Obrigado!
Integrando o governo, conectando as pessoas.
1 von 28

Recomendados

Modelo de branches e GitFlow von
Modelo de branches e GitFlowModelo de branches e GitFlow
Modelo de branches e GitFlowJoão Pedro Benedetti Misturini
119 views11 Folien
Workshop sistema de versionamento de código - git von
Workshop  sistema de versionamento de código - gitWorkshop  sistema de versionamento de código - git
Workshop sistema de versionamento de código - gitThiago Filadelfo
769 views20 Folien
Migração SVN para GIT von
Migração SVN para GITMigração SVN para GIT
Migração SVN para GITDenis Santos
469 views17 Folien
Testes automatizados.pptx von
Testes automatizados.pptxTestes automatizados.pptx
Testes automatizados.pptxCarlos Gonzaga
33 views50 Folien
DevOps & Docker com a stack Microsoft von
DevOps & Docker com a stack MicrosoftDevOps & Docker com a stack Microsoft
DevOps & Docker com a stack MicrosoftGraziella Bonizi
271 views37 Folien
Linuxtips - a saideira von
Linuxtips - a saideiraLinuxtips - a saideira
Linuxtips - a saideiraTalita Bernardes Pereira
201 views21 Folien

Más contenido relacionado

Similar a TDC - Feature Flags

Developer Experience no Nubank von
Developer Experience no NubankDeveloper Experience no Nubank
Developer Experience no NubankLetticia Nicoli
288 views31 Folien
Git github tortoise git von
Git github tortoise gitGit github tortoise git
Git github tortoise gitmaxrosan
410 views26 Folien
GIT Básico von
GIT BásicoGIT Básico
GIT BásicoAndré Justi
1.1K views60 Folien
Projeto e Desenvolvimento de Software von
Projeto e Desenvolvimento de SoftwareProjeto e Desenvolvimento de Software
Projeto e Desenvolvimento de SoftwareAragon Vieira
179 views19 Folien
Análise sobre a utilização de frameworks em PHP: CakePHP, CodeIgniter e Zend von
Análise sobre a utilização de frameworks em PHP: CakePHP, CodeIgniter e ZendAnálise sobre a utilização de frameworks em PHP: CakePHP, CodeIgniter e Zend
Análise sobre a utilização de frameworks em PHP: CakePHP, CodeIgniter e ZendThiago Sinésio
11.5K views37 Folien
Método Ágil Scrum von
Método Ágil ScrumMétodo Ágil Scrum
Método Ágil ScrumFernando Vargas
502 views8 Folien

Similar a TDC - Feature Flags(20)

Git github tortoise git von maxrosan
Git github tortoise gitGit github tortoise git
Git github tortoise git
maxrosan410 views
Projeto e Desenvolvimento de Software von Aragon Vieira
Projeto e Desenvolvimento de SoftwareProjeto e Desenvolvimento de Software
Projeto e Desenvolvimento de Software
Aragon Vieira179 views
Análise sobre a utilização de frameworks em PHP: CakePHP, CodeIgniter e Zend von Thiago Sinésio
Análise sobre a utilização de frameworks em PHP: CakePHP, CodeIgniter e ZendAnálise sobre a utilização de frameworks em PHP: CakePHP, CodeIgniter e Zend
Análise sobre a utilização de frameworks em PHP: CakePHP, CodeIgniter e Zend
Thiago Sinésio11.5K views
Apresentação Gerpro von rafahreis
Apresentação GerproApresentação Gerpro
Apresentação Gerpro
rafahreis288 views
Sistema de Plugins do ExpressoV3. Não espere, faça o seu! von Flávio Lisboa
Sistema de Plugins do ExpressoV3. Não espere, faça o seu!Sistema de Plugins do ExpressoV3. Não espere, faça o seu!
Sistema de Plugins do ExpressoV3. Não espere, faça o seu!
Flávio Lisboa1.1K views
GLPI Network Suporte Profissional.pdf von DanielaBuxo
GLPI Network Suporte Profissional.pdfGLPI Network Suporte Profissional.pdf
GLPI Network Suporte Profissional.pdf
DanielaBuxo283 views
Apresentação - Software von matheusvetor
Apresentação - SoftwareApresentação - Software
Apresentação - Software
matheusvetor4.6K views
Git e boas praticas! von Vitor Silva
Git e boas praticas!Git e boas praticas!
Git e boas praticas!
Vitor Silva691 views
ERES 2018 - Microserviços: Desafios para Lidar com a Qualidade von André Abe Vicente
ERES 2018 - Microserviços: Desafios para Lidar com a QualidadeERES 2018 - Microserviços: Desafios para Lidar com a Qualidade
ERES 2018 - Microserviços: Desafios para Lidar com a Qualidade
André Abe Vicente118 views
Android DevConference - Automatizando testes sem sofrimento von iMasters
Android DevConference - Automatizando testes sem sofrimentoAndroid DevConference - Automatizando testes sem sofrimento
Android DevConference - Automatizando testes sem sofrimento
iMasters281 views

Último

MAPA - SAÚDE - FUNDAMENTOS DE FARMACOLOGIA - 54/2023 von
MAPA - SAÚDE - FUNDAMENTOS DE FARMACOLOGIA - 54/2023MAPA - SAÚDE - FUNDAMENTOS DE FARMACOLOGIA - 54/2023
MAPA - SAÚDE - FUNDAMENTOS DE FARMACOLOGIA - 54/2023AcademicaDlaUnicesum
6 views3 Folien
Conheça agora o UiPath Autopilot™ para o Studio.pdf von
Conheça agora o UiPath Autopilot™ para o Studio.pdfConheça agora o UiPath Autopilot™ para o Studio.pdf
Conheça agora o UiPath Autopilot™ para o Studio.pdfBrunaCavalcanti29
14 views8 Folien
DevFest2023-Pragmatismo da Internet das Coisas von
DevFest2023-Pragmatismo da Internet das CoisasDevFest2023-Pragmatismo da Internet das Coisas
DevFest2023-Pragmatismo da Internet das CoisasWalter Coan
35 views40 Folien
ProxySQL no MySQL: Apenas um load balancer? von
ProxySQL no MySQL: Apenas um load balancer?ProxySQL no MySQL: Apenas um load balancer?
ProxySQL no MySQL: Apenas um load balancer?Roberto Garcia de Bem
6 views62 Folien
VIRTUS 1.6 MSI.pdf von
VIRTUS 1.6 MSI.pdfVIRTUS 1.6 MSI.pdf
VIRTUS 1.6 MSI.pdfFbioVieira85
5 views13 Folien
TechConnection 2023 Floripa Azure Container Apps von
TechConnection 2023 Floripa Azure Container AppsTechConnection 2023 Floripa Azure Container Apps
TechConnection 2023 Floripa Azure Container AppsWalter Coan
6 views14 Folien

Último(8)

TDC - Feature Flags