docs: Add chapter on upgrading, inc. system Python upgrades [#972].
[mediagoblin.git] / Dockerfile-debian-python3-sqlite
index 5ee7d3be765cab98a4538d352a96eb4417a06edf..ea585c6a9fec1f443209ab3eb138db82f04e28ad 100644 (file)
@@ -81,10 +81,7 @@ gstreamer1.0-plugins-bad \
 gstreamer1.0-plugins-base \
 gstreamer1.0-plugins-good \
 gstreamer1.0-plugins-ugly \
-libsndfile1-dev \
-python3-gst-1.0 \
-python3-numpy \
-python3-scipy
+python3-gst-1.0
 
 # Install video dependencies.
 RUN apt-get install -y \
@@ -93,6 +90,11 @@ gir1.2-gstreamer-1.0 \
 gstreamer1.0-tools \
 python3-gi
 
+# Install document (PDF-only) dependencies.
+# TODO: Check that PDF tests aren't skipped.
+RUN apt-get install -y \
+poppler-utils
+
 # Create working directory.
 RUN mkdir /opt/mediagoblin
 RUN chown -R www-data:www-data /opt/mediagoblin
@@ -131,14 +133,20 @@ USER www-data
 # changed from the default - say you've enabled some plugins or switched
 # database type. So instead we're doing a git clone. We could potentially use
 # `git archive` but this still wouldn't account for the submodules.
-RUN git clone --depth=1 git://git.savannah.gnu.org/mediagoblin.git -b master .
+#
+# TODO: Figure out a docker-only way to do the build and run from our local
+# version, so that local changes are immediately available to the running
+# container. Not as easy as it sounds. We have this working with docker-compose,
+# but still uses upstream MediaGoblin for the build.
+# RUN git clone --depth=1 git://git.savannah.gnu.org/mediagoblin.git --branch master .
+RUN git clone --depth=1 https://gitlab.com/BenSturmfels/mediagoblin.git --branch spectrograms .
 
 RUN ./bootstrap.sh
-RUN VIRTUALENV_FLAGS='--system-site-packages' ./configure --with-python3
+RUN VIRTUALENV_FLAGS='--system-site-packages' ./configure
 RUN make
 
-# Only supported on Python 2.
-# RUN ./bin/pip install scikits.audiolab
+# Run the tests.
+RUN ./bin/python -m pytest ./mediagoblin/tests --boxed
 
 # Only safe if being run on a clean git checkout. Otherwise you may have already
 # customised mediagoblin.ini to already install these.