Commit graph

337 commits

Author SHA1 Message Date
Matthew Waters
292f9a4250 gst-build: clone gst-build directly instead of relying on the docker version
The git-update that is performed attempts to update gst-build however
will not use the updated git-update script for further operations.  This
causes the CI to not use any updates to the git-update which is always
stuck on the version provided by the backing docker image.
2019-06-11 16:44:53 +10:00
Tim-Philipp Müller
142f24043d gitlab/ci_template: only run valgrind for MRs not master and stable branches
The valgrind runs are there to spot obvious problems during the dev phase,
not sure we really need to run them in full after each merge.

Should reduce load on the build bots a little.

If any problems slip in they will be picked up soon enough by
the MR jobs again.
2019-06-07 17:34:36 +00:00
Nicolas Dufresne
69656b287c gitlab: Update cerbero docker to the new MingW 2019-06-07 10:15:06 -04:00
Jordan Petridis
2cde4bef1e gitlab/build_manifest: allow for upstream branch to be specified
When the pipeline is based on top of a stable branch, we want
to track that branch isntead of the primary development branch.

This patch makes it so the upstream branch can be specified with
an env var.

part of #11
2019-06-05 22:51:04 +00:00
Nicolas Dufresne
24f24828d0 Revert "gitlab: build libnice as part of cerbero deps"
This reverts commit 478686faa7
2019-06-05 13:54:17 +00:00
Matthew Waters
478686faa7 gitlab: build libnice as part of cerbero deps
Building the same libnice from the same tarball every time is not
useful.
2019-06-05 16:15:12 +10:00
Matthew Waters
bc44b55c4a gitlab-ci: move overriden dist dir copy to after cache fetch
Otherwise, the cache will not be copied to the overriden dist dir for
the normal fast builds.
2019-06-05 16:09:40 +10:00
Matthew Waters
326e3a5ac5 add macos CI 2019-06-04 04:29:49 +00:00
Nirbheek Chauhan
798945be7a gitlab: Add static builds for gst-build 2019-06-03 13:13:36 +00:00
Thibault Saunier
35be7d2b91 gitlab: Always run hotdoc from git
We are moving too fast in hotdoc and the overhead of
releasing and updating docker images is too big
2019-05-31 20:16:27 -04:00
Thibault Saunier
a30652954c doc: Use latest image with update hotdoc 2019-05-29 11:14:40 -04:00
Jordan Petridis
274f183955
gitlab/ci_template: make sure that the fedora build job is never run on cerbero
We exclude cerbero in the .build template but that key
is getting overwritten since !126. Valgrind needs to be
fixed first in order to remove this and the previous
workarounds.
2019-05-24 18:32:16 +03:00
Jordan Petridis
e6cf53329e
gitlab/build_manifest: add gst-sharp to the module list 2019-05-20 19:29:46 +03:00
Thibault Saunier
917ff85856 gitlab: Fix mixup in excepting gst-docs to build the nodebug job 2019-05-16 14:03:09 -04:00
Thibault Saunier
3c5db7d449 Add support to build the documentation
Since we can't run valgrind tests on fedora 30 yet (see
https://gitlab.freedesktop.org/gstreamer/gst-ci/merge_requests/125),
we build the nodebug variant with the F30 image and use the artifacts
of that build to build the documentation and not the main one.
2019-05-15 18:29:32 -04:00
Thibault Saunier
b159e08f89 gitlab: Run all valgrind jobs when running in gst-ci
Everything needs to be tested there as we might be updating the docker image
2019-05-13 21:51:15 -04:00
Thibault Saunier
68fa0afea7 Revert "Add support for building the doc"
This reverts commit 58861fd410.
2019-05-13 21:48:36 -04:00
Thibault Saunier
4e5707d2b3 doc-importer: Update job name now that we build the API doc 2019-05-13 19:36:01 -04:00
Thibault Saunier
7ecf44d232 gitlab: Do not "build nodebug fedora" on gst-docs
And do not build at all for gst-examples either
2019-05-13 17:03:07 -04:00
Thibault Saunier
58861fd410 Add support for building the doc 2019-05-13 19:41:20 +00:00
Tim-Philipp Müller
ebb38fc3a0 gitlab/ci_template: no need to do cerbero builds for gstreamer-vaapi 2019-05-04 22:00:17 +00:00
Nicolas Dufresne
1e27cc81b1 gitlab: manifest: Use a cerbero ref with build
For non-cerbero builds, pick a cerbero reference for which a build has
completed. This will reduce the number of cache miss, hence reduce the
number of timeouts and slow build we are facing each time cerbero is
updated.

