diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 563dab10d..b707d0af3 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,7 +1,52 @@ -image: registry.freedesktop.org/pipewire/pipewire/fedora:31 +stages: + - container + - build + +variables: + # Update this tag when you want to trigger a rebuild + FEDORA_TAG: '2019-11-21-01' + FEDORA_VERSION: '31' + FEDORA_IMAGE: "$CI_REGISTRY_IMAGE/fedora/$FEDORA_VERSION:$FEDORA_TAG" + +include: + - project: 'wayland/ci-templates' + ref: master + file: '/templates/fedora.yml' + +build-container: + extends: .fedora@container-ifnot-exists + stage: container + variables: + GIT_STRATEGY: none # no need to pull the whole tree for rebuilding the image + FEDORA_RPMS: >- + alsa-lib-devel + bluez-libs-devel + dbus-devel + doxygen + findutils + gcc + git + glib-devel + graphviz + gstreamer1-devel + gstreamer1-plugins-base-devel + jack-audio-connection-kit-devel + libv4l-devel + libva-devel + libX11-devel + make + meson + pulseaudio-libs-devel + sbc-devel + SDL2-devel + systemd-devel + vulkan-loader-devel + which + xmltoman build: stage: build + image: $FEDORA_IMAGE script: - ./autogen.sh -Ddocs=true -Daudiomixer=true -Daudiotestsrc=true -Dtest=true -Dvideotestsrc=true -Dvolume=true - make diff --git a/Dockerfile b/Dockerfile deleted file mode 100644 index e437e7655..000000000 --- a/Dockerfile +++ /dev/null @@ -1,33 +0,0 @@ -FROM fedora:31 -ARG FEDORA_VER=31 - -LABEL description="Fedora-based environment for building PipeWire" \ - maintainer="George Kiagiadakis " - -# Install pipewire dependencies -RUN dnf -y install \ - which \ - gcc \ - meson \ - systemd-devel \ - dbus-devel \ - glib-devel \ - gstreamer1-devel \ - gstreamer1-plugins-base-devel \ - jack-audio-connection-kit-devel \ - pulseaudio-libs-devel \ - alsa-lib-devel \ - libv4l-devel \ - libX11-devel \ - SDL2-devel \ - libva-devel \ - bluez-libs-devel \ - sbc-devel \ - doxygen \ - graphviz \ - xmltoman \ - vulkan-loader-devel \ - git \ - make \ - findutils \ - && dnf clean all diff --git a/doc/ci.md b/doc/ci.md deleted file mode 100644 index 06e154ae5..000000000 --- a/doc/ci.md +++ /dev/null @@ -1,30 +0,0 @@ -# Continuous Integration - -Our CI runs on the `gitlab.freedesktop.org` infrastructure. Steps can be found -in the top-level `gitlab-ci.yml` file. - -The current build happens on an x86_64, Fedora 31 image. This should be -extended to other distrubtions and architectures over time. - -## fd.o Registry - -The Docker image used for the build process comes from the -`registry.freedesktop.org` container registry. Images are currently manually -generate and pushed using the top-level `Dockerfile` and the following steps. -The assumption is that you are using `podman` as a `docker` alternative. The -corresponding `docker` command should be easy to find. - -```sh -$ cd - -# Build the image -$ podman build --format=docker -t registry.freedesktop.org/pipewire/pipewire/fedora:31 . - -# This is usually only needed once. You will be prompted for your fd.o -# username, and the password is a personal access token that you must generate -# in the gitlab.fd.o user settings. -$ podman login - -# Upload the image -$ podman push registry.freedesktop.org/pipewire/pipewire/fedora:31 -```