rtsp-stream: remove unused variable:
[platform/upstream/gstreamer.git] / .gitlab-ci.yml
index 5d19692..0d6e3c5 100644 (file)
@@ -25,9 +25,9 @@ variables:
   # If you are hacking on them or need a them to rebuild, its enough
   # to change any part of the string of the image you want.
   ###
-  FEDORA_TAG:  '2021-10-05.0'
+  FEDORA_TAG:  '2022-03-14.0'
   INDENT_TAG: '2021-10-04.0'
-  WINDOWS_TAG: "2021-10-12.0"
+  WINDOWS_TAG: "2022-03-14.0"
 
   GST_UPSTREAM_REPO: 'gstreamer/gstreamer'
   FDO_UPSTREAM_REPO: 'gstreamer/gstreamer'
@@ -88,9 +88,14 @@ workflow:
   # https://docs.gitlab.com/ee/ci/yaml/index.html#switch-between-branch-pipelines-and-merge-request-pipelines
   rules:
     - if: '$CI_PIPELINE_SOURCE == "merge_request_event"'
+      variables:
+        GIT_FETCH_EXTRA_FLAGS: '--no-tags'
     - if: $CI_COMMIT_BRANCH && $CI_OPEN_MERGE_REQUESTS && $CI_PIPELINE_SOURCE == "push"
       when: never
+    - if: '$CI_COMMIT_TAG'
     - if: '$CI_COMMIT_BRANCH'
+      variables:
+        GIT_FETCH_EXTRA_FLAGS: '--no-tags'
 
 #
 # Global CI policy
@@ -131,7 +136,7 @@ trigger:
     FDO_DISTRIBUTION_VERSION: '31'
     FDO_REPO_SUFFIX: "$FEDORA_AMD64_SUFFIX"
     FDO_DISTRIBUTION_TAG: "$FEDORA_TAG-$GST_UPSTREAM_BRANCH"
-    FDO_DISTRIBUTION_EXEC: 'DEFAULT_BRANCH=$GST_UPSTREAM_BRANCH bash ci/docker/fedora/prepare.sh'
+    FDO_DISTRIBUTION_EXEC: 'GIT_BRANCH=$CI_COMMIT_REF_NAME GIT_URL=$CI_REPOSITORY_URL bash ci/docker/fedora/prepare.sh'
 
 fedora amd64 docker:
   extends:
@@ -140,6 +145,8 @@ fedora amd64 docker:
   stage: 'build docker'
   needs:
     - "trigger"
+  tags:
+    - 'packet.net'
 
 .gst-indent image:
   variables:
@@ -160,6 +167,7 @@ windows amd64 docker:
   stage: "build docker"
   needs:
     - "trigger"
+  timeout: '3h'
   variables:
     # Unlike the buildah/linux jobs, this file
     # needs to be relative to docker/windows/ subdir
@@ -262,8 +270,10 @@ gst indent:
 # build setup templates
 #
 .build_template: &build
+  - ci/scripts/handle-subprojects-cache.py subprojects/
+  # Update subprojects to respect `.wrap` content
+  - meson subprojects update --reset
   - echo $MESON_ARGS
-
   - meson build/ $MESON_ARGS
   - ninja -C build/
   - ccache --show-stats
@@ -280,6 +290,7 @@ gst indent:
 
 .base_modules_changes: &modules_changes
   - .gitlab-ci.yml
+  - ci/gitlab/*.py
   - meson.build
   - subprojects/*.wrap
   - subprojects/gst-devtools/**/*
@@ -318,14 +329,6 @@ gst indent:
   timeout: '45min'
   variables:
     MESON_ARGS: "${DEFAULT_MESON_ARGS} ${MESON_BUILDTYPE_ARGS} ${MESON_GST_WERROR}"
-  before_script:
-    - export RUSTUP_HOME="/usr/local/rustup"
-    - export CARGO_HOME="/usr/local/cargo"
-    - export PATH="/usr/local/cargo/bin:$PATH"
-
-    - ci/scripts/handle-subprojects-cache.py subprojects/
-    # Update subprojects to respect `.wrap` content
-    - meson subprojects update --reset
   script:
     *build
   after_script:
@@ -387,6 +390,9 @@ build clang fedora x86_64:
       -Dvaapi=disabled
       -Dgst-plugins-base:pango=enabled
       -Dgst-plugins-good:cairo=enabled
+    # Needs to not be empty otherwise the newline -> space replace command in
+    # `script:` will fail
+    MESON_CROSS_ARGS: ' '
   rules:
     # If this matches, it means the pipeline is running against either the main
     # or a stable branch, so make it manual
@@ -394,14 +400,14 @@ build clang fedora x86_64:
       when: manual
     - changes:
         *modules_changes
-  before_script:
-    - ci/scripts/handle-subprojects-cache.py subprojects/
   script:
+    - ci/scripts/handle-subprojects-cache.py subprojects/
     # For some reason, options are separated by newline instead of space, so we
     # have to replace them first.
     - $env:MESON_ARGS = $env:MESON_ARGS.replace("`n"," ")
+    - $env:MESON_CROSS_ARGS = $env:MESON_CROSS_ARGS.replace("`n"," ")
     - cmd.exe /C "C:\BuildTools\Common7\Tools\VsDevCmd.bat -host_arch=amd64 -arch=$env:ARCH &&
-        meson build $env:MESON_ARGS &&
+        meson build $env:MESON_ARGS $env:MESON_CROSS_ARGS &&
         ninja -C build"
   # XXX: Re-enable when uploading stops timing out
   #artifacts:
@@ -409,17 +415,31 @@ build clang fedora x86_64:
   #  when: "always"
   #  paths:
   #    - 'build/meson-logs/'
+  #    - 'vslogs.zip'
 
-build vs2017 amd64:
+build vs2019 amd64:
   extends: '.build windows'
   variables:
     ARCH: 'amd64'
 
-build vs2017 x86:
+build vs2019 x86:
   extends: '.build windows'
   variables:
     ARCH: 'x86'
 
+build vs2019 arm64 uwp:
+  extends: '.build windows'
+  variables:
+    ARCH: 'arm64'
+    # pango pulls in cairo which pulls in pixman which doesn't build because of
+    # https://github.com/mesonbuild/meson/issues/9889
+    MESON_CROSS_ARGS: >
+      -Dgst-plugins-base:pango=disabled
+      -Dgst-plugins-good:cairo=disabled
+      -Dgst-devtools:cairo=disabled
+      --cross-file ci/meson/vs2019-arm64-cross-file.txt
+      --native-file ci/meson/vs2019-x64-native-file.txt
+
 build msys2 :
   extends: '.build windows'
   timeout: '60min'
@@ -680,6 +700,8 @@ valgrind ges:
   - pip3 install --upgrade meson
   - *build
   - ./gst-env.py ninja -C build/ plugins_doc_caches
+  # Ignore modifications to wrap files made by meson
+  - git checkout subprojects/*.wrap
   - ./ci/scripts/check-documentation-diff.py
   - ./gst-env.py hotdoc run --conf-file=build/subprojects/gst-docs/GStreamer-doc.json --fatal-warnings
   - mv build/subprojects/gst-docs/GStreamer-doc/html documentation/
@@ -719,7 +741,7 @@ build documentation:
       when: never
     - changes:
       - .gitlab-ci.yml
-      - ci/gitlab/freedesktop_doc_importer.sh
+      - ci/gitlab/*.py
       - subprojects/*.wrap
       - subprojects/gst-docs/**/*
       - subprojects/gst-devtools/**/*
@@ -738,6 +760,7 @@ build documentation:
 # https://gitlab.com/gitlab-org/gitlab/-/issues/341737
 cerbero trigger:
   stage: build
+  timeout: '3h'
   extends:
     - '.fedora image'
     - '.fdo.suffixed-image@fedora'
@@ -752,7 +775,7 @@ cerbero trigger:
       when: never
     - changes:
       - .gitlab-ci.yml
-      - ci/gitlab/trigger_cerbero_pipeline.py
+      - ci/gitlab/*.py
       - subprojects/gst-devtools/**/*
       - subprojects/gst-editing-services/**/*
       - subprojects/gst-libav/**/*