Fixes #16
2019-05-03 20:05:33 +00:00
Thibault Saunier
a659ed8f2e gitlab: Check bugs resolutions when running the validate/ges testsuite 2019-05-01 09:50:58 -04:00
Thibault Saunier
1c249d24ae gitlab: Do not pass --force-sync in the launcher
We let subproject handle it for us now
2019-04-25 10:40:26 -04:00
Thibault Saunier
3c6bf43ce3 gitlab: ORC_CODE=backup is now set in validate GstCheck application 2019-04-17 11:05:11 -04:00
Thibault Saunier
5c5554622b gitlab: Blacklist moved to the check testsuite directly 2019-04-17 10:06:49 -04:00
Thibault Saunier
b55b0f7a74 gitlab: Run valgrind on ges tests
blacklisting python tests for now as those are still leaky/need some python suppressions
2019-04-16 16:47:48 +00:00
Thibault Saunier
074a0eecbf gitlab: Dump launcher logs on failures 2019-04-16 15:47:24 +00:00
Nicolas Dufresne
22a3bfeeb5 gitlab: Disable integration test in cerbero repository
This is minimal fix for this job, we don't build the required
dependency.
2019-04-07 18:00:02 -04:00
Tim-Philipp Müller
57848d32f3 gitlab/ci_template: skip cerbero builds and integration tests for gst-omx
and the integration test for gstreamer-vaapi (we explicitly
remove the vaapi plugin when running integration tests).
2019-04-06 17:45:22 +01:00
Jordan Petridis
8fb9cb147b
gitlab/ci_template: Build gst-omx as well 2019-04-05 19:20:00 +03:00
Thibault Saunier
1a3f1f66cd gitlab: The launcher now generate the right suppression files list
See 787939f750
2019-04-04 17:25:05 -03:00
Matthew Waters
4cbf9a6ed5 gitlab: fix gst-integration-testuite exceptions
Fixes error introduced in
9d32304eb3
https://gitlab.freedesktop.org/gstreamer/gst-ci/merge_requests/94
2019-04-04 21:38:51 +11:00
Thibault Saunier
9d32304eb3 gitlab: Do not run check and apps job on gst-integration-testsuites 2019-04-03 19:13:21 -03:00
Thibault Saunier
edd8ff52e3 ci: Run 'validate' and 'ges' integration testsuites
And use new validate feature to print debug logs URL directly
in the logs instead of dumping the whole files.
2019-04-03 19:13:21 -03:00
Thibault Saunier
e06f324cf1 Update to latest fedora 64 image 2019-04-03 19:13:17 -03:00
Matthew Waters
d3ecc6d741 gitlab: don't build cerbero jobs in gst-build
Fixes https://gitlab.freedesktop.org/gstreamer/gst-ci/issues/17
2019-04-02 23:30:48 +11:00
Matthew Waters
caec83aa1f gitlab/android-examples: only output the resulting apks
The full build directory while useful for debugging is rather large
(almost 1GB per app depending on plugins used).
2019-03-29 01:10:24 +11:00
Matthew Waters
f398562cb3 gitlab: also build-test the android tutorials from gst-docs 2019-03-28 11:25:49 +11:00
Tim-Philipp Müller
42c1dcdf59 gitlab/ci_template: shorten name for gstreamer nodebug build
Shorter and nicer to read with spaces than underscores.
2019-03-27 15:17:23 +00:00
Matthew Waters
be70dc3735 gitlab: disable check target in gst-examples
Not particularly useful there
2019-03-27 13:26:17 +11:00
Matthew Waters
c4a3df759d add CI for gst-examples android build 2019-03-27 12:11:31 +11:00
Matthew Waters
ab873b5e58 gitlab: add a script to clone a repository using manifest details 2019-03-26 21:35:44 +00:00
Jordan Petridis
bc2bd98a75
gitlab/ci_template: disable another test in check
close #12
2019-03-26 13:47:01 +02:00
Jordan Petridis
01624a5051
gitab/ci_template: Update cerbero image 2019-03-26 02:26:55 +02:00
Tim-Philipp Müller
7ed820aa1f gitlab/ci_template: run valgrind tests automatically
Don't valgrind everything for all changes though,
but only those modules most likely to be affected
by changes in the current ci project. So, valgrind

 - gstreamer only for gstreamer core changes
 - gst-plugins-base for core/base changes
 - gst-plugins-good for core/base/good changes
 - gst-plugins-ugly for core/base/ugly changes
 - gst-plugins-bad for core/base/good changes

In other words: don't valgrind core/base if it's
good/bad/ugly that's being changed, for example.
Don't valgrind -good or -ugly for changes in -bad,
etc.

Meaning:

 - for changes in core, valgrind core/base/good/ugly/bad
 - for changes in base, valgrind base/good/ugly/bad
 - for changes in good, valgrind good/bad
 - for changes in ugly, valgrind ugly
 - for changes in bad, valgrind bad

More modules to be added later once they're valgrind
clean on the CI.

https://gitlab.freedesktop.org/gstreamer/gst-ci/merge_requests/80
2019-03-25 17:31:44 +00:00
Tim-Philipp Müller
21733f4057 gitlab/ci_template: add manual valgrind jobs 2019-03-25 17:31:44 +00:00
Nirbheek Chauhan
ad598c3f02 Always print timestamps when running Cerbero
This is useful when doing performance improvements or comparisons.
2019-03-25 21:49:29 +05:30
Thibault Saunier
43d8affe31 Do not run indent on gst-integration-testsuites 2019-03-25 09:32:27 -03:00
Tim-Philipp Müller
b0affb257e gitlab/ci_template: blacklist curlhttpsrc test_multiple_http_requests
Too flaky.

