Skip to content

Acquiring an installation package

Dimitris Papagiannis edited this page Feb 1, 2024 · 17 revisions

The installation package required for installing DQMGUI can either be downloaded or built from scratch.

Option 1: Download an existing package

A selection of pre-made installation packages, curated by the CMS DQM-DC team, can be found in the Releases page.

The releases differ in the versions of the packages that they include (e.g. ROOT version) and the Python version they target.

Each of the releases contains an installation package under Assets (look for the deployment...tar.gz file). Select the release that you prefer, and download it to a machine which can access GitHub (e.g. your personal machine you're reading this page from!).

Option 2: Creating a custom installation package

In case the available packages in the Releases do not fit your needs (e.g. you want to use a different Python version, or ROOT version), you can create a custom installation package.

Note: The machine you use to create an installation package must have the same Python version with the machine that DQMGUI will be deployed on.

Tip: You could use a virtual machine with the RHEL8 base image on OpenStack to create the installation package.

0. Extra requirements

The following are the requirements for the machine where you're going to create the installation package on.

  • Any package that provides the curl-config executable must be installed on the system you will run this procedure on (e.g. libcurl4-gnutls-dev).
  • The pigz package installed.
  • The python<your python version>-pip package installed. E.g. for python3.8, python38-pip must be installed.
  • Network access to PyPI and GitHub.
  • Python 3 installed (the same version with the target machine where the GUI will be installed in).

1. Clone/Download the deployment source code

git clone https://github.com/cms-DQM/dqmgui_prod_deployment

Or, you could just download it directly from git.

2. Modify the package or Python versions

Edit the config.sh file that you will find in the cloned repository.

Modify whatever versions fit your needs.

Specifically for the Python version, make sure:

  • That it's a version that is already installed on your current machine, where you will be creating the installation package,
  • That it's the same version with the Python installed in the target machine and
  • It's configured in the form X.Y (e.g. 3.8) in config.sh.

3. Run the download script

This step will clone all the required repositories and download all the PyPI packages inside the directory of the cloned repository:

bash download_dependencies.sh

4. Build the package

This step will create a single compressed file named dqmgui_installation_package.tar.gz in the /tmp/dqmgui directory (by default), which you can then copy to the target machine:

bash build_installation_package.sh