Skip to content

Commit

Permalink
Test github actions
Browse files Browse the repository at this point in the history
  • Loading branch information
nothingface0 committed Nov 8, 2023
1 parent 3773079 commit d58f622
Show file tree
Hide file tree
Showing 2 changed files with 30 additions and 4 deletions.
19 changes: 19 additions & 0 deletions .github/workflows/build_installation_package.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
name: Build DQMGUI Installation Package

on: [push]

jobs:
build_and_test:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: npm install, build, and test
run: |
bash download_dependencies.sh
- name: Archive package artifact
uses: actions/upload-artifact@v3
with:
name: dist-without-markdown
path: |
.
15 changes: 11 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,11 @@
# [Legacy] DQMGUI Deployment

This repository contains all the requirements for deploying the [Legacy] [DQMGUI](https://github.com/cms-DQM/dqmgui_prod) on a Red Hat Enterprise Linux 8 machine, with Python3.6 for the needs of moving DQM production to new machines.
This repository contains all the requirements for deploying the [Legacy] [DQMGUI](https://github.com/cms-DQM/dqmgui_prod) on a Red Hat Enterprise Linux 8 machine, with Python3.8 for the needs of moving DQM production to new machines.

It aims to replace the existing one (`Deploy`), found in [`dmwm/deployment`](https://github.com/dmwm/deployment/tree/master/Deploy), which only targets OS up to SLC7. The main difference is that the `Deploy` script relies on pre-built libraries and executables, found on `cmsrep.cern.ch`, while this script downloads and builds all requirements from source (hence takes longer to deploy).
It aims to replace the existing one (`Deploy`), found in [`dmwm/deployment`](https://github.com/dmwm/deployment/tree/master/Deploy), which only targets OS up to SLC7. The main difference is that the `Deploy` script relies on pre-built libraries and executables, found on `cmsrep.cern.ch`, while the method we implement in this repository depends on two steps:

1. Download all the external resources needed (e.g. python packages from PyPI, github repositories) and compress them.
2. Copy the archives to the P5 machine and extract, then build from source (hence takes longer to deploy).

> **Warning**
> This deployment script should *not* be run as a sudo user.
Expand All @@ -13,7 +16,7 @@ It aims to replace the existing one (`Deploy`), found in [`dmwm/deployment`](htt
- `sudo` permissions:
- To install the system-wide packages (listed below).
<!-- - To create a soft link in `/usr/lib64`. -->
- Python 3.6
- Python 3.8
- Git
- Access to PyPI for downloading python packages.
- Access to GitHub for cloning several external dependencies.
Expand Down Expand Up @@ -161,7 +164,7 @@ Below is a list of the values that you will most probably need to change to cust

## [Debug] Selectively run parts of the installation script

The script is split into steps (see: `installation_steps`), which can all be toggled off or on by arguments when running the script.
The script is split into steps (see the `installation_steps` array declared in the `deploy_dqmgui.sh` script), which can all be toggled off or on by arguments when running the script.

The flags are named by concatenating `do_` with the name of the step, so, for example, `do_check_dependencies` or `do_install_rotoglup`.

Expand All @@ -176,3 +179,7 @@ A useful combination that can be used when you've already installed and built al
```bash
bash deploy_dqmgui.sh do_preliminary_checks=0 do_check_dependencies=0 do_create_directories=1 do_install_boost_gil=0 do_install_gil_numeric=0 do_install_rotoglup=0 do_install_classlib=0 do_compile_classlib=0 do_install_dmwm=0 do_install_root=0 do_compile_root=0 do_install_dqmgui=0 do_compile_dqmgui=1 do_install_yui=0 do_install_extjs=0 do_install_d3=0 do_install_jsroot=0
```

## Notes

- We're not using the RHEL8 `root` package, due to the fact that they are built for python3.6, hence we need to build it with python3.8.

0 comments on commit d58f622

Please sign in to comment.