[ Index ]

PHP Cross Reference of Unnamed Project

title

Body

[close]

/se3-wpkg/sources/wpkg/xsd/ -> packages.xsd (source)

   1  <?xml version="1.0" encoding="UTF-8"?>
   2  <xsd:schema targetNamespace="http://www.wpkg.org/packages"
   3      elementFormDefault="unqualified"
   4      xmlns:xsd="http://www.w3.org/2001/XMLSchema"
   5      xmlns="http://www.wpkg.org/packages"
   6      xmlns:wpkg="http://www.wpkg.org/wpkg">
   7  
   8      <xsd:import namespace="http://www.wpkg.org/wpkg" schemaLocation="wpkg.xsd">
   9          <xsd:annotation>
  10              <xsd:documentation>
  11                  Include WPKG master definition.
  12              </xsd:documentation>
  13          </xsd:annotation>
  14      </xsd:import>
  15  
  16      <xsd:element name="packages" type="packages"></xsd:element>
  17  
  18      <xsd:complexType name="packages">
  19          <xsd:annotation>
  20              <xsd:documentation>
  21                  Specifies how the packages element is built up (list of
  22                  package elements).
  23              </xsd:documentation>
  24          </xsd:annotation>
  25          <xsd:sequence minOccurs="0" maxOccurs="unbounded">
  26              <xsd:element name="package" type="package"></xsd:element>
  27          </xsd:sequence>
  28      </xsd:complexType>
  29  
  30      <xsd:complexType name="package">
  31          <xsd:annotation>
  32              <xsd:documentation>
  33                  Specifies how the package element is build up (list of
  34                  checks, commands and downloads).
  35              </xsd:documentation>
  36          </xsd:annotation>
  37          <xsd:choice maxOccurs="unbounded" minOccurs="0">
  38              <xsd:element name="variable" type="wpkg:variable">
  39                  <xsd:annotation>
  40                      <xsd:documentation>
  41                          Define an environment variable which is valid
  42                          during package execution. Variables can be used
  43                          within other variables, commands and checks.
  44                      </xsd:documentation>
  45                  </xsd:annotation>
  46              </xsd:element>
  47              <xsd:element name="check" type="wpkg:check">
  48                  <xsd:annotation>
  49                      <xsd:documentation>
  50                          Define checks which are used to verify whether a
  51                          package has been applied properly to the target
  52                          system.
  53                      </xsd:documentation>
  54                  </xsd:annotation>
  55              </xsd:element>
  56              <xsd:element name="commands" type="commands">
  57                  <xsd:annotation>
  58                      <xsd:documentation>
  59                          Define a list of commands to be executed for
  60                          installation/upgrade/downgrade/remove.
  61                      </xsd:documentation>
  62                  </xsd:annotation>
  63              </xsd:element>
  64  
  65              <xsd:element name="install" type="command">
  66                  <xsd:annotation>
  67                      <xsd:documentation>
  68                          Define a command which is executed during
  69                          package installation.
  70  
  71                          This is still supported but in the future
  72                          commands shall be grouped within the commands
  73                          sub-node. Please regard the install node as
  74                          deprecated. It might be removed in future WPKG
  75                          releases.
  76                      </xsd:documentation>
  77                  </xsd:annotation>
  78              </xsd:element>
  79              <xsd:element name="upgrade" type="command">
  80                  <xsd:annotation>
  81                      <xsd:documentation>
  82                          Define a comamnd which is executed during
  83                          package upgrade.
  84  
  85                          This is still supported but in the future
  86                          commands shall be grouped within the commands
  87                          sub-node. Please regard the upgrade node as
  88                          deprecated. It might be removed in future WPKG
  89                          releases.
  90                      </xsd:documentation>
  91                  </xsd:annotation>
  92              </xsd:element>
  93              <xsd:element name="downgrade" type="command">
  94                  <xsd:annotation>
  95                      <xsd:documentation>
  96                          Define a comamnd which is executed during
  97                          package downgrade.
  98  
  99                          This is still supported but in the future
 100                          commands shall be grouped within the commands
 101                          sub-node. Please regard the downgrade node as
 102                          deprecated. It might be removed in future WPKG
 103                          releases.
 104                      </xsd:documentation>
 105                  </xsd:annotation>
 106              </xsd:element>
 107              <xsd:element name="remove" type="command">
 108                  <xsd:annotation>
 109                      <xsd:documentation>
 110                          Define a command which is executed during
 111                          package removal.
 112  
 113                          This is still supported but in the future
 114                          commands shall be grouped within the commands
 115                          sub-node. Please regard the remove node as
 116                          deprecated. It might be removed in future WPKG
 117                          releases.
 118                      </xsd:documentation>
 119                  </xsd:annotation>
 120              </xsd:element>
 121              <xsd:element name="download" type="download">
 122                  <xsd:annotation>
 123                      <xsd:documentation>
 124                          Specify a list of 'global' downloads. These
 125                          downloads will be processes before each package
 126                          command (like install, upgrade, downgrade,
 127                          remove).
 128  
 129                          Please consider this as deprecated. It's
 130                          recommended to use the download sub-node of a
 131                          command in order to specify downloads. This also
 132                          allows one to specify downloads which are not
 133                          executed when not needed.
 134                      </xsd:documentation>
 135                  </xsd:annotation>
 136              </xsd:element>
 137  
 138              <xsd:element name="depends" type="wpkg:packageReference">
 139                  <xsd:annotation>
 140                      <xsd:documentation>
 141                          Specify a dependency between this and another
 142                          package. The package referenced is a
 143                          pre-requirement to install this package.
 144                      </xsd:documentation>
 145                  </xsd:annotation>
 146              </xsd:element>
 147              <xsd:element name="include" type="wpkg:packageReference">
 148                  <xsd:annotation>
 149                      <xsd:documentation>
 150                          Specify that this package includes another
 151                          package into the package tree. Note that this is
 152                          different from a dependency in the sense that
 153                          the package included does not need to be
 154                          installed BEFORE this package is applied.
 155  
 156                          A package which is included is just added to the
 157                          tree in the same way as it would when it's
 158                          applied to the profile. It will be executed in
 159                          order of priority.
 160  
 161                          Please consider specifying a dependency rather
 162                          than an include whenever possible.
 163                      </xsd:documentation>
 164                  </xsd:annotation>
 165              </xsd:element>
 166              <xsd:element name="chain" type="wpkg:packageReference">
 167                  <xsd:annotation>
 168                      <xsd:documentation>
 169                          Specify a package which is installed/verified
 170                          right after applying this package.
 171                      </xsd:documentation>
 172                  </xsd:annotation>
 173              </xsd:element>
 174          </xsd:choice>
 175          <xsd:attribute name="id" type="xsd:string" use="required">
 176              <xsd:annotation>
 177                  <xsd:documentation>
 178                      Package identification. Needs to be a unique ID
 179                      among all the packages. The package ID is
 180                      case-sensitive unless the /ignoreCase switch is
 181                      passed to wpkg.js.
 182  
 183                      Example:
 184  
 185                      'pidgin'
 186                  </xsd:documentation>
 187              </xsd:annotation>
 188          </xsd:attribute>
 189          <xsd:attribute name="name" type="xsd:string" use="required">
 190              <xsd:annotation>
 191                  <xsd:documentation>
 192                      Descriptive name of the package. e.g. 'Pidgin
 193                      multi-protocol instant messenger'
 194                  </xsd:documentation>
 195              </xsd:annotation>
 196          </xsd:attribute>
 197          <xsd:attribute name="revision" type="xsd:string"
 198              use="optional">
 199              <xsd:annotation>
 200                  <xsd:documentation>
 201                      Revision of the package.
 202  
 203                      WPKG allows to specify a versions in quite flexible
 204                      format. It is important to know how versions are
 205                      compared in order to know whether WPKG needs to
 206                      perform an upgrade or a downgrade.
 207  
 208                      Here are some notes about version comparison:
 209  
 210                      Some version number contain appendices to the
 211                      version string indicating 'volatile' versions like
 212                      'pre releases'. For example some packages use
 213                      versions like '1.0RC1' or '1.0alpha2'. Usually a
 214                      version like '1.0RC1' would be considered to be
 215                      newer than '1.0' by the algorithm but in case of
 216                      'RC' versions this would be wrong. To handle such
 217                      cases a number of strings are defined in order to
 218                      define such volatile releases.
 219  
 220                      The list of prefixes is defined in the global
 221                      volatileReleaseMarker array.
 222  
 223                      Valid comparisons include: A B Result '1' '2' B is
 224                      newer '1' '15' B is newer '1.0' '1.2.b' B is newer
 225                      '1.35' '1.35-2' B is newer '1.35-2' '1.36' B is
 226                      newer '1.35R3' '1.36' B is newer '1' '1.0.00.0000'
 227                      Versions are equal '1' '1.0' Versions are equal
 228                      '1.35' '1.35-2' B is newer '1.35-2' '1.35' A is
 229                      newer '1.35R3' '1.36R4' B is newer '1.35-2'
 230                      '1.35-2.0' Versions are equal '1.35.1' '1.35.1.0'
 231                      Versions are equal '1.3RC2' '1.3' B is newer
 232                      (special case where A is an 'RC' version) '1.5'
 233                      '1.5I3656' A is newer (B is an 'I'/integration
 234                      version) '1.5' '1.5M3656' A is newer (B is an
 235                      'M'/milestone version) '1.5' '1.5u3656' B is newer
 236                      (B is an update version)
 237  
 238                      This attribute is optional. Defaults to 0.
 239                  </xsd:documentation>
 240              </xsd:annotation>
 241          </xsd:attribute>
 242          <xsd:attribute name="priority" type="xsd:int" use="optional">
 243              <xsd:annotation>
 244                  <xsd:documentation>
 245                      Package priority. Packages with higher priorities
 246                      are installed first. Optional. Defaults to 0.
 247                  </xsd:documentation>
 248              </xsd:annotation>
 249          </xsd:attribute>
 250          <xsd:attribute name="reboot" use="optional">
 251              <xsd:annotation>
 252                  <xsd:documentation>
 253                      Specify if a reboot should be initiated after
 254                      package installation. Valid values:
 255  
 256                      true: reboot immediately after package actions have
 257                      been executed.
 258  
 259                      false: do not reboot after executing commands.
 260  
 261                      postponed: reboot after all packages have been
 262                      installed (not after this one but schedule reboot to
 263                      WPKG termination).
 264                  </xsd:documentation>
 265              </xsd:annotation>
 266              <xsd:simpleType>
 267                  <xsd:restriction base="xsd:string">
 268                      <xsd:enumeration value="true"></xsd:enumeration>
 269                      <xsd:enumeration value="false"></xsd:enumeration>
 270                      <xsd:enumeration value="postponed"></xsd:enumeration>
 271                  </xsd:restriction>
 272              </xsd:simpleType>
 273          </xsd:attribute>
 274          <xsd:attribute name="execute" use="optional">
 275              <xsd:annotation>
 276                  <xsd:documentation>
 277                      Specify how the package should be executed:
 278  
 279                      always: Execute on each synchronization - regardless
 280                      of the current install state or the result of any
 281                      defined checks.
 282  
 283                      changed: Execute on each synchronization but only if
 284                      there are other changes done to the system.
 285  
 286                      once: Execute only once. No checks will be executed
 287                      on following synchronization requests unless the
 288                      package version on the server side is changed.
 289                  </xsd:documentation>
 290              </xsd:annotation>
 291              <xsd:simpleType>
 292                  <xsd:restriction base="xsd:string">
 293                      <xsd:enumeration value="default"></xsd:enumeration>
 294                      <xsd:enumeration value="once"></xsd:enumeration>
 295                      <xsd:enumeration value="always"></xsd:enumeration>
 296                      <xsd:enumeration value="changed"></xsd:enumeration>
 297                  </xsd:restriction>
 298              </xsd:simpleType>
 299          </xsd:attribute>
 300          <xsd:attribute name="notify" type="xsd:boolean"
 301              use="optional">
 302              <xsd:annotation>
 303                  <xsd:documentation>
 304                      Specify if the user should be notified about the
 305                      installation of packages due to this package.
 306                  </xsd:documentation>
 307              </xsd:annotation>
 308          </xsd:attribute>
 309          <xsd:attribute name="precheck-install">
 310              <xsd:annotation>
 311                  <xsd:documentation>
 312                      Defines how package checks are used during package
 313                      installation.
 314  
 315                      Currently supported values:
 316  
 317                      always (default): When a package is new to the host
 318                      then first the checks are run in order to verify
 319                      whether the package is already installed. If the
 320                      checks succeed then it is assumed that no further
 321                      installation is needed. The package is silently
 322                      added to the host without executing any commands.
 323  
 324                      never: When a package is new to the host then the
 325                      install commands are run in any case (without doing
 326                      checks first). Note: Checks will still be done after
 327                      package installation to verify whether installation
 328                      was successful.
 329                  </xsd:documentation>
 330              </xsd:annotation>
 331              <xsd:simpleType>
 332                  <xsd:restriction base="xsd:string">
 333                      <xsd:enumeration value="always"></xsd:enumeration>
 334                      <xsd:enumeration value="never"></xsd:enumeration>
 335                  </xsd:restriction>
 336              </xsd:simpleType>
 337          </xsd:attribute>
 338          <xsd:attribute name="precheck-remove">
 339              <xsd:annotation>
 340                  <xsd:documentation>
 341                      Defines how package checks are used during package
 342                      removal.
 343  
 344                      Currently supported values:
 345  
 346                      always: When a package is removed from a host then
 347                      the checks will be executed before removal is
 348                      processes. If the checks fail this potentially means
 349                      that the package has been removed already. In such
 350                      case the package remove commands will be skipped.
 351  
 352                      never (default): When a package is about to be
 353                      removed from the host then WPKG will execute the
 354                      remove commands in any case without executing the
 355                      checks first. Note: Checks will still be done after
 356                      package removal to verify whether the removal was
 357                      successful.
 358                  </xsd:documentation>
 359              </xsd:annotation>
 360              <xsd:simpleType>
 361                  <xsd:restriction base="xsd:string">
 362                      <xsd:enumeration value="always"></xsd:enumeration>
 363                      <xsd:enumeration value="never"></xsd:enumeration>
 364                  </xsd:restriction>
 365              </xsd:simpleType>
 366          </xsd:attribute>
 367          <xsd:attribute name="precheck-upgrade">
 368              <xsd:annotation>
 369                  <xsd:documentation>
 370                      Defines how package checks are used during package
 371                      upgrade.
 372  
 373                      Currently supported values:
 374  
 375                      always: When a package is upgraded the checks
 376                      specified will be be executed before the upgrade
 377                      takes place. If checks succeed, then the upgrade
 378                      will not be performed (WPKG just assumes that the
 379                      new version is already applied correctly. Please
 380                      note that your checks shall verify a specific
 381                      software version and not just a generic check which
 382                      is true for all versions. If your checks are true
 383                      for the old version too then WPKG would never
 384                      perform the upgrade in this mode.
 385  
 386                      never (default): When a package is about to be
 387                      upgraded then WPKG will execute the upgrade commands
 388                      in any case without executing the checks first. This
 389                      is the recommended behavior. Note: Checks will still
 390                      be done after package upgrade to verify whether the
 391                      upgrade was successful.
 392                  </xsd:documentation>
 393              </xsd:annotation>
 394              <xsd:simpleType>
 395                  <xsd:restriction base="xsd:string">
 396                      <xsd:enumeration value="always"></xsd:enumeration>
 397                      <xsd:enumeration value="never"></xsd:enumeration>
 398                  </xsd:restriction>
 399              </xsd:simpleType>
 400          </xsd:attribute>
 401          <xsd:attribute name="precheck-downgrade">
 402              <xsd:annotation>
 403                  <xsd:documentation>
 404                      Defines how package checks are used during package
 405                      downgrade.
 406  
 407                      Currently supported values:
 408  
 409                      always: When a package is downgraded the checks
 410                      specified will be be executed before the downgrade
 411                      takes place. If checks succeed, then the downgrade
 412                      will not be performed (WPKG just assumes that the
 413                      old version is already applied correctly. Please
 414                      note that your checks shall verify a specific
 415                      software version and not just a generic check which
 416                      is true for all versions. If your checks are true
 417                      for the new/current version too then WPKG would
 418                      never perform the downgrade in this mode.
 419  
 420                      never (default): When a package is about to be
 421                      downgraded then WPKG will execute the downgrade
 422                      commands in any case without executing the checks
 423                      first. This is the recommended behavior. Note:
 424                      Checks will still be done after package downgrade to
 425                      verify whether the downgrade was successful.
 426                  </xsd:documentation>
 427              </xsd:annotation>
 428              <xsd:simpleType>
 429                  <xsd:restriction base="xsd:string">
 430                      <xsd:enumeration value="always"></xsd:enumeration>
 431                      <xsd:enumeration value="never"></xsd:enumeration>
 432                  </xsd:restriction>
 433              </xsd:simpleType>
 434          </xsd:attribute>
 435      </xsd:complexType>
 436  
 437      <xsd:complexType name="commands">
 438          <xsd:sequence minOccurs="1" maxOccurs="unbounded">
 439              <xsd:element name="command" type="command">
 440                  <xsd:annotation>
 441                      <xsd:documentation>
 442                          Specify any numer of commands for any type of
 443                          command.
 444                      </xsd:documentation>
 445                  </xsd:annotation>
 446              </xsd:element>
 447          </xsd:sequence>
 448      </xsd:complexType>
 449  
 450  
 451      <xsd:complexType name="commandInstall">
 452          <xsd:annotation>
 453              <xsd:documentation>
 454                  Defines an installation command.
 455              </xsd:documentation>
 456          </xsd:annotation>
 457          <xsd:complexContent>
 458              <xsd:restriction base="command">
 459                  <xsd:attribute name="type" type="xsd:string"
 460                      fixed="install" use="required">
 461                  </xsd:attribute>
 462                  <xsd:attribute name="cmd" type="xsd:string"
 463                      use="required">
 464                  </xsd:attribute>
 465              </xsd:restriction>
 466          </xsd:complexContent>
 467      </xsd:complexType>
 468  
 469      <xsd:complexType name="commandRemove">
 470          <xsd:annotation>
 471              <xsd:documentation>
 472                  Defines a remove command.
 473              </xsd:documentation>
 474          </xsd:annotation>
 475          <xsd:complexContent>
 476              <xsd:restriction base="command">
 477                  <xsd:attribute name="type" type="xsd:string"
 478                      fixed="remove">
 479                  </xsd:attribute>
 480                  <xsd:attribute name="cmd" type="xsd:string"
 481                      use="required">
 482                  </xsd:attribute>
 483              </xsd:restriction>
 484          </xsd:complexContent>
 485      </xsd:complexType>
 486      <xsd:complexType name="commandUpgrade">
 487          <xsd:annotation>
 488              <xsd:documentation>
 489                  Defines an upgrade command.
 490              </xsd:documentation>
 491          </xsd:annotation>
 492          <xsd:complexContent>
 493              <xsd:restriction base="command">
 494                  <xsd:attribute name="type" type="xsd:string"
 495                      fixed="upgrade">
 496                  </xsd:attribute>
 497                  <xsd:attribute name="cmd" type="xsd:string"
 498                      use="required">
 499                  </xsd:attribute>
 500              </xsd:restriction>
 501          </xsd:complexContent>
 502      </xsd:complexType>
 503      <xsd:complexType name="commandDowngrade">
 504          <xsd:annotation>
 505              <xsd:documentation>
 506                  Defines a downgrade command.
 507              </xsd:documentation>
 508          </xsd:annotation>
 509          <xsd:complexContent>
 510              <xsd:restriction base="command">
 511                  <xsd:attribute name="type" type="xsd:string"
 512                      fixed="downgrade">
 513                  </xsd:attribute>
 514                  <xsd:attribute name="cmd" type="xsd:string"
 515                      use="required">
 516                  </xsd:attribute>
 517              </xsd:restriction>
 518          </xsd:complexContent>
 519      </xsd:complexType>
 520  
 521      <xsd:complexType name="command">
 522          <xsd:annotation>
 523              <xsd:documentation>
 524                  Type definition used for all commands (install, upgrade,
 525                  downgrade, remove)
 526              </xsd:documentation>
 527          </xsd:annotation>
 528          <xsd:sequence minOccurs="0" maxOccurs="1">
 529              <xsd:sequence minOccurs="0" maxOccurs="1">
 530                  <xsd:element name="condition" type="wpkg:condition"></xsd:element>
 531              </xsd:sequence>
 532              <xsd:choice minOccurs="0" maxOccurs="unbounded">
 533                  <xsd:element name="exit" type="exit">
 534                      <xsd:annotation>
 535                          <xsd:documentation>
 536                              Specify exit code handling for this command.
 537  
 538                              This allows you to define some exit codes as
 539                              successful even if they are non-zero.
 540                          </xsd:documentation>
 541                      </xsd:annotation>
 542                  </xsd:element>
 543                  <xsd:element name="download" type="download">
 544                      <xsd:annotation>
 545                          <xsd:documentation>
 546                              Specify downloads which are executed only
 547                              for this command to be run.
 548                          </xsd:documentation>
 549                      </xsd:annotation>
 550                  </xsd:element>
 551              </xsd:choice>
 552          </xsd:sequence>
 553          <xsd:attribute name="type" type="xsd:string">
 554              <xsd:annotation>
 555                  <xsd:documentation>
 556                      This attribute allows command grouping. All commands
 557                      with the same type are executed at the specified
 558                      package stage. The following types are supported by
 559                      WPKG currently:
 560  
 561                      install: Commands of type install are executed
 562                      during package installation.
 563  
 564                      upgrade: Commands of type upgrade are executed if a
 565                      package revision is incremented and therefore the
 566                      package is updated to a new version.
 567  
 568                      downgrade: Commands of type downgrade are executed
 569                      if a package revision is decremented and therefore
 570                      the package is downgraded to an older version.
 571  
 572                      remove: Commands of type remove are executed when a
 573                      package is uninstalled from the system.
 574  
 575                      You can also specify any other type identifier here.
 576                      WPKG however will not execute these commands
 577                      automatically during any package phase. But you can
 578                      use these package types in include references. For
 579                      example this allows you to define packages of type
 580                      'prepare' and then refer to it by includes by
 581                      specifying include='prepare' within another command
 582                      node.
 583  
 584                      Example:
 585  
 586                      &lt;command type='prepare' cmd='do-something' /&gt;
 587  
 588                      &lt;command type='prepare' cmd='do-something-else'
 589                      /&gt;
 590  
 591                      &lt;command type='install' include='prepare' /&gt;
 592  
 593                      &lt;command type='install' cmd='install-command'
 594                      /&gt;
 595  
 596                      &lt;command type='remove' include='prepare' /&gt;
 597  
 598                      &lt;command type='remove' cmd='install-command'
 599                      /&gt;
 600  
 601                      This will include the 'prepare' commands during
 602                      installation and during remove.
 603                  </xsd:documentation>
 604              </xsd:annotation>
 605          </xsd:attribute>
 606          <xsd:attribute name="include">
 607              <xsd:annotation>
 608                  <xsd:documentation>
 609                      Specify to inherit all commands from a specific type
 610                      of commands. For example specify 'install' to
 611                      include all install commands. The package will be
 612                      processed the same way as if the specified type of
 613                      commands would be duplicated and inserted exactly
 614                      where you specified the include command.
 615  
 616                      It is allowed to specify multiple include commands.
 617  
 618                      Be careful no to create inclusion loops. For example
 619                      including all install commands within the upgrade
 620                      node and including the upgrade node within the
 621                      install node.
 622                  </xsd:documentation>
 623              </xsd:annotation>
 624              <xsd:simpleType>
 625                  <xsd:restriction base="xsd:string">
 626                      <xsd:pattern value="install"></xsd:pattern>
 627                      <xsd:pattern value="upgrade"></xsd:pattern>
 628                      <xsd:pattern value="downgrade"></xsd:pattern>
 629                      <xsd:pattern value="remove"></xsd:pattern>
 630                      <xsd:pattern value="\w+"></xsd:pattern>
 631                  </xsd:restriction>
 632              </xsd:simpleType>
 633          </xsd:attribute>
 634          <xsd:attribute name="cmd" type="xsd:string" use="optional">
 635              <xsd:annotation>
 636                  <xsd:documentation>
 637                      Specify the command to be executed in order to
 638                      install the application in silent mode.
 639  
 640                      Example:
 641  
 642                      '%SOFTWARE%\pidgin\pidgin.exe /L=1033 /DS=1 /NOUI'.
 643  
 644                      Note that a command is required in order to perform
 645                      any action. Although this attribute is optional it
 646                      is required for normal commands. Either the include
 647                      or the cmd attribute shall be filled.
 648                  </xsd:documentation>
 649              </xsd:annotation>
 650          </xsd:attribute>
 651          <xsd:attribute name="timeout" type="xsd:int" use="optional">
 652              <xsd:annotation>
 653                  <xsd:documentation>
 654                      Specify timeout for command (in seconds).
 655  
 656                      Timeout has no effect on inheritance.
 657                  </xsd:documentation>
 658              </xsd:annotation>
 659          </xsd:attribute>
 660          <xsd:attribute name="workdir" type="xsd:string"
 661              use="optional">
 662              <xsd:annotation>
 663                  <xsd:documentation>
 664                      Specify working directory in which the command is
 665                      executed.
 666                  </xsd:documentation>
 667              </xsd:annotation>
 668          </xsd:attribute>
 669  
 670          <xsd:attributeGroup ref="wpkg:HostMatch"></xsd:attributeGroup>
 671  
 672      </xsd:complexType>
 673  
 674      <xsd:complexType name="exit">
 675          <xsd:annotation>
 676              <xsd:documentation>
 677                  Definition for exit code specification.
 678              </xsd:documentation>
 679          </xsd:annotation>
 680          <xsd:attribute name="code" use="required">
 681              <xsd:annotation>
 682                  <xsd:documentation>
 683                      Specify integer value which matches the exit code of
 684                      the installer. Or specify the string 'any' or '*' to
 685                      match any exit code.
 686                  </xsd:documentation>
 687              </xsd:annotation>
 688              <xsd:simpleType>
 689                  <xsd:restriction base="xsd:string">
 690                      <xsd:pattern value="any"></xsd:pattern>
 691                      <xsd:pattern value="\d+"></xsd:pattern>
 692                      <xsd:pattern value="\*"></xsd:pattern>
 693                  </xsd:restriction>
 694              </xsd:simpleType>
 695          </xsd:attribute>
 696          <xsd:attribute name="reboot" use="optional">
 697              <xsd:annotation>
 698                  <xsd:documentation>
 699                      Specify this attribute if the exit code should
 700                      initiate/shedule any type of reboot. Valid values:
 701  
 702                      false: Do not require any reboot.
 703  
 704                      true: Reuire immediate reboot after this command.
 705  
 706                      delayed: Schedule reboot after execution of all
 707                      commands of this package has been finished.
 708  
 709                      postponed: Schedule reboot after execution of all
 710                      packages (when WPKG terminates).
 711                  </xsd:documentation>
 712              </xsd:annotation>
 713              <xsd:simpleType>
 714                  <xsd:restriction base="xsd:string">
 715                      <xsd:enumeration value="true"></xsd:enumeration>
 716                      <xsd:enumeration value="false"></xsd:enumeration>
 717                      <xsd:enumeration value="delayed"></xsd:enumeration>
 718                      <xsd:enumeration value="postponed"></xsd:enumeration>
 719                  </xsd:restriction>
 720              </xsd:simpleType>
 721          </xsd:attribute>
 722      </xsd:complexType>
 723  
 724      <xsd:complexType name="download">
 725          <xsd:annotation>
 726              <xsd:documentation>
 727                  Specifies how a download node looks like, including all
 728                  attributes.
 729              </xsd:documentation>
 730          </xsd:annotation>
 731          <xsd:sequence minOccurs="0">
 732              <xsd:element name="condition" type="wpkg:condition"></xsd:element>
 733          </xsd:sequence>
 734  
 735          <xsd:attribute name="url" type="xsd:string" use="required">
 736              <xsd:annotation>
 737                  <xsd:documentation>
 738                      URL where the file is downloaded:
 739                      'http://server.example.org/path/to/file.exe'
 740                  </xsd:documentation>
 741              </xsd:annotation>
 742          </xsd:attribute>
 743          <xsd:attribute name="expandURL" type="xsd:boolean">
 744              <xsd:annotation>
 745                  <xsd:documentation>
 746                      Defines whether the url attribute is expanded (ie.
 747                      environment variables are replaced).
 748  
 749                      Note: As URLs are used to contain some percentage
 750                      characters (like '%20' for spaces) these might be
 751                      expanded too if the URL matches an environment
 752                      variable which is defined. For example downloading
 753                      from an URL like
 754                      url='http://host/softwareX%20release%20.exe' would
 755                      try to expand the environment'20release' as well.
 756                      It's very unlikely that this collides with an
 757                      environment variable you have actually defined but
 758                      keep it in mind when defining download URLs. If you
 759                      really need to disable expansion because the URL
 760                      collides with existing environment variables then
 761                      use the expandURL='false' attribute:
 762  
 763                      &lt;download expandURL='false'
 764                      url='http://host/softwareX%20release%20.exe'
 765                      target='release.exe' /&gt;
 766                  </xsd:documentation>
 767              </xsd:annotation>
 768          </xsd:attribute>
 769          <xsd:attribute name="target" type="xsd:string" use="required">
 770              <xsd:annotation>
 771                  <xsd:documentation>
 772                      Target path to store the file to. The path has to be
 773                      specified relative to the downloadDir property
 774                      within config.xml. By default relative to %TEMP%.
 775                      For example specify 'pidgin\pidgin.exe' to download
 776                      the file at the specified URL to
 777                      '%TEMP%\pidgin\pigin.exe'. The file is removed after
 778                      the commands are executed.
 779                  </xsd:documentation>
 780              </xsd:annotation>
 781          </xsd:attribute>
 782          <xsd:attribute name="timeout" type="xsd:string"
 783              use="optional">
 784              <xsd:annotation>
 785                  <xsd:documentation>
 786                      Optional download timeout (specified in seconds).
 787                  </xsd:documentation>
 788              </xsd:annotation>
 789          </xsd:attribute>
 790  
 791          <xsd:attributeGroup ref="wpkg:HostMatch"></xsd:attributeGroup>
 792      </xsd:complexType>
 793  
 794  </xsd:schema>


Generated: Tue Mar 17 22:47:18 2015 Cross-referenced by PHPXref 0.7.1