Dojo :: Liquibase

12
São Paulo - Rio de Janeiro - Porto Alegre - São Leopoldo - Caxias do Sul Liquibase DOJO

Transcript of Dojo :: Liquibase

Page 1: Dojo :: Liquibase

São Paulo - Rio de Janeiro - Porto Alegre - São Leopoldo - Caxias do Sul

LiquibaseDOJO

Page 2: Dojo :: Liquibase

São Paulo - Rio de Janeiro - Porto Alegre - São Leopoldo - Caxias do Sul

DROPS

http://cwisoftware.github.io/drops/evolucao-de-banco-de-dados-na-integracao-

continua

Page 3: Dojo :: Liquibase

São Paulo - Rio de Janeiro - Porto Alegre - São Leopoldo - Caxias do Sul

Application Code

Como fazer isso para banco de dados?

Page 4: Dojo :: Liquibase

São Paulo - Rio de Janeiro - Porto Alegre - São Leopoldo - Caxias do Sul

• Gerenciar scripts

• Documentação

• Permitir branches e merges

• Evitar erros de execução de scripts

• Otimizar o deploy

• Facilitar o rollback

• Validações

• Regras por contexto

• Outras ferramentas

• Database novo ou existente

Liquibase

Page 5: Dojo :: Liquibase

São Paulo - Rio de Janeiro - Porto Alegre - São Leopoldo - Caxias do Sul

• Premissas• DB deve estar criado• Login com permissão para criar

objetos• Case sensitive• UTF-8

Liquibase

Page 6: Dojo :: Liquibase

São Paulo - Rio de Janeiro - Porto Alegre - São Leopoldo - Caxias do Sul

• Changelogs

• Changesets

• Databases

• Lib

• Changelog-master.xml

• Database.ps1

• README.md

Liquibase - Estrutura

Page 7: Dojo :: Liquibase

São Paulo - Rio de Janeiro - Porto Alegre - São Leopoldo - Caxias do Sul

• Estrutura• ChangeSet com arquivo SQL• ChangeSet com notação XML• ChangeSet SQL InLine

• Comandos• Validar o changelog

• liquibase --defaultsFile=databases/dsv.properties --changeLogFile=changelog-master.xml validate

• Verificar status• liquibase --defaultsFile=databases/dsv.properties --changeLogFile=changelog-master.xml status

• Atualizar banco• liquibase --defaultsFile=databases/dsv.properties --changeLogFile=changelog-master.xml update

Scripts da versão 1.0.0

Page 8: Dojo :: Liquibase

São Paulo - Rio de Janeiro - Porto Alegre - São Leopoldo - Caxias do Sul

• runAlways

• Context

• loadData

• loadUpdateData

Scripts da versão 2.0.0

Page 9: Dojo :: Liquibase

São Paulo - Rio de Janeiro - Porto Alegre - São Leopoldo - Caxias do Sul

• Plug-in LiquiBaseRunner

Liquibase & CI

Page 10: Dojo :: Liquibase

São Paulo - Rio de Janeiro - Porto Alegre - São Leopoldo - Caxias do Sul

Linha de ComandoLiquibase & CI

Page 11: Dojo :: Liquibase

São Paulo - Rio de Janeiro - Porto Alegre - São Leopoldo - Caxias do Sul

Corrigindo o Checksum Alteram um changeset já aplicado!

Page 12: Dojo :: Liquibase

São Paulo - Rio de Janeiro - Porto Alegre - São Leopoldo - Caxias do Sul

ObrigadoGiovani [email protected]