Working with Online Repositories

You need to build online repositories when you add a new repository to a server or when you update an existing repository.

Creating New Repository

When you create an online repository that does not yet exist in the server, you can upload the repository content and add it to the root repository as instructed in Flexible Repository Structure.

Updating Repository

Promoting Updates describes the steps required for updating online repositories.

Updating an online repository can vary greatly depending on the used online server system. Typically, updating contains the following steps:

  1. Uploading content files to the server. See Uploading Content Files.
  2. Uploading Updates.xml to the server. See Uploading Updates.xml.

Uploading Content Files

For example, a maintenance tool update could contain the following content files:

mycompany.tools.maintenancetool/2.0.4-0meta.7z
mycompany.tools.maintenancetool/2.0.4-0maintenancetool.7z
mycompany.tools.maintenancetool/2.0.4-0maintenancetool.7z.sha1

Each content file is prepended with a version number set in the <Version> element in the component's package.xml file. Thus you can copy the updated files to a same directory that contains current file versions. It is just important to remember to update the version numbers. For example, the maintenance tool directory could contain the following files:

mycompany.tools.maintenancetool/2.0.2-0meta.7z
mycompany.tools.maintenancetool/2.0.2-0maintenancetool.7z
mycompany.tools.maintenancetool/2.0.2-0maintenancetool.7z.sha1
mycompany.tools.maintenancetool/2.0.3-0meta.7z
mycompany.tools.maintenancetool/2.0.3-0maintenancetool.7z
mycompany.tools.maintenancetool/2.0.3-0maintenancetool.7z.sha1
mycompany.tools.maintenancetool/2.0.4-0meta.7z
mycompany.tools.maintenancetool/2.0.4-0maintenancetool.7z
mycompany.tools.maintenancetool/2.0.4-0maintenancetool.7z.sha1

Uploading Updates.xml

If your online server uses mirroring, it is important to ensure that all content is synchronized to the server before you update Updates.xml.

You can set a cache expiration time as zero for Updates.xml in order to reduce delay in synchronization.

Maintenance Tool

A maintenance tool is built when you build the Qt Installer Framework. Usually, the maintenance tool is included in online repositories. It is installed to the end user host from the online repository with other installed content.

Online repositories should always provide the latest version of the maintenance tool. We recommend that you build both an online installer and the maintenance tool with the Qt Installer Framework version with the same SHA-1. Otherwise, end users can install an old version of the maintenance tool via the online installer. Then, if some updates on the server side are available only via the latest maintenance tool version, the end users with the old maintenance tool cannot access them.

For example, the maintenance tool online repository could be as follows:

linux_x64/desktop/tools_maintenancetool/Updates.xml
    mycompany.tools.maintenancetool/2.0.4-0meta.7z
    mycompany.tools.maintenancetool/2.0.4-0maintenancetool.7z
    mycompany.tools.maintenancetool/2.0.4-0maintenancetool.7z.sha1

© 2020 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.