@@ -91,18 +91,14 @@ RUN groupadd -r postgres -g $GALAXY_POSTGRES_GID \
91
91
&& apt-get -qq update && apt-get install --no-install-recommends -y software-properties-common gpg-agent curl sudo \
92
92
&& curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - \
93
93
&& add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" \
94
- && sudo add-apt-repository ppa:natefoo/slurm-drmaa \
95
94
&& curl -fsSL https://research.cs.wisc.edu/htcondor/repo/keys/HTCondor-current-Key | sudo apt-key add - \
96
95
&& sudo add-apt-repository "deb https://research.cs.wisc.edu/htcondor/repo/ubuntu/current jammy main" \
97
96
&& apt-get update -qq \
98
97
# # && apt-get purge -y software-properties-common gpg-agent \
99
98
# # && apt-get install postgresql-10 --no-install-recommends -y \
100
99
&& apt-get install nginx-extras nginx-common --no-install-recommends -y \
101
100
&& apt-get install docker-ce --no-install-recommends -y \
102
- && apt-get install slurm-client slurmd slurmctld slurm-drmaa1 --no-install-recommends -y \
103
- && ln -s /usr/lib/slurm-drmaa/lib/libdrmaa.so.1 /usr/lib/slurm-drmaa/lib/libdrmaa.so \
104
101
&& apt-get install proftpd proftpd-mod-pgsql proftpd-mod-crypto --no-install-recommends -y \
105
- && apt-get install munge libmunge-dev --no-install-recommends -y \
106
102
&& apt-get install nano --no-install-recommends -y \
107
103
&& apt-get install htcondor --no-install-recommends -y \
108
104
&& apt-get install git --no-install-recommends -y \
@@ -177,11 +173,10 @@ RUN chmod 0644 $GALAXY_CONFIG_DIR/reports.yml $GALAXY_HOME/ephemeris/sample_tool
177
173
# Make python3 standard
178
174
RUN update-alternatives --install /usr/bin/python python /usr/bin/python3 10
179
175
180
- ADD roles/ /ansible/roles
181
176
ADD ansible/ /ansible/
182
177
183
178
# Install ansible and related dependencies
184
- RUN apt update -qq && apt install --no-install-recommends -y software-properties-common dirmngr gpg gpg-agent \
179
+ RUN apt update -qq && apt install --no-install-recommends -y software-properties-common dirmngr gpg gpg-agent bsdmainutils \
185
180
&& sudo add-apt-repository ppa:ansible/ansible \
186
181
&& apt install --no-install-recommends -y ansible \
187
182
&& apt purge -y systemd
@@ -209,28 +204,16 @@ RUN ansible-playbook /ansible/redis_provision.yml \
209
204
--extra-vars redis_venv_dir=$GALAXY_VIRTUAL_ENV \
210
205
--extra-vars redis_user=$GALAXY_USER
211
206
212
- # cleanup dance
213
- RUN apt purge ansible software-properties-common dirmngr gpg gpg-agent -y && apt-get autoremove -y && apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* \
214
- && find $GALAXY_ROOT_DIR/ -name '*.pyc' -delete | true \
215
- && find /usr/lib/ -name '*.pyc' -delete | true \
216
- && find $GALAXY_VIRTUAL_ENV -name '*.pyc' -delete | true \
217
- && rm -rf /tmp/* /root/.cache/ /var/cache/* $GALAXY_ROOT_DIR/client/node_modules/ $GALAXY_VIRTUAL_ENV/src/ /home/galaxy/.cache/ /home/galaxy/.npm
218
-
219
-
220
- # Include all needed scripts from the host
221
- ADD ./setup_postgresql.py /usr/local/bin/setup_postgresql.py
222
-
223
- # Configure PostgreSQL
224
- # 1. Remove all old configuration
225
- # 2. Create DB-user 'galaxy' with password 'galaxy' in database 'galaxy'
226
- # 3. Create Galaxy Admin User '[email protected] ' with password 'admin' and API key 'admin'
207
+ # Install slurm
208
+ RUN ansible-playbook /ansible/slurm_provision.yml \
209
+ --extra-vars galaxy_user_name=$GALAXY_USER
227
210
228
211
RUN mkdir -p /shed_tools $EXPORT_DIR/ftp/ \
229
212
&& chown $GALAXY_USER:$GALAXY_USER /shed_tools $EXPORT_DIR/ftp \
230
213
&& ln -s /tool_deps/ $EXPORT_DIR/tool_deps \
231
214
# Configure Galaxy to use the Tool Shed
232
215
&& chown $GALAXY_USER:$GALAXY_USER $EXPORT_DIR/tool_deps \
233
- && apt update -qq && apt install --no-install-recommends -y ansible gpg gpg-agent g++ make bsdmainutils \
216
+ && apt update -qq && apt install --no-install-recommends -y g++ make \
234
217
&& ansible-playbook /ansible/provision.yml \
235
218
--extra-vars galaxy_venv_dir=$GALAXY_VIRTUAL_ENV \
236
219
--extra-vars galaxy_log_dir=$GALAXY_LOGS_DIR \
@@ -258,27 +241,36 @@ RUN mkdir -p /shed_tools $EXPORT_DIR/ftp/ \
258
241
--extra-vars nginx_use_remote_header=True \
259
242
--extra-vars tus_upload_store_path=$GALAXY_CONFIG_TUS_UPLOAD_STORE \
260
243
--extra-vars gx_it_proxy_sessions_path=$GALAXY_CONFIG_INTERACTIVETOOLS_MAP \
261
- --tags=galaxyextras,cvmfs --skip-tags=tusd,flower,redis -c local \
244
+ --tags=galaxyextras,cvmfs --skip-tags=tusd,flower,redis,slurm -c local \
262
245
&& . $GALAXY_VIRTUAL_ENV/bin/activate \
263
246
&& pip install WeasyPrint \
264
247
&& deactivate \
265
248
# TODO: no clue why this is needed here again
266
249
&& cd $GALAXY_ROOT_DIR && ./scripts/common_startup.sh \
267
250
&& cd config && find . -name 'node_modules' -type d -prune -exec rm -rf '{}' + \
268
251
&& find . -name '.cache' -type d -prune -exec rm -rf '{}' + \
269
- && cd / \
270
- && rm $PG_DATA_DIR_DEFAULT -rf \
271
- && python /usr/local/bin/setup_postgresql.py --dbuser galaxy --dbpassword galaxy --db-name galaxy --dbpath $PG_DATA_DIR_DEFAULT --dbversion $PG_VERSION \
272
- && service postgresql start \
273
- && service postgresql stop \
274
- && apt purge gpg gpg-agent g++ make gcc -y && apt-get autoremove -y && apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* && rm -rf ~/.cache/ \
252
+ && apt purge software-properties-common dirmngr gpg gpg-agent g++ make gcc -y && apt-get autoremove -y && apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* ~/.cache/ \
275
253
# cleanup dance
276
254
&& find $GALAXY_ROOT_DIR/ -name '*.pyc' -delete | true \
277
255
&& find /usr/lib/ -name '*.pyc' -delete | true \
278
256
&& find /var/log/ -name '*.log' -delete | true \
279
257
&& find $GALAXY_VIRTUAL_ENV -name '*.pyc' -delete | true \
280
258
&& rm -rf /tmp/* /root/.cache/ /var/cache/* $GALAXY_ROOT_DIR/client/node_modules/ $GALAXY_VIRTUAL_ENV/src/ /home/galaxy/.cache/ /home/galaxy/.npm
281
259
260
+ # Include all needed scripts from the host
261
+ ADD ./setup_postgresql.py /usr/local/bin/setup_postgresql.py
262
+
263
+ # Configure PostgreSQL
264
+ # 1. Remove all old configuration
265
+ # 2. Create DB-user 'galaxy' with password 'galaxy' in database 'galaxy'
266
+ # 3. Create Galaxy Admin User '[email protected] ' with password 'admin' and API key 'admin'
267
+
268
+ RUN cd / \
269
+ && rm $PG_DATA_DIR_DEFAULT -rf \
270
+ && python /usr/local/bin/setup_postgresql.py --dbuser galaxy --dbpassword galaxy --db-name galaxy --dbpath $PG_DATA_DIR_DEFAULT --dbversion $PG_VERSION \
271
+ && service postgresql start \
272
+ && service postgresql stop
273
+
282
274
RUN touch /var/log/condor/StartLog /var/log/condor/StarterLog /var/log/condor/CollectorLog /var/log/condor/NegotiatorLog && \
283
275
mkdir -p /var/run/condor/ /var/lock/condor/ && \
284
276
chown -R condor: /var/log/condor/StartLog /var/log/condor/StarterLog /var/log/condor/CollectorLog /var/log/condor/NegotiatorLog /var/run/condor/ /var/lock/condor/
0 commit comments