wip
This commit is contained in:
@@ -0,0 +1,25 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<databaseChangeLog xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
|
||||
xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.5.xsd">
|
||||
|
||||
<!-- Define default schema name used by changesets-->
|
||||
<property name="schemaName" value="mangezmieux"/>
|
||||
|
||||
<include file="prepare-database.sql" relativeToChangelogFile="true"/>
|
||||
|
||||
<include file="changesets/create-user-table.xml" relativeToChangelogFile="true" />
|
||||
<include file="changesets/create-role-table.xml" relativeToChangelogFile="true" />
|
||||
<include file="changesets/create-resource-table.xml" relativeToChangelogFile="true" />
|
||||
<include file="changesets/create-role-verb-table.xml" relativeToChangelogFile="true" />
|
||||
<include file="changesets/create-user-role-table.xml" relativeToChangelogFile="true" />
|
||||
<include file="changesets/create-ingredient-table.xml" relativeToChangelogFile="true" />
|
||||
<include file="changesets/create-recipe-table.xml" relativeToChangelogFile="true" />
|
||||
|
||||
<include file="changesets/insert-resource.xml" relativeToChangelogFile="true" />
|
||||
<include file="changesets/insert-admin-role.xml" relativeToChangelogFile="true" />
|
||||
<include file="changesets/insert-admin-user.xml" relativeToChangelogFile="true" />
|
||||
<include file="changesets/insert-mangezmieux-admin-role.xml" relativeToChangelogFile="true" />
|
||||
|
||||
</databaseChangeLog>
|
||||
@@ -0,0 +1,32 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<databaseChangeLog xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
|
||||
xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.5.xsd">
|
||||
<changeSet id="create-user-table" author="Jeffrey Duroyon">
|
||||
<createTable tableName="user" schemaName="${schemaName}">
|
||||
<column name="id" type="uuid" defaultValueComputed="gen_random_uuid()">
|
||||
<constraints primaryKey="true" nullable="false"/>
|
||||
</column>
|
||||
<column name="email" type="varchar(50)">
|
||||
<constraints unique="true"/>
|
||||
</column>
|
||||
<column name="password" type="varchar(255)">
|
||||
</column>
|
||||
<column name="first_name" type="varchar(45)">
|
||||
</column>
|
||||
<column name="last_name" type="varchar(45)">
|
||||
</column>
|
||||
<column name="creation_date" type="timestamp" defaultValueComputed="now()">
|
||||
<constraints nullable="true"/>
|
||||
</column>
|
||||
<column name="last_update_date" type="timestamp" defaultValueComputed="now()">
|
||||
<constraints nullable="true"/>
|
||||
</column>
|
||||
<column name="last_update_user" type="varchar(100)">
|
||||
</column>
|
||||
<column name="creation_user" type="varchar(100)">
|
||||
</column>
|
||||
</createTable>
|
||||
</changeSet>
|
||||
</databaseChangeLog>
|
||||
@@ -0,0 +1,29 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<databaseChangeLog xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
|
||||
xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.5.xsd">
|
||||
<changeSet id="create-ingredient-table" author="Jeffrey Duroyon">
|
||||
<createTable tableName="ingredient" schemaName="${schemaName}">
|
||||
<column name="id" type="uuid" defaultValueComputed="gen_random_uuid()">
|
||||
<constraints primaryKey="true" nullable="false"/>
|
||||
</column>
|
||||
<column name="name" type="varchar(255)">
|
||||
<constraints unique="true"/>
|
||||
</column>
|
||||
<column name="rarity" type="varchar(255)">
|
||||
</column>
|
||||
|
||||
<column name="creation_date" type="timestamp" defaultValueComputed="now()">
|
||||
<constraints nullable="true"/>
|
||||
</column>
|
||||
<column name="last_update_date" type="timestamp" defaultValueComputed="now()">
|
||||
<constraints nullable="true"/>
|
||||
</column>
|
||||
<column name="last_update_user" type="varchar(100)">
|
||||
</column>
|
||||
<column name="creation_user" type="varchar(100)">
|
||||
</column>
|
||||
</createTable>
|
||||
</changeSet>
|
||||
</databaseChangeLog>
|
||||
@@ -0,0 +1,27 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<databaseChangeLog xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
|
||||
xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.5.xsd"
|
||||
>
|
||||
<changeSet id="create-resource-table" author="Jeffrey Duroyon">
|
||||
<createTable tableName="resource" schemaName="${schemaName}">
|
||||
<column name="id" type="uuid" defaultValueComputed="gen_random_uuid()">
|
||||
<constraints primaryKey="true" nullable="false"/>
|
||||
</column>
|
||||
<column name="name" type="varchar(40)">
|
||||
<constraints unique="true"/>
|
||||
</column>
|
||||
<column name="creation_date" type="timestamp" defaultValueComputed="now()">
|
||||
<constraints nullable="true"/>
|
||||
</column>
|
||||
<column name="last_update_date" type="timestamp">
|
||||
<constraints nullable="true"/>
|
||||
</column>
|
||||
<column name="last_update_user" type="varchar(100)">
|
||||
</column>
|
||||
<column name="creation_user" type="varchar(100)">
|
||||
</column>
|
||||
</createTable>
|
||||
</changeSet>
|
||||
</databaseChangeLog>
|
||||
@@ -0,0 +1,27 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<databaseChangeLog xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
|
||||
xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.5.xsd"
|
||||
>
|
||||
<changeSet id="create-role-table" author="Jeffrey Duroyon">
|
||||
<createTable tableName="role" schemaName="${schemaName}">
|
||||
<column name="id" type="uuid" defaultValueComputed="gen_random_uuid()">
|
||||
<constraints primaryKey="true" nullable="false"/>
|
||||
</column>
|
||||
<column name="name" type="varchar(40)">
|
||||
<constraints unique="true"/>
|
||||
</column>
|
||||
<column name="creation_date" type="timestamp" defaultValueComputed="now()">
|
||||
<constraints nullable="true"/>
|
||||
</column>
|
||||
<column name="last_update_date" type="timestamp">
|
||||
<constraints nullable="true"/>
|
||||
</column>
|
||||
<column name="last_update_user" type="varchar(100)">
|
||||
</column>
|
||||
<column name="creation_user" type="varchar(100)">
|
||||
</column>
|
||||
</createTable>
|
||||
</changeSet>
|
||||
</databaseChangeLog>
|
||||
@@ -0,0 +1,38 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<databaseChangeLog xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
|
||||
xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.5.xsd"
|
||||
>
|
||||
<changeSet id="create-role-verb-table" author="Jeffrey Duroyon">
|
||||
<createTable tableName="role_verb_resource" schemaName="${schemaName}">
|
||||
<column name="id" type="uuid" defaultValueComputed="gen_random_uuid()">
|
||||
<constraints primaryKey="true" nullable="false"/>
|
||||
</column>
|
||||
<column name="role_id" type="uuid">
|
||||
<constraints nullable="false" foreignKeyName="fk_role_verb_resource_role" references="${schemaName}.role(id)"/>
|
||||
</column>
|
||||
<column name="verb" type="varchar(40)">
|
||||
</column>
|
||||
<column name="resource_id" type="uuid">
|
||||
<constraints nullable="false" foreignKeyName="fk_role_verb_resource_resource" references="${schemaName}.resource(id)"/>
|
||||
</column>
|
||||
<column name="creation_date" type="timestamp" defaultValueComputed="now()">
|
||||
<constraints nullable="true"/>
|
||||
</column>
|
||||
<column name="last_update_date" type="timestamp">
|
||||
<constraints nullable="true"/>
|
||||
</column>
|
||||
<column name="last_update_user" type="varchar(100)">
|
||||
</column>
|
||||
<column name="creation_user" type="varchar(100)">
|
||||
</column>
|
||||
</createTable>
|
||||
<addUniqueConstraint
|
||||
columnNames="role_id, verb, resource_id"
|
||||
constraintName="unique_role_verb_resource"
|
||||
schemaName="${schemaName}"
|
||||
tableName="role_verb_resource"
|
||||
/>
|
||||
</changeSet>
|
||||
</databaseChangeLog>
|
||||
@@ -0,0 +1,36 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<databaseChangeLog xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
|
||||
xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.5.xsd"
|
||||
>
|
||||
<changeSet id="create-user-role-table" author="Jeffrey Duroyon">
|
||||
<createTable tableName="user_role" schemaName="${schemaName}">
|
||||
<column name="id" type="uuid" defaultValueComputed="gen_random_uuid()">
|
||||
<constraints primaryKey="true" nullable="false"/>
|
||||
</column>
|
||||
<column name="user_id" type="uuid">
|
||||
<constraints nullable="false" foreignKeyName="fk_user_role_box_user" references="${schemaName}.user(id)"/>
|
||||
</column>
|
||||
<column name="role_id" type="uuid">
|
||||
<constraints nullable="false" foreignKeyName="fk_user_role_box_role" references="${schemaName}.role(id)"/>
|
||||
</column>
|
||||
<column name="creation_date" type="timestamp" defaultValueComputed="now()">
|
||||
<constraints nullable="true"/>
|
||||
</column>
|
||||
<column name="last_update_date" type="timestamp">
|
||||
<constraints nullable="true"/>
|
||||
</column>
|
||||
<column name="last_update_user" type="varchar(100)">
|
||||
</column>
|
||||
<column name="creation_user" type="varchar(100)">
|
||||
</column>
|
||||
</createTable>
|
||||
<addUniqueConstraint
|
||||
columnNames="role_id, user_id"
|
||||
constraintName="unique_user_role"
|
||||
schemaName="${schemaName}"
|
||||
tableName="user_role"
|
||||
/>
|
||||
</changeSet>
|
||||
</databaseChangeLog>
|
||||
@@ -0,0 +1,32 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<databaseChangeLog xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
|
||||
xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.5.xsd">
|
||||
<changeSet id="create-user-table" author="Jeffrey Duroyon">
|
||||
<createTable tableName="user" schemaName="${schemaName}">
|
||||
<column name="id" type="uuid" defaultValueComputed="gen_random_uuid()">
|
||||
<constraints primaryKey="true" nullable="false"/>
|
||||
</column>
|
||||
<column name="email" type="varchar(50)">
|
||||
<constraints unique="true"/>
|
||||
</column>
|
||||
<column name="password" type="varchar(255)">
|
||||
</column>
|
||||
<column name="first_name" type="varchar(45)">
|
||||
</column>
|
||||
<column name="last_name" type="varchar(45)">
|
||||
</column>
|
||||
<column name="creation_date" type="timestamp" defaultValueComputed="now()">
|
||||
<constraints nullable="true"/>
|
||||
</column>
|
||||
<column name="last_update_date" type="timestamp" defaultValueComputed="now()">
|
||||
<constraints nullable="true"/>
|
||||
</column>
|
||||
<column name="last_update_user" type="varchar(100)">
|
||||
</column>
|
||||
<column name="creation_user" type="varchar(100)">
|
||||
</column>
|
||||
</createTable>
|
||||
</changeSet>
|
||||
</databaseChangeLog>
|
||||
@@ -0,0 +1,17 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<databaseChangeLog xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
|
||||
xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.5.xsd"
|
||||
>
|
||||
<changeSet id="insert-role-and-verb" author="Jeffrey Duroyon">
|
||||
<insert tableName="role" schemaName="${schemaName}">
|
||||
<column name="name" value="ADMIN"/>
|
||||
</insert>
|
||||
<insert tableName="role_verb_resource" schemaName="${schemaName}">
|
||||
<column name="verb" value="ADMIN"/>
|
||||
<column name="role_id" valueComputed="(SELECT id from ${schemaName}.role where name='ADMIN')"/>
|
||||
<column name="resource_id" valueComputed="(SELECT id from ${schemaName}.resource where name='ADMIN')"/>
|
||||
</insert>
|
||||
</changeSet>
|
||||
</databaseChangeLog>
|
||||
@@ -0,0 +1,13 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<databaseChangeLog xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
|
||||
xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.5.xsd"
|
||||
>
|
||||
<changeSet id="insert-admin-user" author="Jeffrey Duroyon">
|
||||
<insert tableName="user" schemaName="${schemaName}">
|
||||
<column name="email" value="admin@mangezmieux.com"/>
|
||||
<column name="password" value="$2a$10$zLk6vcP7dKQ3KZ1c5icu3OiT68AeGyW.rxGL54AqOoUhoId2hmrrK"/>
|
||||
</insert>
|
||||
</changeSet>
|
||||
</databaseChangeLog>
|
||||
@@ -0,0 +1,22 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<databaseChangeLog xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
|
||||
xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.5.xsd"
|
||||
>
|
||||
<changeSet id="insert-mangezmieux-admin-role" author="Jeffrey Duroyon">
|
||||
<insert tableName="role" schemaName="${schemaName}">
|
||||
<column name="name" value="MANGEZMIEUX_ADMIN"/>
|
||||
</insert>
|
||||
<insert tableName="role_verb_resource" schemaName="${schemaName}">
|
||||
<column name="verb" value="ADMIN"/>
|
||||
<column name="role_id" valueComputed="(SELECT id from ${schemaName}.role where name='MANGEZMIEUX_ADMIN')"/>
|
||||
<column name="resource_id" valueComputed="(SELECT id from ${schemaName}.resource where name='ADMIN')"/>
|
||||
</insert>
|
||||
<insert tableName="user_role" schemaName="${schemaName}">
|
||||
<column name="user_id" valueComputed="(SELECT id from ${schemaName}.user where email='admin@mangezmieux.com')"/>
|
||||
<column name="role_id" valueComputed="(SELECT id from ${schemaName}.role where name='MANGEZMIEUX_ADMIN')"/>
|
||||
</insert>
|
||||
<!-- <column name="studentId" valueComputed="(SELECT sId from StudentMaster where studentName='Jay Parikh')"/>-->
|
||||
</changeSet>
|
||||
</databaseChangeLog>
|
||||
@@ -0,0 +1,21 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<databaseChangeLog xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
|
||||
xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.5.xsd"
|
||||
>
|
||||
<changeSet id="insert-resource" author="Jeffrey Duroyon">
|
||||
<insert tableName="resource" schemaName="${schemaName}">
|
||||
<column name="name" value="ADMIN"/>
|
||||
</insert>
|
||||
<insert tableName="resource" schemaName="${schemaName}">
|
||||
<column name="name" value="USER"/>
|
||||
</insert>
|
||||
<insert tableName="resource" schemaName="${schemaName}">
|
||||
<column name="name" value="RECIPE"/>
|
||||
</insert>
|
||||
<insert tableName="resource" schemaName="${schemaName}">
|
||||
<column name="name" value="ROLE"/>
|
||||
</insert>
|
||||
</changeSet>
|
||||
</databaseChangeLog>
|
||||
@@ -0,0 +1,4 @@
|
||||
url: jdbc:postgresql://127.0.0.1:5432/mangezmieux
|
||||
username: postgres
|
||||
password: mysecretpassword
|
||||
logLevel: info
|
||||
2
mangezmieux-backend/liquibase/changelogs/prepare-database.sql
Executable file
2
mangezmieux-backend/liquibase/changelogs/prepare-database.sql
Executable file
@@ -0,0 +1,2 @@
|
||||
CREATE SCHEMA IF NOT EXISTS mangezmieux;
|
||||
CREATE EXTENSION IF NOT EXISTS pgcrypto;
|
||||
Reference in New Issue
Block a user