"create-subsetting-policy-create-schema-source-from-target-details"
*******************************************************************

* Description

* Usage

* Required Parameters

* Optional Parameters

* Global Parameters

* Example using required parameter


Description
===========

Creates a new subsetting policy and associates it with a sensitive
data model or a target database.

To use a sensitive data model as the source of subsetting schemas, set
the schemaSource attribute to SENSITIVE_DATA_MODEL and provide the
sensitiveDataModelId attribute. In this case, the target database
associated with the sensitive data model is used for subsetting rules
validations.

You can also create a subsetting policy without using a sensitive data
model. In this case, you need to associate your subsetting policy with
a target database by setting the schemaSource attribute to TARGET and
providing the targetId attribute. The specified target database is
used for subsetting rules validations.

After creating a subsetting policy, you can use the
CreateSubsettingRule operation to manually add subsetting rules to the
policy.


Usage
=====

   oci data-safe subsetting-policy create-subsetting-policy-create-schema-source-from-target-details [OPTIONS]


Required Parameters
===================

--compartment-id, -c [text]

The OCID of the compartment where the subsetting policy should be
created

--schema-source-target-id [text]

The OCID of the target database that’s used as the source of
subsetting schemas


Optional Parameters
===================

--defined-tags [complex type]

Defined tags for this resource. Each key is predefined and scoped to a
namespace. For more information, see Resource Tags Example:
*{“Operations”: {“CostCenter”: “42”}}* This is a complex type whose
value must be valid JSON. The value can be provided as a string on the
command line or passed in as a file using the file://path/to/file
syntax.

The "--generate-param-json-input" option can be used to generate an
example of the JSON which must be provided. We recommend storing this
example in a file, modifying it as needed and then passing it back in
via the file:// syntax.

--description [text]

The description of the subsetting policy

--display-name [text]

The display name of the subsetting policy. The name does not have to
be unique, and it’s changeable

--freeform-tags [complex type]

Free-form tags for this resource. Each tag is a simple key-value pair
with no predefined name, type, or namespace. For more information, see
Resource Tags

Example:

   {"Department": "Finance"}

This is a complex type whose value must be valid JSON. The value can
be provided as a string on the command line or passed in as a file
using the file://path/to/file syntax.

The "--generate-param-json-input" option can be used to generate an
example of the JSON which must be provided. We recommend storing this
example in a file, modifying it as needed and then passing it back in
via the file:// syntax.

--from-json [text]

Provide input to this command as a JSON document from a file using the
file://path-to/file syntax.

The "--generate-full-command-json-input" option can be used to
generate a sample json file to be used with this command option. The
key names are pre-populated and match the command option names
(converted to camelCase format, e.g. compartment-id –> compartmentId),
while the values of the keys need to be populated by the user before
using the sample file as an input to this command. For any command
option that accepts multiple values, the value of the key can be a
JSON array.

Options can still be provided on the command line. If an option exists
in both the JSON document and the command line then the command line
specified value will be used.

For examples on usage of this option, please see our “using CLI with
advanced JSON options” link: https://docs.cloud.oracle.com/iaas/Conte
nt/API/SDKDocs/cliusing.htm#AdvancedJSONOptions

--is-redo-logging-enabled [boolean]

Indicates if redo logging is enabled during a subsetting operation.
It’s disabled by default. Set this attribute to true to enable redo
logging. By default, subsetting disables redo logging and flashback
logging to purge any original data from logs. However, in certain
circumstances when you only want to test subsetting, rollback changes,
and retry subsetting, you could enable logging and use a flashback
database to retrieve the original data after it has been subsetted

--is-refresh-stats-enabled [boolean]

Indicates if statistics gathering is enabled. It’s enabled by default.
Set this attribute to false to disable statistics gathering. The
subsetting process gathers statistics on subsetted database tables
after subsetting completes

--masking-policy-id [text]

The OCID of the masking policy to associate with this subsetting
policy

--max-wait-seconds [integer]

The maximum time to wait for the work request to reach the state
defined by "--wait-for-state". Defaults to 1200 seconds.

--parallel-degree [text]

