-
Notifications
You must be signed in to change notification settings - Fork 9
191 lines (166 loc) · 7.53 KB
/
halld_recon.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
name: halld_recon
on:
push:
branches: [rasool_gluex_ci_testing]
pull_request:
branches: [rasool_gluex_ci_testing]
jobs:
jana2_halld_recon:
name: halld_recon
runs-on: [self-hosted, macOS, ARM64]
steps:
- uses: actions/checkout@v4
with:
ref: refs/tags/rasool_jana2
path: JANA2
- name: Check CVMFS mount check
run: |
ls /
echo "listing cvmfs folder"
ls -l /opt/cvmfs
echo "listing eic folder"
ls /opt/cvmfs/oasis.opensciencegrid.org
ls /Users/epscidocker/
pwd
ls .
echo "I am user"
whoami
id -u
echo "checking software access rights"
ls -ld /opt/cvmfs/oasis.opensciencegrid.org/gluex/group/halld/Software/builds
echo "checking evio access rights"
ls /opt/cvmfs/oasis.opensciencegrid.org/gluex/group/halld/Software/builds/Linux_Alma9-x86_64-gcc11.4.1-cntr/evio/evio-4.4.6/Linux-x86_64/include
ls -ld /opt/cvmfs/oasis.opensciencegrid.org/gluex/group/halld/Software/builds/Linux_Alma9-x86_64-gcc11.4.1-cntr/evio/evio-4.4.6/Linux-x86_64/include
echo "Checking common include presence"
ls -l /opt/cvmfs/oasis.opensciencegrid.org/gluex/group/halld/Software/builds/Linux_Alma9-x86_64-gcc11.4.1-cntr/evio/evio-4.4.6/common/include
echo "Checking CVMFS mount status"
if [ -d "/opt/cvmfs/oasis.opensciencegrid.org/gluex/group/" ]; then
echo "Path exists"
echo "Getting group files:"
ls /opt/cvmfs/oasis.opensciencegrid.org/gluex/group/
echo "Getting software listings:"
ls /opt/cvmfs/oasis.opensciencegrid.org/gluex/group/halld/Software/build_scripts
else
echo "Path does not exist or is not mounted correctly"
exit 1
fi
- name: Create jana build files
run: |
cd JANA2
cat <<EOF > jana_prereqs_version.xml
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="https://halldweb.jlab.org/halld_versions/version7.xsl"?>
<gversions file="version_5.12.0.xml" date="2023-10-13">
<description>Update to amptools, gluex_root_analysis, halld_recont, halld_sim, hdgeant4, hd_utilities</description>
<package name="amptools" version="0.15.1"/>
<package name="ccdb" version="1.06.11"/>
<package name="cernlib" version="2005" word_length="64-bit"/>
<package name="diracxx" version="2.0.2"/>
<package name="evio" version="4.4.6"/>
<package name="evtgen" version="01.07.00"/>
<package name="geant4" version="10.04.p02"/>
<package name="gluex_MCwrapper" version="v2.7.0"/>
<package name="gluex_root_analysis" version="1.25.0"/>
<package name="halld_recon" version="4.42.0"/>
<package name="halld_sim" version="4.46.0"/>
<package name="hdds" version="4.15.0"/>
<package name="hdgeant4" version="2.36.0"/>
<package name="hd_utilities" version="1.46"/>
<package name="hepmc" version="2.06.10"/>
<package name="jana" version="2.1.2" home="/workspace/JANA2/"/>
<package name="lapack" version="3.9.0"/>
<package name="photos" version="3.61"/>
<package name="rcdb" version="0.07.01"/>
<package name="root" version="6.24.04"/>
<package name="sqlitecpp" version="3.1.1"/>
<package name="sqlite" version="3.36.0" year="2021"/>
<package name="xerces-c" version="3.2.3"/>
</gversions>
EOF
cat <<EOF > jana_build.sh
#!/bin/bash
echo "mounting cvmfs"
yum -y install fuse
chmod 666 /dev/fuse
mkdir -p /cvmfs/oasis.opensciencegrid.org
mount -t cvmfs oasis.opensciencegrid.org /cvmfs/oasis.opensciencegrid.org
export CC=\$(which gcc)
export CXX=\$(which g++)
export BUILD_SCRIPTS=/cvmfs/oasis.opensciencegrid.org/gluex/group/halld/Software/build_scripts
export PROJECT_ROOT=/workspace
export JANA_HOME=\$PROJECT_ROOT/JANA2
export JANA_PLUGIN_PATH=\$PROJECT_ROOT/JANA2/plugins
source \$BUILD_SCRIPTS/gluex_env_boot_jlab.sh --bs \$BUILD_SCRIPTS
gxenv \$PROJECT_ROOT/JANA2/jana_prereqs_version.xml
echo "jana_home value: \$JANA_HOME"
cd \$JANA_HOME
mkdir -p build
cd build
echo "Building start"
cmake3 \$JANA_HOME -DUSE_XERCES=1 -DCMAKE_CXX_STANDARD=17
make install -j12
EOF
chmod +x jana_build.sh
- name: Build JANA2 on Alma9
run: |
docker run --rm \
--platform linux/amd64 \
--privileged \
--mount type=bind,source=${{ github.workspace }},target=/workspace \
raiqarasool/gluex_build:cvmfs /bin/bash -c "source /workspace/JANA2/jana_build.sh"
- name: Git Clone Halld_recon
run: |
mkdir halld_recon
cd halld_recon
git clone --branch rasool_jana2 https://github.com/JeffersonLab/halld_recon.git .
- name: Creat halld_recon build files
run: |
cd halld_recon
cat <<EOF > halld_recon_build_prereqs_version.xml
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="https://halldweb.jlab.org/halld_versions/version7.xsl"?>
<gversions file="version_5.12.0.xml" date="2023-10-13">
<description>Update to amptools, gluex_root_analysis, halld_recont, halld_sim, hdgeant4, hd_utilities</description>
<package name="ccdb" version="1.06.11"/>
<package name="cernlib" version="2005" word_length="64-bit"/>
<package name="evio" version="4.4.6"/>
<package name="hddm" version="4.31.0"/>
<package name="hdds" version="4.15.0"/>
<package name="jana" version="2.1.2" home="/workspace/JANA2/"/>
<package name="rcdb" version="0.07.01"/>
<package name="root" version="6.24.04"/>
<package name="sqlitecpp" version="3.1.1"/>
<package name="sqlite" version="3.36.0" year="2021"/>
<package name="xerces-c" version="3.2.3"/>
</gversions>
EOF
cat <<EOF > halld_recon_build.sh
#!/bin/bash
cd /workspace/halld_recon
echo "mounting cvmfs"
yum -y install fuse
chmod 666 /dev/fuse
mkdir -p /cvmfs/oasis.opensciencegrid.org
mount -t cvmfs oasis.opensciencegrid.org /cvmfs/oasis.opensciencegrid.org
export BUILD_SCRIPTS=/cvmfs/oasis.opensciencegrid.org/gluex/group/halld/Software/build_scripts
source \$BUILD_SCRIPTS/gluex_env_clean.sh
source \$BUILD_SCRIPTS/gluex_env_jlab.sh /workspace/halld_recon/halld_recon_build_prereqs_version.xml
echo "rootsys"
echo \$ROOTSYS
chmod +x \$JANA_HOME/bin/*
cd src
scons install -j12
EOF
chmod +x halld_recon_build.sh
- name: Build Halld_recon on Alma9
run: |
docker run --rm \
--platform linux/amd64 \
--privileged \
--mount type=bind,source=${{ github.workspace }},target=/workspace \
raiqarasool/gluex_build:cvmfs /bin/bash -c "source /workspace/halld_recon/halld_recon_build.sh"
- name: Cleaning up created folders
if: always()
run: |
rm -rf JANA2
rm -rf halld_recon