pgmigrate2

Software screenshot:
pgmigrate2
Software detaljer:
Version: 1.2.2
Upload dato: 14 Apr 15
Udvikler: Sergey Kirillov
Licens: Gratis
Popularitet: 2

Rating: nan/5 (Total Votes: 0)

pgmigrate2 er et Python værktøj, der hjælper dig med at udvikle din database sammen med din ansøgning.
Den grundlæggende enhed af PGmigrate er en enkelt SQL snippet kaldet patch.
Sample database patch
& Nbsp; cat 000049_Added_index_on_CategorySlug.sql
--- Id: 89ccfca6-6851-11e1-99d8-a088b4e3b168
--- Forfatter: Serg
--- Memo: Tilføjet indekset på CategorySlug
--- Dato: 2012-03-07 14:32
CREATE UNIQUE INDEX catalog_category_slug_shop_id_slug
& Nbsp; ON catalog_category_slug
& Nbsp; BRUG btree
& Nbsp; (shop_id, slug);
Som du kan se patch er en gyldig SQL-fil, som selv kan udføres direkte. Det har også nice, læsbar filnavn, og nogle metadata.
Quickstart
Initialiser database
& Nbsp; pgmigrate2 init postgresql: // user @ password / testdb
Dette vil skabe tabel __applied_patches__ i testdb. Denne tabel bruges til at spore, hvilke patches allerede anvendes.
Opret en patch repo, og en første patch
& Nbsp; mkdir patchrepo
& Nbsp; pgmigrate2 newpatch patchrepo
... Rediger plaster i din tekst editor ...
Skrev "patchrepo / 000001_creating_table_x.sql '
Dette vil skabe tomme patch og åbne den i din tekst editor. Indtast patch SQL, og valgfri notat, der beskriver, hvad er funktionen af ​​denne patch.
PGmigrate vil oprette en fil som patchrepo / 000001_creating_table_x.sql hvor 000001 er en patch serienummer og creating_table_x er en slugified patch notat. PGmigrate vil fylde resten af ​​patch metadata af sig selv.
Check hvad der skal anvendes på
& Nbsp; pgmigrate2 kontrol patchrepo / postgresql: // user @ password / testdb
Nødt til at anvende: skabe tabel x
Check tager alle pletter i patch repo, og udskrive en liste over patches, der skal anvendes på testd.
Anvend patches
& Nbsp; pgmigrate2 migrere patchrepo / postgresql: // user @ password / testdb
Nødt til at anvende 1 patches:
Anvendelse "skabelse tabel x '
Overfør tager alle patches fra patch repo, og sekventielt anvender de af dem, hvis id ikke er til stede i __applied_patches__ tabeller testdb.
Embedding
Her er eksempel, hvordan vi bruger PGmigrate i vores projekt:
### Database migration kommandoer
@ finaloption.command (config_opts)
def dbmigrate (config):
& Nbsp; fra shopium.core.config import read_config
& Nbsp; config = read_config (config)
& Nbsp; fra pgmigrate2 import api
& Nbsp; tilbagevenden api.migrate (»migration«, config.db_uri)
@ finaloption.command (config_opts)
def dbnewpatch (config):
& Nbsp; fra shopium.core.config import read_config
& Nbsp; config = read_config (config)
& Nbsp; fra pgmigrate2 import api
& Nbsp; import delproces
& nbsp; sti = api.newpatch ('vandringer')
& Nbsp; hvis sti:
& Nbsp; subprocess.check_call (hg tilføje% s '% sti, shell = True) # tilføje netop oprettet patch til Mercurial
@ finaloption.command (config_opts)
def dbcheckstatus (config):
& Nbsp; fra shopium.core.config import read_config
& Nbsp; config = read_config (config)
& Nbsp; fra pgmigrate2 import api
& Nbsp; api.check_status (»indvandringens, config.db_uri)

Krav :

  • Python

Lignende software

Kommentarer til pgmigrate2

Kommentarer ikke fundet
Tilføj kommentar
Tænd billeder!