https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/932
2019-03-23 20:04:38 +00:00
Jordan Petridis
d1181c94d5 gitlab/ci_template: add a build that disabled debug logs 2019-03-22 14:57:35 +00:00
Thibault Saunier
74a954ca91 Track gst-integration-testsuites 2019-03-21 18:15:13 -03:00
Jordan Petridis
0831f87561
gitlab/ci_template: refresh the image builds 2019-03-14 20:51:08 +02:00
Matthew Waters
775c0b3520 gitlab: remove the android gst-build target
android is now being tested using cerbero for the binaries we produce.
2019-03-13 13:00:01 -04:00
Matthew Waters
d6779a1d07 gitlab/cerbero-android: build without werror 2019-03-13 10:35:00 -04:00
Nicolas Dufresne
4221153836 CI: Add Android universal builds 2019-03-13 10:35:00 -04:00
Nicolas Dufresne
ae80b863c3 gitlab: Move cerbero jobs in gst-ci
This will allow extending the CI at one place.
2019-03-12 22:56:21 -04:00
Matthew Waters
ed534a2f5a cerbero: enable the werror variant by default 2019-03-11 15:00:57 +00:00
Matthew Waters
d86a39a65b gitlab: update cerbero-fedora image to the latest 2019-03-10 23:57:55 +11:00
Thibault Saunier
907400a2a0 Blacklist check.gstreamer-sharp.SdpTests 2019-03-06 10:47:20 -03:00
Tim-Philipp Müller
badb75f4ed gitlab/ci_template: skip cerbero builds for gst-build changes 2019-03-03 21:57:16 +00:00
Thibault Saunier
f87d553bc4 Enable GstSharp 2019-02-25 19:20:22 -03:00
Jordan Petridis
42335f3100
ci_template: unblacklist test
Should be fixed by the following MR
https://gitlab.freedesktop.org/gstreamer/gst-rtsp-server/merge_requests/20
2019-02-22 14:52:53 +02:00
Tim-Philipp Müller
001e05ab3a gitlab/ci_template: blacklist ges test_auto_transition test
Fails too often.

Reported as https://gitlab.freedesktop.org/gstreamer/gst-editing-services/issues/63
2019-02-18 14:12:35 +00:00
Sebastian Dröge
c1d7f69fd5 Blacklist racy audiomixer.test_flush_start_flush_stop test
See https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/555
2019-02-12 11:26:03 +02:00
Philippe Normand
0cde909af1 gitlab: Blacklist another ges test
python.test_timeline.TestTransitions.test_transition_type fails as reported in
https://gitlab.freedesktop.org/gstreamer/gst-editing-services/issues/62
2019-02-05 13:04:16 +00:00
Philippe Normand
81765960ca gitlab: Blacklist the rtsp-server test_shared_udp test
This test sometimes fails, as reported in
https://gitlab.freedesktop.org/gstreamer/gst-rtsp-server/issues/61
2019-02-05 10:27:39 +00:00
Nicolas Dufresne
b289400a04 Update docker hash
While cleaning up, I got confused since some docker were rebuilt without
but unused. So I broke the build, this should fix it.
2019-01-31 11:39:11 -05:00
Tim-Philipp Müller
e6a39a4eba gitlab/ci_template: blacklist multisocketsink test_add_client test
Unexpected critical/warning: gsignal.c:2641: instance '0x144a770' has no handler with id '2'

Stack trace:
gst_debug_get_stack_trace (gstinfo.c:2788)
gst_check_log_critical_func (gstcheck.c:281)
g_logv (/usr/lib64/libglib-2.0.so.0.5800.2:0x7f40d144e4fb)
g_log (/usr/lib64/libglib-2.0.so.0.5800.2:0x7f40d144e6ef)
g_signal_handler_disconnect (/usr/lib64/libgobject-2.0.so.0.5800.2:0x7f40d13c5a03)
g_cancellable_disconnect (/usr/lib64/libgio-2.0.so.0.5800.2:0x7f40d1238dae)
?? (/usr/lib64/libgio-2.0.so.0.5800.2:0x7f40d1238df8)
?? (/usr/lib64/libglib-2.0.so.0.5800.2:0x7f40d1444045)
?? (/usr/lib64/libglib-2.0.so.0.5800.2:0x7f40d1445407)
ensure_condition (gstmultisocketsink.c:999)
gst_multi_handle_sink_remove_client_link (gstmultihandlesink.c:971)
gst_multi_handle_sink_clear (gstmultihandlesink.c:847)
gst_multi_handle_sink_change_state (gstmultihandlesink.c:2200)
gst_element_change_state (gstelement.c:2952)
gst_element_change_state (gstelement.c:2991)
gst_element_change_state (gstelement.c:2991)
gst_element_set_state_func (gstelement.c:2906)
test_add_client (multisocketsink.c:230)

Likely same root cause as:
https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/516
https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/534
2019-01-16 15:48:40 +00:00
Jordan Petridis
092f6ddd84
gitlab/ci_template: blacklist extra tests
rtpsession.test_multiple_senders_roundrobin_rbs:
https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/issues/548