Specifies options to enable parallel execution when running data
subsetting. Allowed values are ‘NONE’ (no parallelism), ‘DEFAULT’ (the
Oracle Database computes the optimum degree of parallelism) or an
integer value to be used as the degree of parallelism. Parallel
execution helps effectively use multiple CPUs and improve subsetting
performance. Refer to the Oracle Database parallel execution framework
when choosing an explicit degree of parallelism

--post-subsetting-script [text]

A post-subsetting script, which can contain SQL and PL/SQL statements.
It’s executed after the subsetting process. It’s usually used to
perform additional transformation or cleanup work after subsetting
data.

--pre-subsetting-script [text]

A pre-subsetting script, which can contain SQL and PL/SQL statements.
It’s executed before the subsetting process. It’s usually used to
perform any preparation or prerequisite work before subsetting data.

--recompile [text]

Specifies how to recompile invalid objects post data subsetting.
Allowed values are ‘SERIAL’ (recompile in serial), ‘PARALLEL’
(recompile in parallel), ‘NONE’ (do not recompile). If it’s set to
PARALLEL, the value of parallelDegree attribute is used. Use the
built-in UTL_RECOMP package to recompile any remaining invalid objects
after subsetting completes

--schema-source-schemas-for-subsetting [complex type]

The schemas to be subsetted This is a complex type whose value must be
valid JSON. The value can be provided as a string on the command line
or passed in as a file using the file://path/to/file syntax.

The "--generate-param-json-input" option can be used to generate an
example of the JSON which must be provided. We recommend storing this
example in a file, modifying it as needed and then passing it back in
via the file:// syntax.

--unrelated-tables-action [text]

Strategy to be applied for tables which are not impacted by any of the
subsetting rules

--wait-for-state [text]

This operation asynchronously creates, modifies or deletes a resource
and uses a work request to track the progress of the operation.
Specify this option to perform the action and then wait until the work
request reaches a certain state. Multiple states can be specified,
returning on the first state. For example, "--wait-for-state" ACCEPTED
"--wait-for-state" SUSPENDED would return on whichever lifecycle state
is reached first. If timeout is reached, a return code of 2 is
returned. For any other error, a return code of 1 is returned.

Accepted values are:

   ACCEPTED, CANCELED, CANCELING, FAILED, IN_PROGRESS, SUCCEEDED, SUSPENDED, SUSPENDING

--wait-interval-seconds [integer]

Check every "--wait-interval-seconds" to see whether the work request
has reached the state defined by "--wait-for-state". Defaults to 30
seconds.


Global Parameters
=================

Use "oci --help" for help on global parameters.

"--auth-purpose", "--auth", "--cert-bundle", "--cli-auto-prompt", "--
cli-rc-file", "--config-file", "--connection-timeout", "--debug", "--
defaults-file", "--enable-dual-stack", "--enable-propagation", "--
endpoint", "--federation-endpoint", "--generate-full-command-json-
input", "--generate-param-json-input", "--help", "--latest-version", "
--max-retries", "--no-retry", "--opc-client-request-id", "--opc-
request-id", "--output", "--profile", "--proxy", "--query", "--raw-
output", "--read-timeout", "--realm-specific-endpoint", "--region", "
--release-info", "--request-id", "--version", "-?", "-d", "-h", "-i",
"-v"


Example using required parameter
================================

Copy the following CLI commands into a file named example.sh. Run the
command by typing “bash example.sh” and replacing the example
parameters with your own.

Please note this sample will only work in the POSIX-compliant bash-
like shell. You need to set up the OCI configuration and appropriate
security policies before trying the examples.

       export compartment_id=<substitute-value-of-compartment_id> # https://docs.cloud.oracle.com/en-us/iaas/tools/oci-cli/latest/oci_cli_docs/cmdref/data-safe/subsetting-policy/create-subsetting-policy-create-schema-source-from-target-details.html#cmdoption-compartment-id
       export schema_source_target_id=<substitute-value-of-schema_source_target_id> # https://docs.cloud.oracle.com/en-us/iaas/tools/oci-cli/latest/oci_cli_docs/cmdref/data-safe/subsetting-policy/create-subsetting-policy-create-schema-source-from-target-details.html#cmdoption-schema-source-target-id

       oci data-safe subsetting-policy create-subsetting-policy-create-schema-source-from-target-details --compartment-id $compartment_id --schema-source-target-id $schema_source_target_id
