diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml new file mode 100644 index 000000000..cce5ffac0 --- /dev/null +++ b/.gitlab-ci.yml @@ -0,0 +1,51 @@ +stages: + - "test" + +.cargo_test_template: &cargo_test + stage: "test" + variables: + DEPENDENCIES: | + curl + liborc-dev + libglib2.0-dev + libxml2-dev + libgtk-3-dev + libegl1-mesa + libgles2-mesa + libgl1-mesa-dri + libgl1-mesa-glx + libwayland-egl1-mesa + + before_script: + - apt-get update -yqq + - apt-get install -yqq --no-install-recommends $DEPENDENCIES + - mkdir -p precompiled-gst && cd precompiled-gst + + - curl -L https://people.freedesktop.org/~slomo/gstreamer-1.14.3.tar.gz | tar xz + - sed -i "s;prefix=/root/gstreamer;prefix=$PWD/gstreamer;g" $PWD/gstreamer/lib/x86_64-linux-gnu/pkgconfig/*.pc + - export PKG_CONFIG_PATH=$PWD/gstreamer/lib/x86_64-linux-gnu/pkgconfig + - export GST_PLUGIN_SYSTEM_PATH=$PWD/gstreamer/lib/x86_64-linux-gnu/gstreamer-1.0 + - export GST_PLUGIN_SCANNER=$PWD/gstreamer/libexec/gstreamer-1.0/gst-plugin-scanner + - export PATH=$PATH:$PWD/gstreamer/bin + - export LD_LIBRARY_PATH=$PWD/gstreamer/lib/x86_64-linux-gnu:$LD_LIBRARY_PATH + script: + - rustc --version + - cargo build --all + - G_DEBUG=fatal_warnings cargo test --all + - cargo build --all --all-features + - G_DEBUG=fatal_warnings cargo test --all --all-features + + +test stable: + # Stable img + # https://hub.docker.com/_/rust/ + image: "rust:slim" + <<: *cargo_test + +test nightly: + # Nightly + # https://hub.docker.com/r/rustlang/rust/ + image: "rustlang/rust:nightly-slim" + allow_failure: true + <<: *cargo_test +