diff --git a/Docker/Dockerfile b/Docker/Dockerfile index f92f9bd55c201cd18e20ff1d67b87976b4d4e011..702cf2bf0c1b5c1c0b5380b2e33afed64da6fd63 100644 --- a/Docker/Dockerfile +++ b/Docker/Dockerfile @@ -11,9 +11,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \ apt-get install -y \ bison \ build-essential \ - casacore-data \ casacore-dev \ - casacore-tools \ cmake \ flex \ gfortran \ @@ -59,10 +57,12 @@ RUN cmake \ RUN ninja -C /src/idg/build install # Install EveryBeam +# Do not compile python bindings, they will interfere with the ones in the +# binary wheel on PyPI. RUN git shallow-clone https://git.astron.nl/RD/EveryBeam.git RUN cmake \ -DCMAKE_BUILD_TYPE:STRING=Release \ - -DBUILD_WITH_PYTHON=ON \ + -DBUILD_WITH_PYTHON=OFF \ -DBUILD_TESTING=OFF \ -DPORTABLE=${PORTABLE} \ -H/src/EveryBeam \ @@ -154,7 +154,8 @@ COPY --from=builder /usr/local /usr/local # Only install run-time required packages RUN export DEBIAN_FRONTEND=noninteractive && \ apt-get update && \ - apt-get install -y \ + apt-get install -y --no-install-recommends \ + ca-certificates \ casacore-tools \ libarmadillo9 \ libatkmm-1.6-1v5 \ @@ -191,17 +192,15 @@ RUN export DEBIAN_FRONTEND=noninteractive && \ RUN rm -rf /var/lib/apt/lists/* -# Install WSRT Measures (extra casacore data). We purposely do this in the -# `runner` stage and not in the `builder` stage, because otherwise the -# previous `apt-get install` would clobber the files we had installed in -# in the `builder` stage (as `casacore-data` is installed as a dependency). +# Install the casacore measures data. We purposely do not install these from +# the Ubuntu repository, but download the latest version directly from the +# ASTRON ftp site. # Note: The file on the ftp site is updated daily. When warnings regarding # leap seconds appear, ignore them or regenerate the docker image. -RUN wget -q -O /WSRT_Measures.ztar \ - ftp://ftp.astron.nl/outgoing/Measures/WSRT_Measures.ztar && \ - cd /var/lib/casacore/data && \ - tar xfz /WSRT_Measures.ztar && \ - rm /WSRT_Measures.ztar +RUN mkdir -p /usr/share/casacore/data && \ + ln -s /usr/share/casacore /var/lib/casacore && \ + wget -qO - ftp://ftp.astron.nl/outgoing/Measures/WSRT_Measures.ztar | \ + tar -C /usr/share/casacore/data -xzf - # Try to run the compiled tools to make sure they run without # a problem (e.g. no missing libraries). @@ -213,4 +212,3 @@ RUN aoflagger --version && \ COPY . /tmp/rapthor RUN python3 -m pip install --upgrade --no-cache-dir /tmp/rapthor RUN rm -rf /tmp/* - diff --git a/debug/everybeam/Dockerfile b/debug/everybeam/Dockerfile new file mode 100644 index 0000000000000000000000000000000000000000..11322f76fadf51b4bd03cf4d269d8491952dbf33 --- /dev/null +++ b/debug/everybeam/Dockerfile @@ -0,0 +1,26 @@ +FROM python:3.9 + +RUN apt-get update && \ + apt-get install -y \ + gdb \ + less \ + strace \ + vim + +RUN groupadd \ + -g 1001 \ + rapthor + +RUN useradd \ + -g 1001 \ + -m \ + -s /bin/bash \ + -u 15511 \ + rapthor + +USER rapthor +WORKDIR /home/rapthor + +RUN python3 -m venv venv && \ + . venv/bin/activate && \ + pip install git+https://git.astron.nl/RD/rapthor.git@RAP-296_invalid-pointer-when-loading-skymodel diff --git a/debug/build.sh b/debug/everybeam/build.sh similarity index 100% rename from debug/build.sh rename to debug/everybeam/build.sh diff --git a/debug/everybeam/fails.py b/debug/everybeam/fails.py new file mode 100644 index 0000000000000000000000000000000000000000..eae3fffdbab40870687e980f77e61e6e2ca76733 --- /dev/null +++ b/debug/everybeam/fails.py @@ -0,0 +1,5 @@ +import lsmtool +s = lsmtool.load( + '/project/rapthor/Share/rapthor/run_480ch_5chunks_flag/skymodels/calibrate_1/calibration_skymodel_small.txt', + beamMS='/project/rapthor/Share/rapthor/L632477_480ch_50min/allbands.ms.mjd5020562823_field.ms') +s.getColValues('I', applyBeam=True) diff --git a/debug/everybeam/run.sh b/debug/everybeam/run.sh new file mode 100755 index 0000000000000000000000000000000000000000..9067e2ccf39468b175e7a7bad61e7d2802292ff7 --- /dev/null +++ b/debug/everybeam/run.sh @@ -0,0 +1,8 @@ +#!/bin/bash -x +mkdir -p /tmp/loose/rapthor-debug +docker run -it --rm \ + -v /project/rapthor/Share/rapthor/run_480ch_5chunks_flag:/project/rapthor/Share/rapthor/run_480ch_5chunks_flag:ro \ + -v /project/rapthor/Share/rapthor/L632477_480ch_50min:/project/rapthor/Share/rapthor/L632477_480ch_50min:ro \ + -v /tmp/loose/rapthor-debug:/tmp:rw \ + --entrypoint /bin/bash \ + rapthor-debug diff --git a/debug/Dockerfile b/debug/scan_ms/Dockerfile similarity index 100% rename from debug/Dockerfile rename to debug/scan_ms/Dockerfile diff --git a/debug/scan_ms/build.sh b/debug/scan_ms/build.sh new file mode 100755 index 0000000000000000000000000000000000000000..2dbb9da7a6050eebca88eb8ede9764489653be45 --- /dev/null +++ b/debug/scan_ms/build.sh @@ -0,0 +1 @@ +docker build -t rapthor-debug . diff --git a/debug/entry.sh b/debug/scan_ms/entry.sh similarity index 100% rename from debug/entry.sh rename to debug/scan_ms/entry.sh diff --git a/debug/fails.py b/debug/scan_ms/fails.py similarity index 100% rename from debug/fails.py rename to debug/scan_ms/fails.py diff --git a/debug/run.sh b/debug/scan_ms/run.sh similarity index 100% rename from debug/run.sh rename to debug/scan_ms/run.sh diff --git a/debug/succeeds.py b/debug/scan_ms/succeeds.py similarity index 100% rename from debug/succeeds.py rename to debug/scan_ms/succeeds.py