summaryrefslogtreecommitdiffstats
path: root/doc
diff options
context:
space:
mode:
authorKatja Marttila <katja.marttila@qt.io>2020-11-19 07:25:01 +0200
committerKatja Marttila <katja.marttila@qt.io>2020-12-07 07:36:36 +0200
commite82ab45ed71d9b807dc23eae559c759f4584b79d (patch)
tree1ff8a7379a7c0fbd1908783404babd9b83e4d414 /doc
parentb43ab89a64c6484a8af4be424ab695b956d7f7bc (diff)
Add option to define operations in component.xml
Operations can from now on be declared also in component.xml. The operations are performed, backuped and rollbacked the same way as they would be when defined from scripting api. Task-number: QTIFW-507 Change-Id: Ia509219b94737136c3de25db0cb0c72076b48380 Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io> Reviewed-by: Arttu Tarkiainen <arttu.tarkiainen@qt.io>
Diffstat (limited to 'doc')
-rw-r--r--doc/examples/package.xml13
-rw-r--r--doc/installerfw.qdoc10
-rw-r--r--doc/operations.qdoc20
-rw-r--r--doc/scripting.qdoc2
4 files changed, 42 insertions, 3 deletions
diff --git a/doc/examples/package.xml b/doc/examples/package.xml
index 118adcf73..4248a7e83 100644
--- a/doc/examples/package.xml
+++ b/doc/examples/package.xml
@@ -28,4 +28,17 @@
<ForcedInstallation>false</ForcedInstallation>
<Essential>false</Essential>
<Replaces>com.vendor.root.component2old</Replaces>
+ <Operations>
+ <Operation name="AppendFile">
+ <Argument>@TargetDir@/A.txt</Argument>
+ <Argument>lorem ipsum</Argument>
+ </Operation>
+ <Operation name="Extract">
+ <Argument>@TargetDir@/Folder1</Argument>
+ <Argument>content.7z</Argument>
+ </Operation>
+ <Operation name="Extract">
+ <Argument>@TargetDir@/Folder2</Argument>
+ </Operation>
+ </Operations>
</Package>
diff --git a/doc/installerfw.qdoc b/doc/installerfw.qdoc
index bbdbff09e..22407e17d 100644
--- a/doc/installerfw.qdoc
+++ b/doc/installerfw.qdoc
@@ -918,6 +918,16 @@
\li ExpandedByDefault
\li Set to \c true if you want this item to be expanded by default. Optional.
+ \row
+ \li Operations
+ \li List of operations that are performed when component is installed. To add
+ several operations, specify several \c <Operation> child elements that each
+ specify the operation \c name. \c Operation can have several \c <Argument>
+ child elements depending on the operation to be run. Adding \c <Operations>
+ is an alternative way of defining operations to defining them in scripts.
+ For more information, see \l{Adding Operations}. For a
+ summary of available operations, see \l {Operations}.
+
\endtable
\section2 Component Dependencies
diff --git a/doc/operations.qdoc b/doc/operations.qdoc
index 1fc3c00b8..983985dc7 100644
--- a/doc/operations.qdoc
+++ b/doc/operations.qdoc
@@ -33,8 +33,8 @@
\title Operations
- The operations are prepared by component and controller scripts and performed by the
- installer.
+ The operations are prepared by component and controller scripts or component.xml
+ and performed by the installer.
\note Operations are performed threaded.
Internally, each operation has a \e DO step that contains instructions for
@@ -43,7 +43,19 @@
\section1 Summary of Operations
- The following table summarizes the available operations and their syntax.
+ The following table summarizes the available operations and their syntax in component
+ and controller scripts. Syntax for operations in component.xml is:
+ \code
+ <Operations>
+ <Operation name="operation">
+ <Argument>argument1</Argument>
+ <Argument>argument2</Argument>
+ </Operation>
+ </Operations>
+ \endcode
+ \note The argument order in component.xml is the same as in scripting, except for
+ \c Extract operation where the argument \c archive is optional, and must be defined
+ as the last argument.
\table
\header
@@ -163,6 +175,8 @@
\li Extract
\li "Extract" \c archive \c targetdirectory
\li Extracts \c archive to \c targetdirectory.
+ Extract operations are called before other operations. Note that in component.xml
+ argument \c archive is optional and thus must be defined as the last parameter.
\row
\li GlobalConfig
diff --git a/doc/scripting.qdoc b/doc/scripting.qdoc
index ae90c62c7..ea29e9956 100644
--- a/doc/scripting.qdoc
+++ b/doc/scripting.qdoc
@@ -120,6 +120,8 @@
update operations to the installation from within a script using
component::addOperation(). If you need to run an operation that requires
administrative rights, use component::addElevatedOperation() instead.
+ Alternative way of adding custom operations is to use \c component.xml, see
+ \l{Package Directory}
Operations need to be added before the actual installation step. Override
\l component::createOperations() to register custom operations for a