elements_audiotestsrc.test_layout:
https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/535
2019-01-11 11:06:44 +02:00
Jordan Petridis
f951999359
gitlab/ci_template: blacklist even more tests!
gstreamer.gst_gstsystemclock.test_periodic_shot:
https://gitlab.freedesktop.org/gstreamer/gstreamer/issues/348

splitmux.test_splitmuxsrc_caps_change:
https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/issues/547

nle_simple.test_simplest:
https://gitlab.freedesktop.org/gstreamer/gst-editing-services/issues/57

ges_basic.test_ges_pipeline_change_stat:
https://gitlab.freedesktop.org/gstreamer/gst-editing-services/issues/58

camerabin.test_single_video_recording:
https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/864#note_101558

camerabin.test_multiple_video_recordings:
https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/864#note_101646
2019-01-11 11:06:44 +02:00
Jordan Petridis
0dd20f61ea
gitlab/ci_template: Blacklist some more problematic tests
These tests are somewhat hard to reproduce and don't have an issue
associated with them yet, but they seem to fail quite often in
scenarios where they are run as part of a bigger group of tests

See !61 for more
2019-01-11 11:06:43 +02:00
Jordan Petridis
dcf237a438
ci_template: Remove the j = 1 restriction from check
Previously we were forcing tests to run with j 1 to avoid random
failures/races that occurred due to tests being racy. Majority
of those tests have been blacklisted and this should no longer be
needed.
2019-01-11 11:05:59 +02:00
Nicolas Dufresne
c021fb8310 gitlab: Update to latest cerbero docker image 2019-01-11 03:04:55 +00:00
Nicolas Dufresne
db62f95ba2 gitlab: Remove uneeded mkdir
The cerbero_home is already part of the /cerbero folder that we rsync
at start.
2019-01-10 16:26:49 -05:00
Jordan Petridis
eaa7497fa4
gitlab/ci_template: blacklist another test
camerabin.test_image_video_cycle seems racy:
https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/864
2019-01-10 11:42:05 +02:00
Jordan Petridis
c54fe7bc89
gitlab/ci_template: Blacklist more tests
pipelines_parse_launch.delayed_link:
https://gitlab.freedesktop.org/gstreamer/gstreamer/issues/345

gst_gstsystemclock.test_async_sync_interaction:
https://gitlab.freedesktop.org/gstreamer/gstreamer/issues/346

gst_gstsystemclock.test_periodic_multi:
https://gitlab.freedesktop.org/gstreamer/gstreamer/issues/347

rtpbin.test_cleanup_recv:
https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/issues/546
2019-01-10 10:41:52 +02:00
Jordan Petridis
b22e113e7a
gitlab/ci_template: blacklist another splitmux test
https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/issues/544
2019-01-08 22:31:06 +02:00
Jordan Petridis
0530c4e0e7
gitlab/ci_template: Blacklist another flvmux test
See https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/issues/543
2019-01-08 22:21:40 +02:00
Nicolas Dufresne
2396e18358 gitlab: Re-add ARCH parameter to cerbero deps jobs
This is required and was removed without proper testing.
2019-01-08 13:22:02 -05:00
Nicolas Dufresne
5a55d5103d CI: Add Win32 and Win64 cross builds 2019-01-08 10:31:19 -05:00
Jordan Petridis
6f8e23359a
gitlab/ci_template: update the sha of the images 2019-01-08 08:16:05 +02:00
Jordan Petridis
f072577905
gitlab/ci_template: Factor out the image uris to variables
This avoids duplication and makes them easier to update and keep
in sync.
2019-01-08 08:15:59 +02:00
Sebastian Dröge
5cd4bea651 gitlab: Unblacklist check.gst-plugins-good.elements_splitmux.test_splitmuxsrc_sparse_streams
Was caused by a bug in a MR.
2019-01-07 14:39:32 +02:00
Sebastian Dröge
14a4f360f2 gitlab: Blacklist 4 more tests
check.gst-plugins-base.pipelines_tcp.test_that_tcpserversink_and_tcpclientsrc_are_symmetrical:
  https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/221

check.gstreamer.elements_capsfilter.test_unfixed_downstream_caps:
  https://gitlab.freedesktop.org/gstreamer/gstreamer/issues/335

check.gst-rtsp-server.gst_rtspclientsink.test_record:
  https://gitlab.freedesktop.org/gstreamer/gst-rtsp-server/issues/55

check.gst-plugins-good.elements_splitmux.test_splitmuxsrc_sparse_streams:
  https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/issues/542
2019-01-07 14:33:50 +02:00
Thibault Saunier
652af10840 gitlab: Stop blacklisting check.gst-devtools.validate_padmonitor.buffer
https://gitlab.freedesktop.org/gstreamer/gst-devtools/issues/34 has been closed
2019-01-03 19:31:18 +01:00
Nicolas Dufresne
00d2fd776c ci: Update cerbero docker image
This new image contains source cache, which should speed first fork and
cold cache cases.
2018-12-18 14:05:37 -05:00
Sebastian Dröge
ea7a482326 ci_template.yml: blacklist one more tests in check
check.gst-editing-services.nle_complex.test_one_expandable_another occasionally fails.

