These scripts are useful to import/export specific items
Note: be sure that there are no other tasks in lib/tasks with the same task name. Rake ignores the namespace (rhconsulting in this case) and uses the task method name. This can cause issues if you have two rake files with the same task names. For example, make sure there are not two instances of the dialogs:export. Even if you specify the namespace rake might choose the wrong task to run
Important
|
Exporting and importing of widgets requires CloudForms 4.1 or ManageIQ Darga or greater releases. |
Option 1) use make commands
-
Get latest files from github
rm -fR cfme-rhconsulting-scripts/ git clone https://github.com/rhtconsulting/cfme-rhconsulting-scripts.git
-
Install files to /var/www/miq/vmdb/lib/tasks
cd cfme-rhconsulting-scripts/ make install
-
Clean install (Removes the files before installing)
cd cfme-rhconsulting-scripts/ make clean-install
Option 2) Copy files manually * Copy the .rake files to /var/www/miq/vmdb/lib/tasks
cd cfme-rhconsulting-scripts/ cp *.rake /var/www/miq/vmdb/lib/tasks/
Usage: miqexport <object_type> <additional_params> <exportdest> This command exports the specified object type into the <exportdest>, which may be a file or directory. <additional_params> may be required depending on the type of object to be exported. Available Object Types: provision_dialogs Export provisioning dialogs. service_dialogs Export service dialogs. service_catalogs Export service catalogs. roles Export user roles. tags Export tags. buttons Export buttons. customization_templates Export customization templates. reports Export custom reports. widgets Export custom widgets. alerts Export alerts. alertsets Export alert sets. policies Export policies. domain <name> Export the specified domain from the Automate Engine Datastore. <name> MUST be specified. Options: -s, --keep-spaces Export filenames with spaces instead of replacing the spaces with underscores. (this preserves old behavior)
Note:
As of version 0.9 spaces in exported filenames are be replaced with
underscores. To preserve the old behavior and keep spaces in the filenames
pass in -s
or --keep-spaces
to the miqexport script.
# export the 'MyCustomDomain' to /tmp, i.e., /tmp/MyCustomDomain miqexport domain MyCustomDomain /tmp # export service dialogs to /tmp/dialogs miqexport service_dialogs /tmp/dialogs
Usage: miqimport <object_type> <additional_params> <importsource> This command imports the specified object type from the <importsource>, which may be a file or directory. <additional_params> may be required depending on the type of object to be imported. Available Object Types: provision_dialogs Import provisioning dialogs. service_dialogs Import service dialogs. service_catalogs Import service catalogs. roles Import user roles. tags Import tags. buttons Import buttons. customization_templates Import customization templates. reports Import custom reports. widgets Import custom widgets. alerts Import alerts. alertsets Import alert sets. policies Import policies. domain <name> Import the specified domain from the <importsource> directory. <name> MUST be specified.
# import 'MyCustomDomain' from /tmp, i.e., /tmp/MyCustomDomain miqimport domain MyCustomDomain /tmp # import service dialogs from /tmp/dialogs miqimport service_dialogs /tmp/dialogs
-
You can do the export by using the
export-miqdomain
script or manually as well.
export-domain Usage: ./export-domain -d CloudFormsDomain -D /path/to/the/directory OPTIONS: -d CloudForms Domain -D Path to the directory -h Displays help
-
To do the export manually, follow the below steps.
BUILDDIR=/tmp/CFME-build DOMAIN_EXPORT=YourDomainHere rm -fR ${BUILDDIR} mkdir -p ${BUILDDIR}/{service_catalogs,dialogs,roles,tags,buttons,customization_templates,policies,alerts,alertsets,widgets,miq_ae_datastore} cd /var/www/miq/vmdb bin/rake rhconsulting:provision_dialogs:export[${BUILDDIR}/provision_dialogs] bin/rake rhconsulting:service_dialogs:export[${BUILDDIR}/service_dialogs] bin/rake rhconsulting:service_catalogs:export[${BUILDDIR}/service_catalogs] bin/rake rhconsulting:roles:export[${BUILDDIR}/roles/roles.yml] bin/rake rhconsulting:tags:export[${BUILDDIR}/tags/tags.yml] bin/rake rhconsulting:buttons:export[${BUILDDIR}/buttons/buttons.yml] bin/rake rhconsulting:customization_templates:export[${BUILDDIR}/customization_templates/customization_templates.yml] bin/rake rhconsulting:miq_policies:export[${BUILDDIR}/policies] bin/rake rhconsulting:miq_alerts:export[${BUILDDIR}/alerts] bin/rake rhconsulting:miq_alertsets:export[${BUILDDIR}/alertsets] bin/rake rhconsulting:miq_widgets:export[${BUILDDIR}/widgets] bin/rake "rhconsulting:miq_ae_datastore:export[${DOMAIN_EXPORT}, ${BUILDDIR}/miq_ae_datastore]"
-
You can do the import by using the
import-miqdomain
script or manually as well.
import-miqdomain Usage: ./import-miqdomain -D /absolute/path/to/the/directory OPTIONS: -D Path to the directory -h Displays help
-
To do the import manually, follow the below steps.
BUILDDIR=/tmp/CFME-build DOMAIN_IMPORT=YourDomainHere cd /var/www/miq/vmdb bin/rake rhconsulting:provision_dialogs:import[${BUILDDIR}/provision_dialogs] bin/rake rhconsulting:service_dialogs:import[${BUILDDIR}/service_dialogs] bin/rake rhconsulting:roles:import[${BUILDDIR}/roles/roles.yml] bin/rake rhconsulting:tags:import[${BUILDDIR}/tags/tags.yml] bin/rake rhconsulting:buttons:import[${BUILDDIR}/buttons/buttons.yml] bin/rake rhconsulting:customization_templates:import[${BUILDDIR}/customization_templates/customization_templates.yml] bin/rake rhconsulting:miq_policies:import[${BUILDDIR}/policies] bin/rake rhconsulting:miq_alerts:import[${BUILDDIR}/alerts] bin/rake rhconsulting:miq_alertsets:import[${BUILDDIR}/alertsets] bin/rake rhconsulting:miq_widgets:import[${BUILDDIR}/widgets] bin/rake rhconsulting:service_catalogs:import[${BUILDDIR}/service_catalogs] bin/rake "rhconsulting:miq_ae_datastore:import[${DOMAIN_IMPORT}, ${BUILDDIR}/miq_ae_datastore]" bin/rake rhconsulting:service_catalogs:import[${BUILDDIR}/service_catalogs]
Note
|
Service Catalogs should be imported last as they reference Dialogs and the Automate Domain(s). |
-
Jose Simonelli (jose@redhat.com)
-
Lester Claudio (claudiol@redhat.com)
-
George Goh (george.goh@redhat.com)
-
Brant Evans (bevans@redhat.com)