diff --git a/db/schema/deploy/insert_task.sql b/db/schema/deploy/insert_task.sql new file mode 100644 index 0000000..b3067ff --- /dev/null +++ b/db/schema/deploy/insert_task.sql @@ -0,0 +1,17 @@ +-- Deploy db:insert_task to pg +-- requires: tasks +-- requires: todo_app + +BEGIN; + +INSERT INTO + todo_app.tasks (task, completed, date_created, date_updated) +VALUES + ('Clone project', TRUE, NOW(), NOW()), + ('Create database', TRUE, NOW(), NOW()), + ('Initialize sqitch schema', TRUE, NOW(), NOW()), + ('Create dummy data', TRUE, NOW(), NOW()), + ('Create Postgraphile API', FALSE, NOW(), NOW()), + ('Create front end', FALSE, NOW(), NOW()); + +COMMIT; diff --git a/db/schema/deploy/tasks.sql b/db/schema/deploy/tasks.sql new file mode 100644 index 0000000..2cbc27f --- /dev/null +++ b/db/schema/deploy/tasks.sql @@ -0,0 +1,16 @@ +-- Deploy db:tasks to pg +-- requires: todo_app + +BEGIN; + +SET client_min_messages = 'warning'; + +CREATE TABLE todo_app.tasks ( + id SERIAL PRIMARY KEY, + task TEXT NOT NULL, + completed BOOLEAN NOT NULL, + date_created TIMESTAMPTZ NOT NULL DEFAULT NOW(), + date_updated TIMESTAMPTZ NOT NULL DEFAULT NOW() +); + +COMMIT; diff --git a/db/schema/deploy/todo_app.sql b/db/schema/deploy/todo_app.sql new file mode 100644 index 0000000..9892076 --- /dev/null +++ b/db/schema/deploy/todo_app.sql @@ -0,0 +1,7 @@ +-- Deploy db:todo_app to pg + +BEGIN; + +CREATE SCHEMA todo_app; + +COMMIT; diff --git a/db/schema/revert/insert_task.sql b/db/schema/revert/insert_task.sql new file mode 100644 index 0000000..3493ca3 --- /dev/null +++ b/db/schema/revert/insert_task.sql @@ -0,0 +1,7 @@ +-- Revert db:insert_task from pg + +BEGIN; + +-- XXX Add DDLs here. + +COMMIT; diff --git a/db/schema/revert/tasks.sql b/db/schema/revert/tasks.sql new file mode 100644 index 0000000..82e8316 --- /dev/null +++ b/db/schema/revert/tasks.sql @@ -0,0 +1,7 @@ +-- Revert db:tasks from pg + +BEGIN; + +DROP TABLE todo_app.tasks; + +COMMIT; diff --git a/db/schema/revert/todo_app.sql b/db/schema/revert/todo_app.sql new file mode 100644 index 0000000..e10acf2 --- /dev/null +++ b/db/schema/revert/todo_app.sql @@ -0,0 +1,7 @@ +-- Revert db:todo_app from pg + +BEGIN; + +DROP SCHEMA todo_app; + +COMMIT; diff --git a/db/schema/sqitch.conf b/db/schema/sqitch.conf new file mode 100644 index 0000000..0813abd --- /dev/null +++ b/db/schema/sqitch.conf @@ -0,0 +1,8 @@ +[core] + engine = pg + plan_file = sqitch.plan + top_dir = . +[engine "pg"] + target = db:pg:todo_app + registry = sqitch + client = psql diff --git a/db/schema/sqitch.plan b/db/schema/sqitch.plan new file mode 100644 index 0000000..e278a29 --- /dev/null +++ b/db/schema/sqitch.plan @@ -0,0 +1,6 @@ +%syntax-version=1.0.0 +%project=db + +todo_app 2022-03-26T15:09:15Z marcel # Add schema for todo app +tasks [todo_app] 2022-03-26T15:38:14Z marcel # Creates a table to store our todo tasks +insert_task [tasks todo_app] 2022-03-26T19:06:02Z marcel # Add some dummy data diff --git a/db/schema/verify/insert_task.sql b/db/schema/verify/insert_task.sql new file mode 100644 index 0000000..9b02dc2 --- /dev/null +++ b/db/schema/verify/insert_task.sql @@ -0,0 +1,8 @@ +-- Verify db:insert_task on pg + +BEGIN; + +SELECT id, task, completed, date_created, date_updated + FROM todo_app.tasks; + +ROLLBACK; diff --git a/db/schema/verify/tasks.sql b/db/schema/verify/tasks.sql new file mode 100644 index 0000000..7f2d75b --- /dev/null +++ b/db/schema/verify/tasks.sql @@ -0,0 +1,9 @@ +-- Verify db:tasks on pg + +BEGIN; + +SELECT id, task, completed, date_created, date_updated + FROM todo_app.tasks + WHERE FALSE; + +ROLLBACK; diff --git a/db/schema/verify/todo_app.sql b/db/schema/verify/todo_app.sql new file mode 100644 index 0000000..c0be197 --- /dev/null +++ b/db/schema/verify/todo_app.sql @@ -0,0 +1,7 @@ +-- Verify db:todo_app on pg + +BEGIN; + +SELECT pg_catalog.has_schema_privilege('todo_app', 'usage'); + +ROLLBACK;