https://gitlab.freedesktop.org/gstreamer/gst-editing-services/issues/55
2018-12-18 18:53:06 +02:00
Tim-Philipp Müller
8eec47d8fe ci_template: blacklist flaky gst-devtools.validate_padmonitor.buffer test
https://gitlab.freedesktop.org/gstreamer/gst-devtools/issues/34
2018-12-18 11:07:04 +00:00
Sebastian Dröge
57ec9441d2 ci_template.yml: blacklist one more tests in check
check.gst-plugins-bad.elements_netsim.netsim_stress occasionally fails.

https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/849
2018-12-17 11:43:34 +02:00
Sebastian Dröge
da4edd6950 ci_template.yml: Unblacklist test in check
gstpad.test_pad_probe_block_add_remove does not fail anymore.

https://gitlab.freedesktop.org/gstreamer/gstreamer/issues/339
2018-12-14 20:39:36 +02:00
Jordan Petridis
0592481638
ci_template: bump the expiration time of artifacts
build job artifacts are the ones that consume much space, and
thus only set to 5 days, might lower it if space is an issue.

Otherwise rest job artifacts are just logs, text and xml files.
2018-12-14 14:11:46 +02:00
Jordan Petridis
31991e6e0d
Revert "ci_template.yml: blacklist another test in check"
This reverts commit d922144894.

This was duplicate of 7f03e972ee
2018-12-14 14:11:45 +02:00
Jordan Petridis
d922144894
ci_template.yml: blacklist another test in check
check.gstreamer.gst_gstpad.test_pad_probe_block_add_remove
occasianlly fails.

https://gitlab.freedesktop.org/gstreamer/gstreamer/issues/339
2018-12-14 13:33:48 +02:00
Sebastian Dröge
17e25299e8 ci_template.yml: blacklist two more tests in check
check.gst-plugins-bad.elements_shm.test_shm_live
check.gst-plugins-good.elements_splitmux.test_splitmuxsink_async
occasionally fail.

https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/issues/531
https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/847
2018-12-14 12:34:21 +02:00
Sebastian Dröge
7f03e972ee ci_template.yml: blacklist another test in check
gstpad.test_pad_probe_block_add_remove occasionally fails.

https://gitlab.freedesktop.org/gstreamer/gstreamer/issues/339
2018-12-14 11:59:48 +02:00
Jordan Petridis
c2c72edc9b
ci_template.yml: blacklist another test in check
check.gst-plugins-good.elements_flvmux.test_incrementing_timestamps
occasianlly fails.

https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/issues/530
2018-12-13 21:46:20 +02:00
Xavier Claessens
6542818ffb android: Use the new docker image 2018-12-13 14:13:01 -05:00
Jordan Petridis
39f535986b
ci_template: enable h264parse.test_parse_packetized test again
Remove check.gst-plugins-bad.elements_h264parse.test_parse_packetized
from the blacklist since the relevant issue [1] seems to have been
resolved with the following MR [2]

[1] https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/842
[2] https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/merge_requests/69
2018-12-13 17:19:18 +02:00
Nicolas Dufresne
5a3cf8360c CI: Don't reset cache on fetch
This is not needed since we only do run without cache or from a deps
cache for the specific cerbero commit we are building. This will speed
up builds in cerbero/ project when the source cache is missing.
2018-12-12 10:12:26 -05:00
Jordan Petridis
1c68f94c68
ci_template: another blacklisted test in check
gst-plugins-good.elements_rtpbin.test_sender_eos
is occasionally failing.

For more see:
https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/issues/527
2018-12-11 22:57:46 +02:00
Jordan Petridis
f32f70d79b
ci_template: Blacklist another test in check
gst-plugins-base.elements_multisocketsink.test_client_next_keyframe
is occasionally failing somehow in the CI.

For more see:
https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/516
2018-12-11 20:33:18 +02:00
Jordan Petridis
5eb652177c
ci_template: do not .test in the cerbero repo
We already disable the .build inhereted build jobs, and thus the
tests fail to run since they depend on them. Cerbero doesn't need
to run them anyway.
2018-12-11 13:25:56 +02:00
Jordan Petridis
d25392f3e1
ci_template: Report ccache stats for build jobs 2018-12-10 21:35:38 +02:00
Jordan Petridis
a529757dec
ci_template: blacklist a problematic test in check
Also pass --dump-on-failure in the job. While the logs are
artifacts and they are integrated in the MRs, its not as
convinient to findout out what is failling if you are looking
into just a job log, of a commit. Thus make it show logs are also
priting on stdout/stderr.
2018-12-10 20:35:29 +02:00
Jordan Petridis
830507f202
ci_template: Blacklist problematic tests 2018-12-10 17:12:26 +02:00
Jordan Petridis
7151af0270
ci_template.yml: Run the check test suite!!!
Add a fedora job that runs the 'check' tests with
gst-validate-launcher. Its fairly well abstracted so the same
template can be used to add the rest of the test-suites fairly
soon.
2018-12-10 14:45:56 +02:00
Jordan Petridis
c9ee22d4c3
Revert "ci_template.yml: Temporarly disable builddir artifact"
This reverts commit 6ddb35c3c4.

