diff options
author | Ben Sturmfels <ben@sturm.com.au> | 2021-08-23 16:34:34 +1000 |
---|---|---|
committer | Ben Sturmfels <ben@sturm.com.au> | 2021-08-23 17:43:01 +1000 |
commit | 712728c331ea3518b1964bbc7fcf06ff2c567064 (patch) | |
tree | 46d0dc6c45d6ab05f6bcd541c9505ec5382ff17a | |
parent | 8c44544817dae1eb95e771c720ff20917d274d54 (diff) | |
download | mediagoblin-712728c331ea3518b1964bbc7fcf06ff2c567064.tar.lz mediagoblin-712728c331ea3518b1964bbc7fcf06ff2c567064.tar.xz mediagoblin-712728c331ea3518b1964bbc7fcf06ff2c567064.zip |
Base our SourceHut CI builds on Docker.
This allows us to use an identical build in CI and in local development. Not the
most optimal for CI, but means less to maintain and no inconsistencies.
-rw-r--r-- | .builds/debian-11-docker.yml | 14 | ||||
-rw-r--r-- | .builds/debian-11-sqlite.ypm | 74 | ||||
-rw-r--r-- | .builds/fedora-33-docker.yml | 12 | ||||
-rw-r--r-- | .builds/fedora-33-sqlite.yml | 69 |
4 files changed, 26 insertions, 143 deletions
diff --git a/.builds/debian-11-docker.yml b/.builds/debian-11-docker.yml new file mode 100644 index 00000000..4a52effb --- /dev/null +++ b/.builds/debian-11-docker.yml @@ -0,0 +1,14 @@ +image: alpine/3.14 +packages: + # Using Docker for CI is less efficient, but means we can run identical builds + # in CI and in local development. + - docker +tasks: + - setup: | + sudo adduser $(whoami) docker + sudo service docker start + sleep 2 + + - build: | + cd mediagoblin + docker build -t mediagoblin-debian-11 - < Dockerfile-debian-11-sqlite diff --git a/.builds/debian-11-sqlite.ypm b/.builds/debian-11-sqlite.ypm deleted file mode 100644 index 60596a77..00000000 --- a/.builds/debian-11-sqlite.ypm +++ /dev/null @@ -1,74 +0,0 @@ -image: debian/bullseye -packages: - # Install bootstrap and configure dependencies. - - automake - - nodejs - - npm - - python3-dev - - virtualenv - - # Install make and runtime dependencies. - - python3-lxml - - python3-pillow - - # Install test and docs dependencies. - - python3-pytest - - python3-pytest-xdist - - python3-snowballstemmer - - python3-sphinx - - python3-sphinxcontrib.devhelp - - python3-sphinxcontrib.qthelp - - python3-sphinxcontrib.websupport - - python3-webtest - - # Install audio dependencies. - - gstreamer1.0-libav - - gstreamer1.0-plugins-bad - - gstreamer1.0-plugins-base - - gstreamer1.0-plugins-good - - gstreamer1.0-plugins-ugly - - python3-gst-1.0 - - python3-numpy - - # Install video dependencies. - - gir1.2-gst-plugins-base-1.0 - - gir1.2-gstreamer-1.0 - - gstreamer1.0-tools - - python3-gi - - # Install raw image dependencies. - - libexiv2-dev - - libboost-python-dev - - # Install document (PDF-only) dependencies. - - poppler-utils - - # Install LDAP depedencies. - - python3-ldap - - # Install OpenID dependencies. - - python3-openid - -tasks: - - core: | - cd mediagoblin - git show --oneline --no-patch - ./bootstrap.sh - VIRTUALENV_FLAGS='--system-site-packages' ./configure - make - - # Install additional Sphinx dependencies not in Debian. - ./bin/pip install sphinxcontrib-applehelp sphinxcontrib-htmlhelp sphinxcontrib-jsmath - - # Install raw image library from PyPI as not available in Debian 10. - ./bin/pip install py3exiv2 - - # Confirm our packages version for later troubleshooting. - ./bin/python -m pip freeze - - # Run the tests, explicitly listing out skipped tests. - ./bin/python -m pytest -rs ./mediagoblin/tests --boxed - - # Build the documentation. - cd docs && make html - diff --git a/.builds/fedora-33-docker.yml b/.builds/fedora-33-docker.yml new file mode 100644 index 00000000..84483402 --- /dev/null +++ b/.builds/fedora-33-docker.yml @@ -0,0 +1,12 @@ +image: alpine/3.14 +packages: + - docker +tasks: + - setup: | + sudo adduser $(whoami) docker + sudo service docker start + sleep 2 + + - build: | + cd mediagoblin + docker build -t mediagoblin-fedora-33 - < Dockerfile-fedora-33-sqlite diff --git a/.builds/fedora-33-sqlite.yml b/.builds/fedora-33-sqlite.yml deleted file mode 100644 index 061edff3..00000000 --- a/.builds/fedora-33-sqlite.yml +++ /dev/null @@ -1,69 +0,0 @@ -image: fedora/33 -packages: - # Install bootstrap and configure dependencies. - - automake - # - gcc - # - make - - nodejs - - npm - - python3-devel - - virtualenv - - # Install make and runtime dependencies. - # - findutils - - python3-lxml - - python3-pillow - - libffi-devel - # - which - - # Install test and docs dependencies. - - python3-pytest - - python3-pytest-xdist - - python3-snowballstemmer - - python3-sphinx - - python3-webtest - - # Install audio dependencies. - - gstreamer1-plugins-base - - gstreamer1-plugins-bad-free - - gstreamer1-plugins-good - - gstreamer1-plugins-ugly-free - - python3-numpy - - # Install video dependencies. - - python3-gobject - - python3-gstreamer1 - - gstreamer1-plugin-openh264 - - # # Install raw image dependencies. - # - libexiv2-dev - # - libboost-python-dev - - # # Install document (PDF-only) dependencies. - # - poppler-utils - - # Install LDAP depedencies. - - python3-ldap - - # Install OpenID dependencies. - - python3-openid - -tasks: - - core: | - cd mediagoblin - git show --oneline --no-patch - ./bootstrap.sh - VIRTUALENV_FLAGS='--system-site-packages' ./configure - make - - # # Install raw image library from PyPI as not available in Debian 10. - # ./bin/pip install py3exiv2 - - # Confirm our packages version for later troubleshooting. - ./bin/python -m pip freeze - - # Run the tests, explicitly listing out skipped tests. - ./bin/python -m pytest -rs ./mediagoblin/tests --boxed - - # Build the documentation. - cd docs && make html |