diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml new file mode 100644 index 0000000..e9952fa --- /dev/null +++ b/.gitlab-ci.yml @@ -0,0 +1,76 @@ +include: + - project: "freedesktop/ci-templates" # the project to include from + ref: "34f4ade99434043f88e164933f570301fd18b125" # git ref of that project + file: "/templates/fedora.yml" # the actual file to include + +stages: + - prepare + - lint + - test + - extras + +variables: + FDO_UPSTREAM_REPO: "dabrain34/GstPipelineStudio" + +# Version and tag for our current container +.fedora: + variables: + FDO_DISTRIBUTION_VERSION: "35" + # Update this to trigger a container rebuild + FDO_DISTRIBUTION_TAG: "2021-12-15.0" + +build-fedora-container: + extends: + - .fedora # our template job above + - .fdo.container-build@fedora@x86_64 # the CI template + stage: prepare + variables: + # clang-devel: required by rust bindgen + FDO_DISTRIBUTION_PACKAGES: >- + rust + cargo + rustfmt + clippy + gtk4-devel + clang-devel + gstreamer1-devel + gstreamer1-plugins-base-devel + +rustfmt: + extends: + - .fedora + - .fdo.distribution-image@fedora + stage: lint + script: + - cargo fmt --version + - cargo fmt -- --color=always --check + +test-stable: + extends: + - .fedora + - .fdo.distribution-image@fedora + stage: test + script: + - rustc --version + - cargo build --color=always --all-targets + - cargo test --color=always + +rustdoc: + extends: + - .fedora + - .fdo.distribution-image@fedora + stage: extras + variables: + RUSTDOCFLAGS: "-Dwarnings" + script: + - rustdoc --version + - cargo doc --no-deps + +clippy: + extends: + - .fedora + - .fdo.distribution-image@fedora + stage: extras + script: + - cargo clippy --version + - cargo clippy --color=always --all-targets -- -D warnings