From 383ce5cce272d03d496a3d759888eeb07947d5a9 Mon Sep 17 00:00:00 2001 From: aoezyetimoglu Date: Tue, 16 Nov 2021 16:24:00 +0100 Subject: [PATCH] RED-2438: Implement Liquibase based DB setup and migration --- .../persistence-service-server-v1/pom.xml | 5 + .../src/main/resources/application.yml | 7 +- .../changelog/1-initial-schema.changelog.yaml | 1971 +++++++++++++++++ .../db/changelog/db.changelog-master.yaml | 3 + 4 files changed, 1984 insertions(+), 2 deletions(-) create mode 100644 persistence-service-v1/persistence-service-server-v1/src/main/resources/db/changelog/1-initial-schema.changelog.yaml create mode 100644 persistence-service-v1/persistence-service-server-v1/src/main/resources/db/changelog/db.changelog-master.yaml diff --git a/persistence-service-v1/persistence-service-server-v1/pom.xml b/persistence-service-v1/persistence-service-server-v1/pom.xml index d74c61571..bb40a34bd 100644 --- a/persistence-service-v1/persistence-service-server-v1/pom.xml +++ b/persistence-service-v1/persistence-service-server-v1/pom.xml @@ -148,6 +148,11 @@ log4j-slf4j-impl test + + org.liquibase + liquibase-core + 4.3.1 + diff --git a/persistence-service-v1/persistence-service-server-v1/src/main/resources/application.yml b/persistence-service-v1/persistence-service-server-v1/src/main/resources/application.yml index 28b4b5734..7cb2c2a4a 100644 --- a/persistence-service-v1/persistence-service-server-v1/src/main/resources/application.yml +++ b/persistence-service-v1/persistence-service-server-v1/src/main/resources/application.yml @@ -20,9 +20,9 @@ spring: jpa: database-platform: org.hibernate.dialect.PostgreSQL95Dialect hibernate: - ddl-auto: update naming-strategy: org.hibernate.cfg.ImprovedNamingStrategy - generate-ddl: true + generate-ddl: false + generate-ddl: false profiles: active: kubernetes @@ -41,6 +41,9 @@ spring: max-interval: 15000 prefetch: 1 + liquibase: + change-log: classpath:/db/changelog/db.changelog-master.yaml + management: endpoint: metrics.enabled: ${monitoring.enabled:false} diff --git a/persistence-service-v1/persistence-service-server-v1/src/main/resources/db/changelog/1-initial-schema.changelog.yaml b/persistence-service-v1/persistence-service-server-v1/src/main/resources/db/changelog/1-initial-schema.changelog.yaml new file mode 100644 index 000000000..4672228ec --- /dev/null +++ b/persistence-service-v1/persistence-service-server-v1/src/main/resources/db/changelog/1-initial-schema.changelog.yaml @@ -0,0 +1,1971 @@ +databaseChangeLog: + - changeSet: + id: 1637073006104-1 + author: generated + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: comment_pkey + name: id + type: BIGINT + - column: + name: annotation_id + type: VARCHAR(255) + - column: + name: date + type: TIMESTAMP WITHOUT TIME ZONE + - column: + name: file_id + type: VARCHAR(255) + - column: + name: soft_deleted_time + type: TIMESTAMP WITHOUT TIME ZONE + - column: + name: text + type: VARCHAR(4000) + - column: + name: user_id + type: VARCHAR(255) + - column: + name: file_status_id + type: VARCHAR(255) + tableName: comment + - changeSet: + id: 1637073006104-2 + author: generated + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: file_pkey + name: id + type: VARCHAR(255) + - column: + name: added + type: TIMESTAMP WITHOUT TIME ZONE + - column: + name: analysis_duration + type: BIGINT + - column: + name: analysis_version + type: INTEGER + - column: + name: approval_date + type: TIMESTAMP WITHOUT TIME ZONE + - column: + name: current_reviewer + type: VARCHAR(255) + - column: + name: deleted + type: TIMESTAMP WITHOUT TIME ZONE + - column: + name: dictionary_version + type: BIGINT + - column: + name: dossier_dictionary_version + type: BIGINT + - column: + name: dossier_id + type: VARCHAR(255) + - column: + name: excluded + type: BOOLEAN + - column: + name: filename + type: VARCHAR(255) + - column: + name: hard_deleted_time + type: TIMESTAMP WITHOUT TIME ZONE + - column: + name: has_annotation_comments + type: BOOLEAN + - column: + name: has_hints + type: BOOLEAN + - column: + name: has_images + type: BOOLEAN + - column: + name: has_redactions + type: BOOLEAN + - column: + name: has_suggestions + type: BOOLEAN + - column: + name: has_updates + type: BOOLEAN + - column: + name: last_file_attribute_change + type: TIMESTAMP WITHOUT TIME ZONE + - column: + name: last_indexed + type: TIMESTAMP WITHOUT TIME ZONE + - column: + name: last_manual_redaction + type: TIMESTAMP WITHOUT TIME ZONE + - column: + name: lastocrtime + type: TIMESTAMP WITHOUT TIME ZONE + - column: + name: last_processed + type: TIMESTAMP WITHOUT TIME ZONE + - column: + name: last_reviewer + type: VARCHAR(255) + - column: + name: last_updated + type: TIMESTAMP WITHOUT TIME ZONE + - column: + name: last_uploaded + type: TIMESTAMP WITHOUT TIME ZONE + - column: + name: legal_basis_version + type: BIGINT + - column: + name: number_of_analyses + type: INTEGER + - column: + name: number_of_pages + type: INTEGER + - column: + name: processing_status + type: VARCHAR(255) + - column: + name: rules_version + type: BIGINT + - column: + name: uploader + type: VARCHAR(255) + - column: + name: workflow_status + type: VARCHAR(255) + tableName: file + - changeSet: + id: 1637073006104-3 + author: generated + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + name: page + type: INTEGER + - column: + constraints: + nullable: false + name: user_id + type: VARCHAR(255) + - column: + name: viewed_time + type: TIMESTAMP WITHOUT TIME ZONE + - column: + constraints: + nullable: false + name: file_id + type: VARCHAR(255) + tableName: viewed_page + - changeSet: + id: 1637073006104-4 + author: generated + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: dossier_template_pkey + name: id + type: VARCHAR(255) + - column: + name: created_by + type: VARCHAR(255) + - column: + name: date_added + type: TIMESTAMP WITHOUT TIME ZONE + - column: + name: date_modified + type: TIMESTAMP WITHOUT TIME ZONE + - column: + name: description + type: VARCHAR(4000) + - column: + name: modified_by + type: VARCHAR(255) + - column: + name: name + type: VARCHAR(255) + - column: + name: soft_delete_time + type: TIMESTAMP WITHOUT TIME ZONE + - column: + name: valid_from + type: TIMESTAMP WITHOUT TIME ZONE + - column: + name: valid_to + type: TIMESTAMP WITHOUT TIME ZONE + tableName: dossier_template + - changeSet: + id: 1637073006104-5 + author: generated + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: type_pkey + name: id + type: VARCHAR(255) + - column: + name: add_to_dictionary_action + type: BOOLEAN + - column: + name: description + type: VARCHAR(4000) + - column: + name: dossier_id + type: VARCHAR(255) + - column: + name: dossier_template_id + type: VARCHAR(255) + - column: + name: hex_color + type: VARCHAR(255) + - column: + name: is_case_insensitive + type: BOOLEAN + - column: + name: is_hint + type: BOOLEAN + - column: + name: is_recommendation + type: BOOLEAN + - column: + name: label + type: VARCHAR(255) + - column: + name: rank + type: INTEGER + - column: + name: type + type: VARCHAR(255) + - column: + name: version + type: BIGINT + tableName: type + - changeSet: + id: 1637073006104-6 + author: generated + changes: + - createTable: + columns: + - column: + name: value + type: TEXT + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: dossier_attribute_pkey + name: dossier_attribute_config_id + type: VARCHAR(255) + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: dossier_attribute_pkey + name: dossier_id + type: VARCHAR(255) + tableName: dossier_attribute + - changeSet: + id: 1637073006104-7 + author: generated + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: dossier_attribute_config_pkey + name: id + type: VARCHAR(255) + - column: + name: editable + type: BOOLEAN + - column: + name: label + type: VARCHAR(255) + - column: + name: placeholder + type: VARCHAR(255) + - column: + name: type + type: VARCHAR(255) + - column: + name: dossier_template_id + type: VARCHAR(255) + tableName: dossier_attribute_config + - changeSet: + id: 1637073006104-8 + author: generated + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + name: download_status_entity_storage_id + type: VARCHAR(255) + - column: + constraints: + nullable: false + name: files_id + type: VARCHAR(255) + tableName: download_status_files + - changeSet: + id: 1637073006104-9 + author: generated + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + name: dossier_template_entity_id + type: VARCHAR(255) + - column: + name: download_file_types + type: VARCHAR(255) + tableName: dossier_template_entity_download_file_types + - changeSet: + id: 1637073006104-10 + author: generated + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: notification_preference_pkey + name: user_id + type: VARCHAR(255) + - column: + name: email_notification_type + type: INTEGER + - column: + name: email_notifications_enabled + type: BOOLEAN + - column: + name: in_app_notifications_enabled + type: BOOLEAN + tableName: notification_preference + - changeSet: + id: 1637073006104-11 + author: generated + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + name: notification_preferences_entity_user_id + type: VARCHAR(255) + - column: + name: email_notifications + type: VARCHAR(255) + tableName: notification_preferences_entity_email_notifications + - changeSet: + id: 1637073006104-12 + author: generated + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: report_template_pkey + name: template_id + type: VARCHAR(255) + - column: + name: active_by_default + type: BOOLEAN + - column: + name: dossier_template_id + type: VARCHAR(255) + - column: + name: file_name + type: VARCHAR(255) + - column: + name: multi_file_report + type: BOOLEAN + - column: + name: storage_id + type: VARCHAR(255) + - column: + name: upload_date + type: TIMESTAMP WITHOUT TIME ZONE + tableName: report_template + - changeSet: + id: 1637073006104-13 + author: generated + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + name: report_templates_template_id + type: VARCHAR(255) + - column: + constraints: + nullable: false + name: dossiers_id + type: VARCHAR(255) + tableName: report_template_dossiers + - changeSet: + id: 1637073006104-14 + author: generated + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: file_attribute_config_pkey + name: id + type: VARCHAR(255) + - column: + name: csv_column_header + type: VARCHAR(255) + - column: + name: displayed_in_file_list + type: BOOLEAN + - column: + name: editable + type: BOOLEAN + - column: + name: filterable + type: BOOLEAN + - column: + name: label + type: VARCHAR(255) + - column: + name: placeholder + type: VARCHAR(255) + - column: + name: primary_attribute + type: BOOLEAN + - column: + name: type + type: VARCHAR(255) + - column: + name: dossier_template_id + type: VARCHAR(255) + tableName: file_attribute_config + - changeSet: + id: 1637073006104-15 + author: generated + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: legal_basis_mapping_pkey + name: dossier_template_id + type: VARCHAR(255) + - column: + name: version + type: BIGINT + tableName: legal_basis_mapping + - changeSet: + id: 1637073006104-16 + author: generated + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + name: legal_basis_mapping_entity_dossier_template_id + type: VARCHAR(255) + - column: + name: description + type: VARCHAR(4000) + - column: + name: name + type: VARCHAR(255) + - column: + name: reason + type: VARCHAR(4000) + tableName: legal_basis_mapping_entity_legal_basis + - changeSet: + id: 1637073006104-17 + author: generated + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + name: notification_preferences_entity_user_id + type: VARCHAR(255) + - column: + name: in_app_notifications + type: VARCHAR(255) + tableName: notification_preferences_entity_in_app_notifications + - changeSet: + id: 1637073006104-18 + author: generated + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: download_status_pkey + name: storage_id + type: VARCHAR(255) + - column: + name: creation_date + type: TIMESTAMP WITHOUT TIME ZONE + - column: + name: file_size + type: BIGINT + - column: + name: filename + type: VARCHAR(255) + - column: + name: last_download + type: TIMESTAMP WITHOUT TIME ZONE + - column: + name: mime_type + type: VARCHAR(255) + - column: + name: status + type: VARCHAR(255) + - column: + name: user_id + type: VARCHAR(255) + - column: + name: dossier_id + type: VARCHAR(255) + tableName: download_status + - changeSet: + id: 1637073006104-19 + author: generated + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: manual_resize_redaction_pkey + name: annotation_id + type: VARCHAR(255) + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: manual_resize_redaction_pkey + name: file_id + type: VARCHAR(255) + - column: + name: page + type: INTEGER + - column: + name: processed_date + type: TIMESTAMP WITHOUT TIME ZONE + - column: + name: request_date + type: TIMESTAMP WITHOUT TIME ZONE + - column: + name: soft_deleted_time + type: TIMESTAMP WITHOUT TIME ZONE + - column: + name: status + type: VARCHAR(255) + - column: + name: user_id + type: VARCHAR(255) + - column: + name: value + type: VARCHAR(255) + - column: + name: file_status_id + type: VARCHAR(255) + tableName: manual_resize_redaction + - changeSet: + id: 1637073006104-20 + author: generated + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: dossier_pkey + name: id + type: VARCHAR(255) + - column: + name: date + type: TIMESTAMP WITHOUT TIME ZONE + - column: + name: description + type: VARCHAR(4000) + - column: + name: dossier_name + type: VARCHAR(255) + - column: + name: dossier_template_id + type: VARCHAR(255) + - column: + name: due_date + type: TIMESTAMP WITHOUT TIME ZONE + - column: + name: hard_deleted_time + type: TIMESTAMP WITHOUT TIME ZONE + - column: + name: last_updated + type: TIMESTAMP WITHOUT TIME ZONE + - column: + name: owner_id + type: VARCHAR(255) + - column: + name: soft_deleted_time + type: TIMESTAMP WITHOUT TIME ZONE + - column: + name: start_date + type: TIMESTAMP WITHOUT TIME ZONE + - column: + name: status + type: INTEGER + - column: + name: watermark_enabled + type: BOOLEAN + - column: + name: watermark_preview_enabled + type: BOOLEAN + tableName: dossier + - changeSet: + id: 1637073006104-21 + author: generated + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + name: dossier_entity_id + type: VARCHAR(255) + - column: + name: member_ids + type: VARCHAR(255) + tableName: dossier_entity_member_ids + - changeSet: + id: 1637073006104-22 + author: generated + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: manual_force_redaction_pkey + name: annotation_id + type: VARCHAR(255) + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: manual_force_redaction_pkey + name: file_id + type: VARCHAR(255) + - column: + name: legal_basis + type: VARCHAR(4000) + - column: + name: page + type: INTEGER + - column: + name: processed_date + type: TIMESTAMP WITHOUT TIME ZONE + - column: + name: request_date + type: TIMESTAMP WITHOUT TIME ZONE + - column: + name: soft_deleted_time + type: TIMESTAMP WITHOUT TIME ZONE + - column: + name: status + type: VARCHAR(255) + - column: + name: user_id + type: VARCHAR(255) + - column: + name: file_status_id + type: VARCHAR(255) + tableName: manual_force_redaction + - changeSet: + id: 1637073006104-23 + author: generated + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: manual_legal_basis_change_pkey + name: annotation_id + type: VARCHAR(255) + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: manual_legal_basis_change_pkey + name: file_id + type: VARCHAR(255) + - column: + name: legal_basis + type: VARCHAR(255) + - column: + name: page + type: INTEGER + - column: + name: processed_date + type: TIMESTAMP WITHOUT TIME ZONE + - column: + name: request_date + type: TIMESTAMP WITHOUT TIME ZONE + - column: + name: section + type: VARCHAR(255) + - column: + name: soft_deleted_time + type: TIMESTAMP WITHOUT TIME ZONE + - column: + name: status + type: VARCHAR(255) + - column: + name: user_id + type: VARCHAR(255) + - column: + name: file_status_id + type: VARCHAR(255) + tableName: manual_legal_basis_change + - changeSet: + id: 1637073006104-24 + author: generated + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + name: dossier_entity_id + type: VARCHAR(255) + - column: + name: approver_ids + type: VARCHAR(255) + tableName: dossier_entity_approver_ids + - changeSet: + id: 1637073006104-25 + author: generated + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: manual_redaction_pkey + name: annotation_id + type: VARCHAR(255) + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: manual_redaction_pkey + name: file_id + type: VARCHAR(255) + - column: + name: add_to_dictionary + type: BOOLEAN + - column: + name: add_to_dossier_dictionary + type: BOOLEAN + - column: + name: legal_basis + type: VARCHAR(255) + - column: + name: processed_date + type: TIMESTAMP WITHOUT TIME ZONE + - column: + name: reason + type: VARCHAR(4000) + - column: + name: request_date + type: TIMESTAMP WITHOUT TIME ZONE + - column: + name: section + type: VARCHAR(255) + - column: + name: soft_deleted_time + type: TIMESTAMP WITHOUT TIME ZONE + - column: + name: status + type: VARCHAR(255) + - column: + name: type_id + type: VARCHAR(4000) + - column: + name: user_id + type: VARCHAR(255) + - column: + name: value + type: VARCHAR(4000) + - column: + name: file_status_id + type: VARCHAR(255) + tableName: manual_redaction + - changeSet: + id: 1637073006104-26 + author: generated + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + name: manual_resize_redaction_entity_annotation_id + type: VARCHAR(255) + - column: + constraints: + nullable: false + name: manual_resize_redaction_entity_file_id + type: VARCHAR(255) + - column: + constraints: + nullable: false + name: height + type: FLOAT4 + - column: + constraints: + nullable: false + name: page + type: INTEGER + - column: + constraints: + nullable: false + name: top_leftx + type: FLOAT4 + - column: + constraints: + nullable: false + name: top_lefty + type: FLOAT4 + - column: + constraints: + nullable: false + name: width + type: FLOAT4 + tableName: manual_resize_redaction_entity_positions + - changeSet: + id: 1637073006104-27 + author: generated + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + name: download_status_entity_storage_id + type: VARCHAR(255) + - column: + name: download_file_types + type: VARCHAR(255) + tableName: download_status_entity_download_file_types + - changeSet: + id: 1637073006104-28 + author: generated + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + name: dossier_entity_id + type: VARCHAR(255) + - column: + name: download_file_types + type: VARCHAR(255) + tableName: dossier_entity_download_file_types + - changeSet: + id: 1637073006104-29 + author: generated + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: dictionary_entry_pkey + name: entry_id + type: BIGINT + - column: + name: deleted + type: BOOLEAN + - column: + name: value + type: VARCHAR(4000) + - column: + name: version + type: BIGINT + - column: + name: type_id + type: VARCHAR(255) + tableName: dictionary_entry + - changeSet: + id: 1637073006104-30 + author: generated + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: manual_image_recategorization_pkey + name: annotation_id + type: VARCHAR(255) + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: manual_image_recategorization_pkey + name: file_id + type: VARCHAR(255) + - column: + name: page + type: INTEGER + - column: + name: processed_date + type: TIMESTAMP WITHOUT TIME ZONE + - column: + name: request_date + type: TIMESTAMP WITHOUT TIME ZONE + - column: + name: soft_deleted_time + type: TIMESTAMP WITHOUT TIME ZONE + - column: + name: status + type: VARCHAR(255) + - column: + name: type_id + type: VARCHAR(255) + - column: + name: user_id + type: VARCHAR(255) + - column: + name: file_status_id + type: VARCHAR(255) + tableName: manual_image_recategorization + - changeSet: + id: 1637073006104-31 + author: generated + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + name: manual_redaction_entry_entity_annotation_id + type: VARCHAR(255) + - column: + constraints: + nullable: false + name: manual_redaction_entry_entity_file_id + type: VARCHAR(255) + - column: + constraints: + nullable: false + name: height + type: FLOAT4 + - column: + constraints: + nullable: false + name: page + type: INTEGER + - column: + constraints: + nullable: false + name: top_leftx + type: FLOAT4 + - column: + constraints: + nullable: false + name: top_lefty + type: FLOAT4 + - column: + constraints: + nullable: false + name: width + type: FLOAT4 + tableName: manual_redaction_entry_entity_positions + - changeSet: + id: 1637073006104-32 + author: generated + changes: + - createTable: + columns: + - column: + name: value + type: VARCHAR(4000) + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: file_attribute_pkey + name: file_attribute_config_id + type: VARCHAR(255) + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: file_attribute_pkey + name: file_id + type: VARCHAR(255) + tableName: file_attribute + - changeSet: + id: 1637073006104-33 + author: generated + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: id_removal_pkey + name: annotation_id + type: VARCHAR(255) + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: id_removal_pkey + name: file_id + type: VARCHAR(255) + - column: + name: page + type: INTEGER + - column: + name: processed_date + type: TIMESTAMP WITHOUT TIME ZONE + - column: + name: remove_from_dictionary + type: BOOLEAN + - column: + name: request_date + type: TIMESTAMP WITHOUT TIME ZONE + - column: + name: soft_deleted_time + type: TIMESTAMP WITHOUT TIME ZONE + - column: + name: status + type: VARCHAR(255) + - column: + name: user_id + type: VARCHAR(255) + - column: + name: file_status_id + type: VARCHAR(255) + tableName: id_removal + - changeSet: + id: 1637073006104-34 + author: generated + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: file_attribute_general_configuration_pkey + name: dossier_template_id + type: VARCHAR(255) + - column: + name: delimiter + type: VARCHAR(255) + - column: + name: filename_mapping_column_header_name + type: VARCHAR(255) + tableName: file_attribute_general_configuration + - changeSet: + id: 1637073006104-35 + author: generated + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + name: file_entity_id + type: VARCHAR(255) + - column: + name: excluded_pages + type: INTEGER + tableName: file_entity_excluded_pages + - changeSet: + id: 1637073006104-36 + author: generated + changes: + - addForeignKeyConstraint: + baseColumnNames: file_status_id + baseTableName: comment + constraintName: fk11we93anss7uf47nrldjxorbq + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: id + referencedTableName: file + validate: true + - changeSet: + id: 1637073006104-37 + author: generated + changes: + - addForeignKeyConstraint: + baseColumnNames: file_id + baseTableName: viewed_page + constraintName: fk1hu1iurygtgd6dwyfnig3ay59 + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: id + referencedTableName: file + validate: true + - changeSet: + id: 1637073006104-38 + author: generated + changes: + - addForeignKeyConstraint: + baseColumnNames: files_id + baseTableName: download_status_files + constraintName: fk2psjvoaj7gfy7g0kkdhqsg647 + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: id + referencedTableName: file + validate: true + - changeSet: + id: 1637073006104-39 + author: generated + changes: + - addForeignKeyConstraint: + baseColumnNames: file_status_id + baseTableName: manual_resize_redaction + constraintName: fk71rv9ktyipi1akjpqw9w1nx0k + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: id + referencedTableName: file + validate: true + - changeSet: + id: 1637073006104-40 + author: generated + changes: + - addForeignKeyConstraint: + baseColumnNames: file_status_id + baseTableName: manual_force_redaction + constraintName: fkanxe96ftf5ocsgij9prjbnh9l + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: id + referencedTableName: file + validate: true + - changeSet: + id: 1637073006104-41 + author: generated + changes: + - addForeignKeyConstraint: + baseColumnNames: file_status_id + baseTableName: manual_legal_basis_change + constraintName: fkcum1x2ufmn890l04ku6i3mpb1 + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: id + referencedTableName: file + validate: true + - changeSet: + id: 1637073006104-42 + author: generated + changes: + - addForeignKeyConstraint: + baseColumnNames: file_status_id + baseTableName: manual_redaction + constraintName: fkeur9q7l2tp5n12c2t9dfp3a09 + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: id + referencedTableName: file + validate: true + - changeSet: + id: 1637073006104-43 + author: generated + changes: + - addForeignKeyConstraint: + baseColumnNames: file_status_id + baseTableName: manual_image_recategorization + constraintName: fklk8jdtar7j3pvayeu1wwo3b2l + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: id + referencedTableName: file + validate: true + - changeSet: + id: 1637073006104-44 + author: generated + changes: + - addForeignKeyConstraint: + baseColumnNames: file_id + baseTableName: file_attribute + constraintName: fkouhh3ng184spemjp8onxtlai4 + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: id + referencedTableName: file + validate: true + - changeSet: + id: 1637073006104-45 + author: generated + changes: + - addForeignKeyConstraint: + baseColumnNames: dossier_id + baseTableName: file + constraintName: fkq0tbv26x7e2dsonag4ay02e50 + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: id + referencedTableName: dossier + validate: true + - changeSet: + id: 1637073006104-46 + author: generated + changes: + - addForeignKeyConstraint: + baseColumnNames: file_status_id + baseTableName: id_removal + constraintName: fkqfc8anp8nf7nqsnqor3vd5h3s + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: id + referencedTableName: file + validate: true + - changeSet: + id: 1637073006104-47 + author: generated + changes: + - addForeignKeyConstraint: + baseColumnNames: file_entity_id + baseTableName: file_entity_excluded_pages + constraintName: fkrfmi6123xm1wdbiaptm1rrndp + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: id + referencedTableName: file + validate: true + - changeSet: + id: 1637073006104-48 + author: generated + changes: + - addForeignKeyConstraint: + baseColumnNames: dossier_template_id + baseTableName: type + constraintName: fk1u8s9o2pcldo16a75ugsn9ur2 + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: id + referencedTableName: dossier_template + validate: true + - changeSet: + id: 1637073006104-49 + author: generated + changes: + - addForeignKeyConstraint: + baseColumnNames: dossier_template_entity_id + baseTableName: dossier_template_entity_download_file_types + constraintName: fk2qs0fmgllc4xdier2a4iyvmap + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: id + referencedTableName: dossier_template + validate: true + - changeSet: + id: 1637073006104-50 + author: generated + changes: + - addForeignKeyConstraint: + baseColumnNames: dossier_template_id + baseTableName: file_attribute_config + constraintName: fk4591g2hc2g78xo9ubtkg265kh + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: id + referencedTableName: dossier_template + validate: true + - changeSet: + id: 1637073006104-51 + author: generated + changes: + - addForeignKeyConstraint: + baseColumnNames: dossier_template_id + baseTableName: dossier_attribute_config + constraintName: fkbt5omfy3bql7m9j8ur3g7ocn0 + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: id + referencedTableName: dossier_template + validate: true + - changeSet: + id: 1637073006104-52 + author: generated + changes: + - addForeignKeyConstraint: + baseColumnNames: dossier_template_id + baseTableName: dossier + constraintName: fkdbpv9scniq0v4rpsgk7ea4k1x + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: id + referencedTableName: dossier_template + validate: true + - changeSet: + id: 1637073006104-53 + author: generated + changes: + - addForeignKeyConstraint: + baseColumnNames: dossier_template_id + baseTableName: report_template + constraintName: fkkrjyw6ve2b7mx51u3b5rycjnd + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: id + referencedTableName: dossier_template + validate: true + - changeSet: + id: 1637073006104-54 + author: generated + changes: + - addForeignKeyConstraint: + baseColumnNames: dossier_template_id + baseTableName: file_attribute_general_configuration + constraintName: fkr0uxrow0pcqv7vr2ubpgb3n1n + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: id + referencedTableName: dossier_template + validate: true + - changeSet: + id: 1637073006104-55 + author: generated + changes: + - addUniqueConstraint: + columnNames: name, soft_delete_time + constraintName: uknuk7ickn8wqo3d7tlht6t54rn + tableName: dossier_template + - changeSet: + id: 1637073006104-56 + author: generated + changes: + - addForeignKeyConstraint: + baseColumnNames: dossier_id + baseTableName: type + constraintName: fk91xaliks10bcxeq4ayj9nhe0j + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: id + referencedTableName: dossier + validate: true + - changeSet: + id: 1637073006104-57 + author: generated + changes: + - addForeignKeyConstraint: + baseColumnNames: type_id + baseTableName: dictionary_entry + constraintName: fkjvypyl1c3tervasb17cfo7jem + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: id + referencedTableName: type + validate: true + - changeSet: + id: 1637073006104-58 + author: generated + changes: + - addForeignKeyConstraint: + baseColumnNames: dossier_attribute_config_id + baseTableName: dossier_attribute + constraintName: fk22wmu06e3qf086aykg76gt6w7 + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: id + referencedTableName: dossier_attribute_config + validate: true + - changeSet: + id: 1637073006104-59 + author: generated + changes: + - addForeignKeyConstraint: + baseColumnNames: dossier_id + baseTableName: dossier_attribute + constraintName: fkk83uylcssehdfditvgk2fa9p4 + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: id + referencedTableName: dossier + validate: true + - changeSet: + id: 1637073006104-60 + author: generated + changes: + - addForeignKeyConstraint: + baseColumnNames: download_status_entity_storage_id + baseTableName: download_status_files + constraintName: fk6cli6m9rfuethc6c585sgqtn4 + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: storage_id + referencedTableName: download_status + validate: true + - changeSet: + id: 1637073006104-61 + author: generated + changes: + - addForeignKeyConstraint: + baseColumnNames: notification_preferences_entity_user_id + baseTableName: notification_preferences_entity_email_notifications + constraintName: fk2xftlr6al0wsf6fq1ppskut4 + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: user_id + referencedTableName: notification_preference + validate: true + - changeSet: + id: 1637073006104-62 + author: generated + changes: + - addForeignKeyConstraint: + baseColumnNames: notification_preferences_entity_user_id + baseTableName: notification_preferences_entity_in_app_notifications + constraintName: fk64e6qfq7tqad3lknqmqpuxqpq + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: user_id + referencedTableName: notification_preference + validate: true + - changeSet: + id: 1637073006104-63 + author: generated + changes: + - addForeignKeyConstraint: + baseColumnNames: report_templates_template_id + baseTableName: report_template_dossiers + constraintName: fk3kb62ouuk6a59iq1r7gr4ur3n + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: template_id + referencedTableName: report_template + validate: true + - changeSet: + id: 1637073006104-64 + author: generated + changes: + - addForeignKeyConstraint: + baseColumnNames: dossiers_id + baseTableName: report_template_dossiers + constraintName: fkofs9mn4omb19hv7l6fv65qr10 + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: id + referencedTableName: dossier + validate: true + - changeSet: + id: 1637073006104-65 + author: generated + changes: + - addForeignKeyConstraint: + baseColumnNames: file_attribute_config_id + baseTableName: file_attribute + constraintName: fkquex6e59f1witg6lb923d63wm + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: id + referencedTableName: file_attribute_config + validate: true + - changeSet: + id: 1637073006104-66 + author: generated + changes: + - addForeignKeyConstraint: + baseColumnNames: legal_basis_mapping_entity_dossier_template_id + baseTableName: legal_basis_mapping_entity_legal_basis + constraintName: fk5yyp60a6xpg20ojsbs7ihl8b5 + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: dossier_template_id + referencedTableName: legal_basis_mapping + validate: true + - changeSet: + id: 1637073006104-67 + author: generated + changes: + - addForeignKeyConstraint: + baseColumnNames: download_status_entity_storage_id + baseTableName: download_status_entity_download_file_types + constraintName: fkhr05xbu1iw13avcy6kmypepld + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: storage_id + referencedTableName: download_status + validate: true + - changeSet: + id: 1637073006104-68 + author: generated + changes: + - addForeignKeyConstraint: + baseColumnNames: dossier_id + baseTableName: download_status + constraintName: fkp2eq6orj4m91ooi2xwoxvp5jb + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: id + referencedTableName: dossier + validate: true + - changeSet: + id: 1637073006104-69 + author: generated + changes: + - addForeignKeyConstraint: + baseColumnNames: manual_resize_redaction_entity_annotation_id,manual_resize_redaction_entity_file_id + baseTableName: manual_resize_redaction_entity_positions + constraintName: fkf0yltiuicrfxj62kbnq5fi5c8 + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: annotation_id,file_id + referencedTableName: manual_resize_redaction + validate: true + - changeSet: + id: 1637073006104-70 + author: generated + changes: + - addForeignKeyConstraint: + baseColumnNames: dossier_entity_id + baseTableName: dossier_entity_member_ids + constraintName: fk81ksgblpqb6nl1wkc2k5mdwjx + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: id + referencedTableName: dossier + validate: true + - changeSet: + id: 1637073006104-71 + author: generated + changes: + - addForeignKeyConstraint: + baseColumnNames: dossier_entity_id + baseTableName: dossier_entity_approver_ids + constraintName: fkerba9ubbusouj4hx81ea0f575 + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: id + referencedTableName: dossier + validate: true + - changeSet: + id: 1637073006104-72 + author: generated + changes: + - addForeignKeyConstraint: + baseColumnNames: dossier_entity_id + baseTableName: dossier_entity_download_file_types + constraintName: fki6svvomp8334wu1r4a1vtchnp + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: id + referencedTableName: dossier + validate: true + - changeSet: + id: 1637073006104-73 + author: generated + changes: + - addForeignKeyConstraint: + baseColumnNames: manual_redaction_entry_entity_annotation_id,manual_redaction_entry_entity_file_id + baseTableName: manual_redaction_entry_entity_positions + constraintName: fkol1r7vwjc1uvu36p5ju7cj28h + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: annotation_id,file_id + referencedTableName: manual_redaction + validate: true + - changeSet: + id: 1637073006104-74 + author: generated + changes: + - createSequence: + cacheSize: 1 + cycle: false + dataType: bigint + incrementBy: 1 + maxValue: 9223372036854775807 + minValue: 1 + sequenceName: hibernate_sequence + startValue: 1 + - changeSet: + id: 1637073006104-75 + author: generated + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: audit_pkey + name: record_id + type: BIGINT + - column: + name: category + type: VARCHAR(255) + - column: + name: details + type: TEXT + - column: + name: message + type: VARCHAR(4000) + - column: + name: object_id + type: VARCHAR(255) + - column: + name: record_date + type: TIMESTAMP WITHOUT TIME ZONE + - column: + name: user_id + type: VARCHAR(255) + tableName: audit + - changeSet: + id: 1637073006104-76 + author: generated + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: color_configuration_pkey + name: dossier_template_id + type: VARCHAR(255) + - column: + name: analysis_color + type: VARCHAR(255) + - column: + name: default_color + type: VARCHAR(255) + - column: + name: dictionary_request_color + type: VARCHAR(255) + - column: + name: manual_redaction_color + type: VARCHAR(255) + - column: + name: not_redacted + type: VARCHAR(255) + - column: + name: preview_color + type: VARCHAR(255) + - column: + name: request_add + type: VARCHAR(255) + - column: + name: request_remove + type: VARCHAR(255) + - column: + name: updated_color + type: VARCHAR(255) + tableName: color_configuration + - changeSet: + id: 1637073006104-77 + author: generated + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: digital_signature_pkey + name: id + type: VARCHAR(255) + - column: + name: certificate_name + type: VARCHAR(255) + - column: + name: contact_info + type: VARCHAR(255) + - column: + name: location + type: VARCHAR(255) + - column: + name: password + type: VARCHAR(255) + - column: + name: private_key + type: OID + - column: + name: reason + type: VARCHAR(255) + tableName: digital_signature + - changeSet: + id: 1637073006104-78 + author: generated + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: notification_pkey + name: id + type: BIGINT + - column: + name: creation_date + type: TIMESTAMP WITHOUT TIME ZONE + - column: + name: issuer_id + type: VARCHAR(255) + - column: + name: notification_details + type: VARCHAR(255) + - column: + name: notification_type + type: VARCHAR(255) + - column: + name: read_date + type: TIMESTAMP WITHOUT TIME ZONE + - column: + name: seen_date + type: TIMESTAMP WITHOUT TIME ZONE + - column: + name: soft_deleted + type: TIMESTAMP WITHOUT TIME ZONE + - column: + name: target + type: TEXT + - column: + name: user_id + type: VARCHAR(255) + tableName: notification + - changeSet: + id: 1637073006104-79 + author: generated + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: rule_set_pkey + name: dossier_template_id + type: VARCHAR(255) + - column: + name: value + type: TEXT + - column: + name: version + type: BIGINT + tableName: rule_set + - changeSet: + id: 1637073006104-80 + author: generated + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: smtp_configuration_pkey + name: id + type: VARCHAR(255) + - column: + name: auth + type: BOOLEAN + - column: + name: envelope_from + type: VARCHAR(255) + - column: + name: from_email + type: VARCHAR(255) + - column: + name: from_display_name + type: VARCHAR(255) + - column: + name: host + type: VARCHAR(255) + - column: + name: password + type: VARCHAR(255) + - column: + name: port + type: INTEGER + - column: + name: reply_to + type: VARCHAR(255) + - column: + name: reply_to_display_name + type: VARCHAR(255) + - column: + name: ssl + type: BOOLEAN + - column: + name: starttls + type: BOOLEAN + - column: + name: username + type: VARCHAR(255) + tableName: smtp_configuration + - changeSet: + id: 1637073006104-81 + author: generated + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: watermark_configuration_pkey + name: dossier_template_id + type: VARCHAR(255) + - column: + name: font_size + type: INTEGER + - column: + name: font_type + type: VARCHAR(255) + - column: + name: hex_color + type: VARCHAR(255) + - column: + name: opacity + type: INTEGER + - column: + name: orientation + type: VARCHAR(255) + - column: + name: text + type: VARCHAR(4000) + tableName: watermark_configuration + - changeSet: + id: 1637073006104-82 + author: generated + changes: + - addPrimaryKey: + columnNames: file_id, page, user_id + constraintName: viewed_page_pkey + tableName: viewed_page diff --git a/persistence-service-v1/persistence-service-server-v1/src/main/resources/db/changelog/db.changelog-master.yaml b/persistence-service-v1/persistence-service-server-v1/src/main/resources/db/changelog/db.changelog-master.yaml new file mode 100644 index 000000000..d15bc5e72 --- /dev/null +++ b/persistence-service-v1/persistence-service-server-v1/src/main/resources/db/changelog/db.changelog-master.yaml @@ -0,0 +1,3 @@ +databaseChangeLog: + - include: + file: db/changelog/1-initial-schema.changelog.yaml