A hotfix has been deployed, lets see how it goes.
2018-12-10 14:45:56 +02:00
Jordan Petridis
830b24df3e
ci_template: Remove duplicate key
Looks like this slipped past the review of !47
2018-12-10 11:50:49 +02:00
Nicolas Dufresne
d399288f15 CI: Enable cerbero builds for all projects 2018-12-09 18:19:06 -05:00
Nicolas Dufresne
00b67289b1 CI: Place cerbero docker image: in the template
This avoids having to duplicate that path into cerbero/ project and will
ease later updates.
2018-12-09 16:30:31 -05:00
Nicolas Dufresne
4291812f75 CI: Add cerbero docker SHA
No job activated yet.
2018-12-09 15:32:28 -05:00
Nicolas Dufresne
d19082b726 gitlab: Limit cerbero ccache to 1.7G
Testing showed that we need 1.6G to store all the objects. This limit
will prevent the cache from growing over time. Compressing the cache
can take a lot of time.
2018-12-09 19:12:07 +00:00
Nicolas Dufresne
fcbfb3dc68 gitlab: Use cache key for cerbero builds
The key is set to cerbero_${ARCH}. This should help maintain a smaller
cache size and will avoid other jobs from overriding our cerbero-sources
cache.
2018-12-09 19:12:07 +00:00
Nicolas Dufresne
e2595530ad gitlab: Don't build gst-build in cerbero repository 2018-12-09 19:12:07 +00:00
Nicolas Dufresne
d7322403f2 gitlab: Add orc and cerbero to manifest 2018-12-09 19:12:07 +00:00
Nicolas Dufresne
b1e3b9e6ab gitlab: Add cerbero build template and x86_64 build 2018-12-09 19:12:07 +00:00
Jordan Petridis
932a9c2137
ci_template: Use a cache key specific to each job 2018-12-09 04:34:35 +02:00
Thibault Saunier
5856b05f30 build_manifest: fetch remote refname before checking out right commit
Working around https://gitlab.freedesktop.org/freedesktop/freedesktop/issues/95
2018-12-06 07:23:30 -03:00
Thibault Saunier
7cb3feec19 build_manifest: Include remote refname in the manifest 2018-12-06 07:23:30 -03:00
Thibault Saunier
8932df0c2d buildmanifest: Move away from the gitlab API and use plain git to retrieve branch names
Makes the code much simpler
2018-12-06 00:09:17 -03:00
Jan Alexander Steffens (heftig)
4493ab0bb8
ci_template: Use git diff --quiet for checking for changes
Checking the exit code of git diff --quiet is preferred over looking
whether git diff produces any output.
2018-12-05 22:26:07 +01:00
Jan Alexander Steffens (heftig)
5b664cd00f
ci_template: Don't use command substitution with find
GNU find has operations like -exec and -delete that operate without the
brittleness of applying shell word splitting to its output.

In addition, it won't fail if no files were matched.
2018-12-05 22:26:07 +01:00
Jordan Petridis
9e8d215f90
ci_template: Add a gst-indent job 2018-12-03 17:39:09 +02:00
Nicolas Dufresne
597544cd61 build_manifest: Increase the number of search results
This increase the number of search results when looking up user
branches to 100 items. This should be sufficient for all of our users.

Fixes #3
2018-12-01 11:33:44 -05:00
Jordan Petridis
06c76e1d63
CI: Update image uris 2018-12-01 15:20:38 +02:00
Xavier Claessens
e89c402e14 Update docker images to latest 2018-11-28 13:39:16 -05:00
Jordan Petridis
f085d34a32
docker: Move android into a unified image 2018-11-27 16:07:57 +02:00
Tim-Philipp Müller
ed9ae8bb2b ci-template: build with --werror by default 2018-11-25 23:26:20 +00:00
Thibault Saunier
5321d73fa9 Add a script to import the GStreamer documentation inside the fdo server 2018-11-25 13:47:49 -03:00
Jordan Petridis
e89fad1455
gitlab/ci_template.yml: rework the CI stages
Idea is that in order to not consume many resources for broken
builds, we will have a basic stage where just one simple set of
build and test jobs is run. If that passes we will continue with
the rest of the Pipeline suite.
2018-11-23 20:48:54 +02:00
Jordan Petridis
2bb429bbf0
gitlab/ci_template.yml: add dependencies block to the .build template 2018-11-23 19:05:12 +02:00
Jordan Petridis
67fcaad29e
Revert "Avoid duplication between ci_template.yml and .gitlab-ci.yml"
This reverts commit 6bdd1ead99.

This does not actually avoid duplication... [1]

[1] 6bdd1ead99 (note_81275)
2018-11-23 19:05:12 +02:00
Xavier Claessens
6bdd1ead99 Avoid duplication between ci_template.yml and .gitlab-ci.yml 2018-11-22 16:51:31 -05:00
Xavier Claessens
1f326e2693 Add Android arm64 cross build 2018-11-22 14:59:35 -05:00
Xavier Claessens
68a71431b8 Build Ubuntu base image 2018-11-22 13:24:26 -05:00
Jordan Petridis
cc5ff7d8f0
CI: Test both the ci_template as well as local changes
Instead of just overwritting the template build jobs, test both
so we avoid regressions.

