Keep your Qlik apps in their own folder with AppSubfolders

A repository that holds Qlik apps usually holds other things too: pipeline files, scripts, documentation. Having every app folder sit at the top level next to all of that gets crowded. With AppSubfolders you give the apps a folder of their own, such as apps/, and keep the repository root for everything else.

One line in the repository configuration

AppSubfolders is a setting in the repository's .qopsconfig. It lists the folders where QOps should look for apps, written relative to the repository root and separated by ;:

AppSubfolders: apps;partners/emea

QOps always checks the repository root. Each folder you list is checked as well. In every one of these folders, QOps treats each child folder that contains an App.yaml (or App.json) as an app. You can set the value in the file, with QOps-SetConfig -AppSubfolders, or in the Portal under the repository's settings, in the App subfolders field.

A layout that works well:

my-repo/
  .qopsconfig            AppSubfolders: apps
  apps/
    Sales-prj/App.yaml
    Finance-prj/App.yaml
  pipeline/
  docs/

What to keep in mind

  • Plain folder paths. List each folder by its path. Wildcards are not applied.
  • One level deep. QOps looks at the child folders of the repository root and of each listed folder. To use apps/team, list apps/team.
  • An empty list means the repository root only.
  • QOps-SetConfig checks your entries. If a folder does not exist, it says so and changes nothing.

What happens in each command

  • QOps-Prepare finds an app's existing folder in the root or in any listed folder and updates it there.
  • QOps-Build and QOps-Release take their apps from the root and from every listed folder.
  • A new app that Prepare writes for the first time is created next to the .qopsconfig, as <Name>-prj. Move that folder into apps/ once. After that, Prepare and Build keep using it where it is.

The configuration at the repository root

You can keep the .qopsconfig at the repository root and run QOps from anywhere inside the repository. QOps walks up from the current folder until it finds the configuration, moves there, and tells you which folder it chose.

To move an existing setup, put the .qopsconfig at the root, add AppSubfolders: apps, merge the .gitignore lines for App.local files into the root .gitignore, and run a build for one app to confirm it is found.

In the Portal

Prepare, Build and Release started from the Portal follow AppSubfolders. The Portal's own app list looks for folders ending in -prj anywhere in the repository, so name your app folders <Name>-prj and the list and the commands agree.

The full guide, with example layouts and the messages you may meet, is in the Portal's Help panel under How-to guides: Keep applications in subfolders with AppSubfolders.

💬

No comments yet. Be the first to share your thoughts!

Leave a comment

Leave a Reply

Email will not be published. Required fields are marked *

0 / 1500