Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Traditional packaging requires users to maintain a reference database, but often this is expensive and cumbersome to manage. Using an Oracle Ephemeral Database eliminates the need to manage an additional database on the pipeline. A default installation requires the use a Reference Database. You simply configure Liquibase to When using Oracle PDBs, configuration can be setup to have Liquibase create a temporary copy of a database in the pipeline to be used in place of the Reference Database. Once the copy is made you will ensure that all of your changes work on the copy, implement them on your original database’s changelog, and then destroy the database copy. Follow this guide to learn how to implement this workflow.

...

Property Name

Description

oracleEphemeralSourceName

[Optional]

defines

Defines a source name for an Oracle source PDB

  • if not provided we will try to get it ourselves from a DB

  • validation - it

    in the event Liquibase has not been granted the necessary permissions to query for this name.

    Necessary permissions are included below. If these grants are not present, oracleEphemeralSourceName will be required.

    • Multi-schema projects: GRANT SELECT ANY DICTIONARY TO DATICAL_ROLE;

    • Single schema projects Liquibase requires either:

      • GRANT SELECT ANY DICTIONARY TO DATICAL_SCHEMA_OWNER_ROLE;

      • Or GRANT SELECT ON DBA_SYS_PRIVS TO DATICAL_SCHEMA_OWNER_ROLE;, GRANT SELECT ON DBA_ROLE_PRIVS TO DATICAL_SCHEMA_OWNER_ROLE;, and GRANT SELECT ON DBA_COL_PRIVS TO DATICAL_SCHEMA_OWNER_ROLE;

    • See Roles and Permissions for Liquibase Enterprise on Oracle Database for further information on permissions.

    Property Validation: Source name should up to 30 characters long, contain no spaces [ ], slashes [/] and semicolons [;],

    also it can’t start from

    and cannot begin with a number.

    oracleEphemeralCopyName

    [Optional]

    1. defines a name for an Oracle copy PDB

    2. if not provided we will try to get a source PDB name from a DB and add _eph postfix to it, so if original bucket name was bucket_01, copied bucket name will be bucket_01_eph

    3. validation - it should up to 30 characters long, contain no spaces [ ], slashes [/] and semicolons [;], also it can’t start from a number

    oracleEphemeralDatabaseLinkName

    [Optional]

    1. defines a name for a database link which is used in BackupRestoreOracleEphemeralExternalPdb

    2. if not provided a default name is used which is liquibase_db_link

    3. validation - it should up to 128 characters long, contain no spaces [ ], slashes [/] and semicolons [;], also it can’t start from a number

    oracleEphemeralCopyWithData

    [Optional] By default we do not copy databases with data. If you would like to copy both the structure and data, you will use this property.

    1. a boolean flag to turn on making a copy with data

    2. by default it is false and we make a copy of the PDB without data (in other words we copy tables, but do not copy their content, the only table for which we copy content is our tracking DATABASECHANGELOG table)

    oracleEphemeralSkipFinalDeploy

    [Optional] This property allows you to:

    • package

    • run SQL rules

    • create the ephemeral database copy

    • package changes onto the ephemeral database

    • drop the ephemeral database

    • And then SKIP the final deploy of the ephemeral database changes to the dev database.

    • a boolean flag to turn off final deploy during packager to be able to skip final deployment after packaging, so our customer can package files and skip deployment to any DB

    • by default is false and we make a final deploy, which is a default packager behaviour

    ...