See [1] for more

[1] 1858a709e6
2018-11-22 16:26:34 +02:00
Jordan Petridis
bf92771e45
gitlab/ci_template.yml: Use tagged docker image for the manifest job 2018-11-22 13:18:03 +02:00
Jordan Petridis
c930a3a229
gitlab/ci_template.yml: Use correct yaml syntax
single quotes in yaml don't escape special charters which
causes the env variable to never be resolved to its proper path.
2018-11-22 12:55:52 +02:00
Thibault Saunier
01beb70022 gitlab: Update the docker image we use
so we have latest fix for gst-build git-update script
2018-11-21 21:27:39 -03:00
Thibault Saunier
2414895a53 build_manifest: Add the "path" attribute to projects
When the local path and the name are different, both have to be
specified, it is now required since we add the '.git' to the name.
2018-11-21 20:37:12 -03:00
Thibault Saunier
10ffa6f1af build_manifest: Add the to repo names to avoid spamming about redirections 2018-11-14 10:55:14 -03:00
Thibault Saunier
10ae6d0326 build_manifest: Never use users 'master' branch for repos we are not explicitely building
People very often do not update them leading to random and weird failures
2018-11-14 10:55:14 -03:00
Thibault Saunier
d8ebbea1f0 build_manifest: Make sure to respect GitLab currently built SHA 2018-11-14 10:14:08 -03:00
Thibault Saunier
12d067f249 Revert "Revert me when merged"
This reverts commit 5cff46553e913e5ab13e63561edaa519a4ca904f.
2018-11-13 14:15:41 -03:00
Thibault Saunier
d02fd933d3 Revert me when merged
Stopping the circular dependency.
2018-11-13 16:51:36 +00:00
Thibault Saunier
0cfe2cee41 gitlab: Handle checking out the right gst-ci branch to call build_manifest 2018-11-13 16:51:36 +00:00
Jordan Petridis
48f3063daf
build_manifest.py: Use CI_PROJECT_NAMESPACE instead of GITLAB_USER
GITLAB_USER_* variables represent the user *that triggered* the job,
which might not match the user that owns the namespace of the fork.

This happens frequently with rebase, where the one who triggers the
rebase is the one that appears in the GITLAB_USER_* vars.

Instead use the CI_PROJECT_NAMESPACE variable to search the user's
projects. If CI_PROJECT_NAMESPACE has the value of a Group namespace
search_user_namespace returns 404.
2018-11-13 13:20:32 +02:00
Jordan Petridis
e3d2c345b6
ci_template: Update docker image tags 2018-11-12 18:57:42 +02:00
Víctor Manuel Jáquez Leal
1858a709e6 ci_template.yml: enable gstreamer-vaapi 2018-11-12 16:04:13 +00:00
Víctor Manuel Jáquez Leal
d1b80b835b build_manifest.py: Add gstreamer-vaapi 2018-11-12 16:04:13 +00:00
Jordan Petridis
b335b4416b
build_manifest.py: Silence irrelevant logs
The group API querries where removed in 2320cfaf but the
log was forgotten.

The headers print was meant to be just for debugging.
2018-11-12 16:51:22 +02:00
Jordan Petridis
6ddb35c3c4
ci_template.yml: Temporarly disable builddir artifact
We won't use it till the tests land, and the fd.o runners are
getting overloading causing jobs to fail with 500 error during
artifact upload. [1]

Thus disable this feature temporarly.

[1]: https://gitlab.freedesktop.org/freedesktop/freedesktop/issues/44
2018-11-09 21:29:41 +02:00
Jordan Petridis
ece0ea97bf
Add an initial template of a gitlab-ci config
This is meant to be used with the `include:` featrue of gitlab [1]
in order to provide the same CI pipeline for all the gstreamer
modules.

