diff --git a/README.md b/README.md index 3c4e3e83b..7dcd398c3 100644 --- a/README.md +++ b/README.md @@ -218,6 +218,14 @@ In the example above, the `Target` attribute is specified three different ways, One of the primary goals of the WebLogic Deploy Tooling is to support a sparse model where the user can specify just the configuration needed for a particular situation. What this implies varies somewhat between the tools but, in general, this implies that the tools are using an additive model. That is, the tools add to what is already there in the existing domain or domain templates (when creating a new domain) rather than making the domain conform exactly to the specified model. Where it makes sense, a similar, additive approach is taken when setting the value of multi-valued attributes. For example, if the model specified the cluster `mycluster` as the target for an artifact, the tooling will add `mycluster` to any existing list of targets for the artifact. While the development team has tried to mark attributes that do not make sense to merge accordingly in our knowledge base, this behavior can be disabled on an attribute-by-attribute basis, by adding an additional annotation in the knowledge base data files. The development team is already thinking about how to handle situations that require a non-additive, converge-to-the-model approach, and how that might be supported, but this still remains a wish list item. Users with these requirements should raise an issue for this support. +### Using Multiple Models + +The Create Domain, Update Domain, Deploy Applications, and Validate Model tools allow the specification of multiple models on the command line. For example: + + weblogic-deploy\bin\createDomain.cmd -model_file modelOne,modelTwo,modelThree ... + +In this case, the models are merged into a single model before being applied. Each successive model is layered onto the previous ones, so any existing values from the previous models are overwritten. The resulting model is then verified before being applied. + ## Downloading and Installing the Software The Oracle WebLogic Server Deploy Tooling project repository is located at [`https://github.com/oracle/weblogic-deploy-tooling`](https://github.com/oracle/weblogic-deploy-tooling). Binary distributions of the `weblogic-deploy.zip` installer can be downloaded from the [GitHub Releases page](https://github.com/oracle/weblogic-deploy-tooling/releases). To install the software, simply unzip the `weblogic-deploy.zip` installer on a machine that has the desired versions of WebLogic Server installed. After being unzipped, the software is ready to use, just set the `JAVA_HOME` environment variable to point to a Java 7 or higher JDK and the shell scripts are ready to run. diff --git a/core/src/main/python/wlsdeploy/util/cla_helper.py b/core/src/main/python/wlsdeploy/util/cla_helper.py index cadfad255..d7f367bd4 100644 --- a/core/src/main/python/wlsdeploy/util/cla_helper.py +++ b/core/src/main/python/wlsdeploy/util/cla_helper.py @@ -12,7 +12,6 @@ from wlsdeploy.util import cla_utils from wlsdeploy.util.cla_utils import CommandLineArgUtil from wlsdeploy.util.model_translator import FileToPython -from wlsdeploy.yaml.yaml_translator import PythonToYaml import oracle.weblogic.deploy.util.PyOrderedDict as OrderedDict @@ -130,8 +129,6 @@ def merge_model_files(model_file_value): model = FileToPython(model_file, True).parse() _merge_dictionaries(merged_model, model) - PythonToYaml(merged_model).write_to_yaml_file("C:/tmp/mergedModel.yaml") - return merged_model diff --git a/site/create.md b/site/create.md index c05cae8ed..10e552926 100644 --- a/site/create.md +++ b/site/create.md @@ -23,4 +23,10 @@ It is also possible to specify the connection information in the model instead o To create more complex domains, it may be necessary to create a custom domain type. This is useful for cases where the domain has custom templates, or templates for other Oracle products. For more information, refer to [Domain Type Definitions](type_def.md). -One last note is that if the model or variables file contains encrypted passwords, add the `-use_encryption` flag to the command line to tell the Create Domain Tool that encryption is being used and to prompt for the encryption passphrase. As with the database passwords, the tool can also read the passphrase from standard input (for example, `stdin`) to allow the tool to run without any user input. +### Using an Encrypted Model + +If the model or variables file contains encrypted passwords, add the `-use_encryption` flag to the command line to tell the Create Domain Tool that encryption is being used and to prompt for the encryption passphrase. As with the database passwords, the tool can also read the passphrase from standard input (for example, `stdin`) to allow the tool to run without any user input. + +### Using Multiple Models + +The Create Domain Tool supports the use of multiple models, as described in [Using Multiple Models](../README.md#using-multiple-models). diff --git a/site/deploy.md b/site/deploy.md index ce2314d25..2e4d3d94b 100644 --- a/site/deploy.md +++ b/site/deploy.md @@ -29,3 +29,6 @@ When running the tool in WLST online mode, the deploy operation may require serv - `102` - The servers impacted by the deploy operation need to be restarted, in a rolling fashion, starting with the Administration Server, if applicable. - `103` - The entire domain needs to be restarted. +### Using Multiple Models + +The Deploy Applications Tool supports the use of multiple models, as described in [Using Multiple Models](../README.md#using-multiple-models). diff --git a/site/update.md b/site/update.md index dfc9e2f43..a8e838fcf 100644 --- a/site/update.md +++ b/site/update.md @@ -23,3 +23,7 @@ When running the tool in WLST online mode, the update operation may require serv - `101` - The domain needs to be restarted and the Update Domain Tool needs to be re-invoked with the same arguments. - `102` - The servers impacted by the update operation need to be restarted, in a rolling fashion, starting with the Administration Server, if applicable. - `103` - The entire domain needs to be restarted. + +### Using Multiple Models + +The Update Domain Tool supports the use of multiple models, as described in [Using Multiple Models](../README.md#using-multiple-models). diff --git a/site/validate.md b/site/validate.md index 4feb5a631..a1e6044cc 100644 --- a/site/validate.md +++ b/site/validate.md @@ -100,3 +100,6 @@ Results in output similar to that shown below, if the `simpleear.ear` file is no Errors: 1 Message: Model location appDeployments:/Application/simpleear/SourcePath references file wlsdeploy/applications/simpleear.ear that is not found in the archive file D:/demo/InvalidDemoDomain.zip +### Using Multiple Models + +The Validate Model Tool supports the use of multiple models, as described in [Using Multiple Models](../README.md#using-multiple-models).