Skip to content

Commit

Permalink
Move migration commands to separate file
Browse files Browse the repository at this point in the history
  • Loading branch information
Yepoleb committed Apr 15, 2018
1 parent b307e43 commit 4581b77
Show file tree
Hide file tree
Showing 2 changed files with 65 additions and 56 deletions.
64 changes: 64 additions & 0 deletions MIGRATIONS.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
# Database Migrations

## cec5ebc

This commit removes the `searchindex` table and adds a product column instead.

ALTER TABLE products ADD COLUMN title_norm character varying(120);
UPDATE products SET title_norm = searchindex.title_norm
FROM searchindex WHERE id = searchindex.prod_id;
ALTER TABLE products ALTER COLUMN title_norm SET NOT NULL;
DROP TABLE searchindex;

## a2c8a1a

This commit adds deleted columns to files and downloads. Also run the
`initialize-db` script to create the `changerecords` table.

ALTER TABLE files ADD COLUMN deleted BOOLEAN;
ALTER TABLE downloads ADD COLUMN deleted BOOLEAN;
UPDATE files SET deleted=FALSE;
UPDATE downloads SET deleted=FALSE;
ALTER TABLE files ALTER COLUMN deleted SET NOT NULL;
ALTER TABLE downloads ALTER COLUMN deleted SET NOT NULL;

## fbfe39c

This commit makes almost all columns optional to allow unavailable games
to be added.

ALTER TABLE products ADD COLUMN store_date DATE;
ALTER TABLE products ADD COLUMN availability SMALLINT;

ALTER TABLE products ALTER COLUMN title DROP NOT NULL;
ALTER TABLE products ALTER COLUMN slug DROP NOT NULL;
ALTER TABLE products ALTER COLUMN forum_id DROP NOT NULL;
ALTER TABLE products ALTER COLUMN product_type DROP NOT NULL;
ALTER TABLE products ALTER COLUMN is_secret DROP NOT NULL;
ALTER TABLE products ALTER COLUMN is_price_visible DROP NOT NULL;
ALTER TABLE products ALTER COLUMN can_be_reviewed DROP NOT NULL;
ALTER TABLE products ALTER COLUMN cs_windows DROP NOT NULL;
ALTER TABLE products ALTER COLUMN cs_mac DROP NOT NULL;
ALTER TABLE products ALTER COLUMN cs_linux DROP NOT NULL;
ALTER TABLE products ALTER COLUMN os_windows DROP NOT NULL;
ALTER TABLE products ALTER COLUMN os_mac DROP NOT NULL;
ALTER TABLE products ALTER COLUMN os_linux DROP NOT NULL;
ALTER TABLE products ALTER COLUMN is_coming_soon DROP NOT NULL;
ALTER TABLE products ALTER COLUMN is_pre_order DROP NOT NULL;
ALTER TABLE products ALTER COLUMN development_active DROP NOT NULL;
ALTER TABLE products ALTER COLUMN rating DROP NOT NULL;
ALTER TABLE products ALTER COLUMN votes_count DROP NOT NULL;
ALTER TABLE products ALTER COLUMN reviews_count DROP NOT NULL;
ALTER TABLE products ALTER COLUMN developer_slug DROP NOT NULL;
ALTER TABLE products ALTER COLUMN publisher_slug DROP NOT NULL;
ALTER TABLE products ALTER COLUMN image_background DROP NOT NULL;
ALTER TABLE products ALTER COLUMN image_logo DROP NOT NULL;

ALTER TABLE pricerecords ALTER COLUMN price_base DROP NOT NULL;
ALTER TABLE pricerecords ALTER COLUMN price_final DROP NOT NULL;

## 86b9c8e

Clean up old content system changelog entries.

DELETE FROM changerecords WHERE type_prim='product' AND type_sec='cs';
57 changes: 1 addition & 56 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -131,62 +131,7 @@ Copy the cron and logrotate configs

# Database Migrations

## cec5ebc

This commit removes the `searchindex` table and adds a product column instead.

ALTER TABLE products ADD COLUMN title_norm character varying(120);
UPDATE products SET title_norm = searchindex.title_norm
FROM searchindex WHERE id = searchindex.prod_id;
ALTER TABLE products ALTER COLUMN title_norm SET NOT NULL;
DROP TABLE searchindex;

## a2c8a1a

This commit adds deleted columns to files and downloads. Also run the
`initialize-db` script to create the `changerecords` table.

ALTER TABLE files ADD COLUMN deleted BOOLEAN;
ALTER TABLE downloads ADD COLUMN deleted BOOLEAN;
UPDATE files SET deleted=FALSE;
UPDATE downloads SET deleted=FALSE;
ALTER TABLE files ALTER COLUMN deleted SET NOT NULL;
ALTER TABLE downloads ALTER COLUMN deleted SET NOT NULL;

## fbfe39c

This commit makes almost all columns optional to allow unavailable games
to be added.

ALTER TABLE products ADD COLUMN store_date DATE;
ALTER TABLE products ADD COLUMN availability SMALLINT;

ALTER TABLE products ALTER COLUMN title DROP NOT NULL;
ALTER TABLE products ALTER COLUMN slug DROP NOT NULL;
ALTER TABLE products ALTER COLUMN forum_id DROP NOT NULL;
ALTER TABLE products ALTER COLUMN product_type DROP NOT NULL;
ALTER TABLE products ALTER COLUMN is_secret DROP NOT NULL;
ALTER TABLE products ALTER COLUMN is_price_visible DROP NOT NULL;
ALTER TABLE products ALTER COLUMN can_be_reviewed DROP NOT NULL;
ALTER TABLE products ALTER COLUMN cs_windows DROP NOT NULL;
ALTER TABLE products ALTER COLUMN cs_mac DROP NOT NULL;
ALTER TABLE products ALTER COLUMN cs_linux DROP NOT NULL;
ALTER TABLE products ALTER COLUMN os_windows DROP NOT NULL;
ALTER TABLE products ALTER COLUMN os_mac DROP NOT NULL;
ALTER TABLE products ALTER COLUMN os_linux DROP NOT NULL;
ALTER TABLE products ALTER COLUMN is_coming_soon DROP NOT NULL;
ALTER TABLE products ALTER COLUMN is_pre_order DROP NOT NULL;
ALTER TABLE products ALTER COLUMN development_active DROP NOT NULL;
ALTER TABLE products ALTER COLUMN rating DROP NOT NULL;
ALTER TABLE products ALTER COLUMN votes_count DROP NOT NULL;
ALTER TABLE products ALTER COLUMN reviews_count DROP NOT NULL;
ALTER TABLE products ALTER COLUMN developer_slug DROP NOT NULL;
ALTER TABLE products ALTER COLUMN publisher_slug DROP NOT NULL;
ALTER TABLE products ALTER COLUMN image_background DROP NOT NULL;
ALTER TABLE products ALTER COLUMN image_logo DROP NOT NULL;

ALTER TABLE pricerecords ALTER COLUMN price_base DROP NOT NULL;
ALTER TABLE pricerecords ALTER COLUMN price_final DROP NOT NULL;
See [MIGRATIONS.md](MIGRATIONS.md)

# License

Expand Down

0 comments on commit 4581b77

Please sign in to comment.