[1] https://docs.gitlab.com/ce/ci/yaml/README.html#include
2018-11-09 16:22:10 +02:00
Edward Hervey
7a51b846f5 build-manifest: Remove reference to anongit
And make the gitlab one the "origin"
2018-11-09 14:08:17 +00:00
Jordan Petridis
fa20357221
build_manifest.py: remove get_hostname function
Not really needed anymore now that it just calls urlparse.
2018-11-06 16:25:53 +02:00
Jordan Petridis
9d637f6694
build_manifest.py: Hardcode the project ids of upstream repos.
Since we can't use the group api to query their id, see previous
commit, we are going to hard code the upstream project id for the
time being.
2018-11-06 16:25:53 +02:00
Jordan Petridis
2320cfaffd
build_manifest: Drop the group search for now
Since we can't authenticate with the CI_JOB_TOKEN it needs a
workaroud. Currently it falls back to the upstream repo which is
good enough to get us going.
2018-11-05 15:18:38 +02:00
Jordan Petridis
7ff131879b
build_manifest.py: Fix the api querries
Previously the script assumed that the best match will be the first
result, but that's not always the case apparently.
2018-11-05 14:41:50 +02:00
Jordan Petridis
39e2ddf788
build_manifest.py: avoid duplicate / in requests 2018-11-05 14:41:50 +02:00
Jordan Petridis
76d38faf20
build_manifest.py: remove request assertion
This does indeed brake things
2018-11-05 14:41:50 +02:00
Jordan Petridis
b5b71baddb
build_manifest.py: Prefer a custom token if set
In order to be able to query the Gitlab Group API we need to be
authenticated. CI_JOB_TOKEN for public jobs has a non-meaningfull
value which does not actually authenticate the Runner to the
intance.
2018-11-05 14:41:50 +02:00
Jordan Petridis
02b57af288
build_manifest.py: add some basic logging 2018-11-05 14:41:50 +02:00
Jordan Petridis
41a4ca4c8e
build_manifest.py: preserve env vars when running tests
pytest will happily run all the tests in the same proccess,
which means if one mutates an environment variable, the change
will bleed to the rest of the tests.
2018-11-05 14:31:52 +02:00
Jordan Petridis
f4d6e7e9c6
build_manifest.py: Avoid duplicating some code 2018-11-05 14:31:52 +02:00
Jordan Petridis
07a1480fc9
build_manifest.py: Avoid making the CI variables global
There are half of the variables compared to what was used before,
and now they are only used once so its not needed for them anymore
to be global.

This allows running the tests without needing to pre-define them
in your local environment, since the ones needed are mocked in the
tests code anyway.
2018-11-05 14:31:52 +02:00
Jordan Petridis
2e2864cde7
build_manifest.py: Properly query the group namepsace
Add a function to query groups, so the fallback code will
be functional once gstreamer migrates to gitlab.
2018-11-05 14:31:52 +02:00
Jordan Petridis
490e936dd1
build_manifest.py: Remove an unnecessary if branch
I can't think of a scenario where this would be hit, and can't
trigger make the find_reposiroty_sha function return None either.
2018-11-05 14:31:52 +02:00
Jordan Petridis
64c0e6fba3
build_manifest.py: Remove an early exit branch
find_repository_sha will conclude to the same result so
we can remove the whole if branch and extra variables
that it needed.
2018-11-05 14:31:52 +02:00
Jordan Petridis
e042a76031
build_manifest.py: Test the find_repository_sha function 2018-11-05 14:31:52 +02:00
Jordan Petridis
412d980b62
build_manifest.py: Handle bad requests 2018-11-05 14:31:52 +02:00
Jordan Petridis
10b1812e70
build_manifest.py: Use more descriprive variable name 2018-11-05 14:31:52 +02:00
Jordan Petridis
45c89ece12
build_manifest.py: Make the needed env vars global variables 2018-11-05 14:31:52 +02:00
Jordan Petridis
17195ea3aa
build_manifest.py: add a failure test case for branches 2018-11-05 14:31:52 +02:00
Jordan Petridis
ea5459e127
build_manifest.py: search user namespaces instead of global
Previously find_repository_sha would do a global search of
all the projects in the gitlab instance. This ports it to
use the user namespace endpoint.

Additionally seems like the else: block never worked.
2018-11-05 14:31:52 +02:00
Jordan Petridis
0b9a8b5cac
build_manifest.py: Add a function to search user namespace of projects
Also fix a type annotation error in the request functions.
2018-11-05 14:31:52 +02:00
Jordan Petridis
ca9b1362b3
build_manifest.py: Make sure the remote always ends with a slash
that's how `git-update` in `gst-build` expects it to be
2018-11-05 14:31:52 +02:00
Jordan Petridis
dc275a204e
build_manifest.py: Query the exact branch needed 2018-11-05 14:31:51 +02:00
Jordan Petridis
7ad193f276
build_manifest.py: Add a FIXME comment 2018-11-05 11:24:12 +02:00
Jordan Petridis
7ede52d7c7
build_manifest.py: Use the project path not the name
The project path is what's shown in the url bar, ex
gitlab.example.com/john/gstreamer -> path == gstreamer

The project name is defined in project settings and its just.
Its more common to change the name of a fork than its path.
2018-11-05 11:24:12 +02:00
Jordan Petridis
61c5d7b6cf
build_manifest.py: split the request function in two
Make it so it does not depend on env variables so it will be easier
to test.
2018-11-05 11:24:12 +02:00
Jordan Petridis
6772fa76aa
build_manifest.py: Split the hostname resolution from the requests 2018-11-05 11:24:12 +02:00
Jordan Petridis
9c53cd0db0
build_manifest.py: abstract over the gitlab instance base_url 2018-11-05 11:24:12 +02:00
Jordan Petridis
6e77bfb893
build_manifest.py: Use .format instead %s for templates 2018-11-05 11:24:12 +02:00
Jordan Petridis
c457ca0570
build_manifest.py: Use fstrings for string formatting 2018-11-05 11:24:12 +02:00
Jordan Petridis
095c93c62c
build_manifest.py: add type annotations 2018-11-05 11:24:12 +02:00
Thibault Saunier
a080432a32
gitlab: Add a script to build manifest from a gitlab CI context 2018-10-26 16:36:20 +03:00