Commit graph

59 commits

Author SHA1 Message Date
Georges Basile Stavracas Neto
dc50111829
ci: Fix tests with tags
We need to run the tests, and when on tags, run 'ninja dist'.
Just that.
2019-03-11 16:16:50 -03:00
Georges Basile Stavracas Neto
7762c15277
ci: Run tests with meson
So that we can run a more complete version of the
tests.
2019-03-11 16:16:11 -03:00
Georges Basile Stavracas Neto
977a7d7d06
ci: Don't install libudisks2
[skip ci]
2019-03-11 15:12:46 -03:00
Georges Basile Stavracas Neto
3da2c39577
ci: Use fedora:latest for Ppc64le
[skip ci]
2019-03-11 14:40:45 -03:00
Georges Basile Stavracas Neto
cc4348a575
ci: Use the new Fedora 30 Dockerfiles
[skip ci]
2019-03-11 13:51:02 -03:00
Iain Lane
e83fd09949 ci: Rebuild docker images any time a commit touches the dockerfile
Currently they are built from cron, but we can use Gitlab's

  only:
    changes:
      - path

support to also trigger on path changes. This is restricted to only work
for pushes for master, so that branches / merge requests don't attempt
to rebuild the image.
2019-03-04 15:56:07 +00:00
Iain Lane
75c47ee7c9 ci: Install udisks2 for the coverage tests
This is needed to build g-c-c for the test, until the image is updated.
2019-03-04 15:56:07 +00:00
Georges Basile Stavracas Neto
2520aea647 info: use UDisks to retrieve disk size
The current code relies on GLib API and uses the
available mounts to calculate the available partition
size. This is because this code assumes that more
than one OS can be installed in the same drive, and
wouldn't make sense to show the whole disk size in
this situation.

That, however, clashes with the general purpose of
the panel, for it is meant to show general information
about the user's computer, and it is not reporting
the full disk size.

Fix that by using the UDisks API to get the real size
of the full disks.

https://bugzilla.gnome.org/show_bug.cgi?id=639376

Slighly modified by Iain Lane <iainl@gnome.org> to
port to meson and add udisks2 to CI deps.

Fixes #285.
Fixes #302.
2019-02-13 17:04:26 +00:00
Robert Ancell
1c5ac9abf9 Add GSound as a build-dependecy 2019-02-06 19:59:21 +00:00
Georges Basile Stavracas Neto
5eef2f4cff ci: Prevent stop_review from running on image builds
[skip ci]
2018-12-11 11:21:21 -02:00
Georges Basile Stavracas Neto
5791b9a213 ci: Document review stage
[skip-ci]
2018-12-11 11:21:04 -02:00
Georges Basile Stavracas Neto
b85c97e5ee
ci: Expire flatpak bundle in 7 days
2 days it too short of a time range.

[skip ci]
2018-11-27 16:00:00 -02:00
Georges Basile Stavracas Neto
b41deef778
ci: Rename icons when building flatpak
They need to match the app id.
2018-11-27 15:59:03 -02:00
Georges Basile Stavracas Neto
1c97796646
ci: Fix typo in variable value 2018-11-18 23:31:28 -02:00
Georges Basile Stavracas Neto
7027ac788a
ci: Point to new images again
This reverts commit 8f29cd019d.
2018-11-18 23:30:09 -02:00
Georges Basile Stavracas Neto
8f29cd019d
Revert "ci: Point to new images"
This reverts commit f7cb1e16cd.

Temporarily use the old images, to build the new ones correctly.

[skip ci]
2018-11-18 22:54:52 -02:00
Georges Basile Stavracas Neto
f7cb1e16cd
ci: Point to new images 2018-11-18 22:11:15 -02:00
Georges Basile Stavracas Neto
cfca142695
ci: Don't build when running the weekly image 2018-11-18 22:10:43 -02:00
Georges Basile Stavracas Neto
425feb6e59
ci: Properly quote regex string 2018-11-18 21:50:04 -02:00
Georges Basile Stavracas Neto
e27923b84e
ci: Simplify condition to now build images
[skip ci]
2018-11-18 21:21:39 -02:00
Georges Basile Stavracas Neto
c2c7547e78
Revert "ci: Build Docker images when Dockerfile changes"
This reverts commit 1d4d995323.
2018-11-18 20:55:52 -02:00
Georges Basile Stavracas Neto
1d4d995323
ci: Build Docker images when Dockerfile changes 2018-11-18 20:53:59 -02:00
Georges Basile Stavracas Neto
500b69c552 ci: Make armv8 and ppc64le manual jobs
They consume too much CI resources and take a long time
to run, which slows down the review and merge process.

Make them manual from now on.
2018-09-10 11:35:59 -03:00
Jordan Petridis
cfe6c6a214 CI: Replace placeholder value
We don't want to run the review jobs for the master branch. Since no MRs
will ever originate from it.
2018-08-15 05:41:34 +00:00
Jordan Petridis
f4cd42b02d
CI: Improve the flatpak review environments
For more:
https://gitlab.gnome.org/GNOME/Initiatives/wikis/DevOps-with-Flatpak#flatpak-bundle-for-every-mr-and-commit
2018-08-14 14:08:07 +03:00
Jordan Petridis
3d92e17047
CI: Use updated image for the flatpak job
gnome-nightly-oci repo has been deprecated for a while and replaced with
gnome-runtime-images[1]

The new repo also includes images with the stable GNOME runtime.
Which can be used by changing `gnome:master` to `gnome:3.28` for example.

[1] https://gitlab.gnome.org/GNOME/gnome-runtime-images
2018-08-14 14:08:03 +03:00
Claudio André
6285ebd1e5 CI: do not run 'pages' if not testing
The job "pages" should only run on regular test CI executions.
2018-08-06 21:46:46 +00:00
Claudio André
0cdc458752 CI: skip tests on translation commits 2018-08-01 20:07:01 -03:00
Claudio André
0f6a97eae1 CI: build flatpak using the "official" Docker image
[skip ci]
2018-07-17 15:06:34 -03:00
Claudio André
3edb185fa9 CI: refactor the yaml recipe
- create a stage named manual;
- use deploy as a stage name (as GitLab does);
- use "shared code".
2018-07-16 19:15:16 +00:00
Claudio André
94ba4c89da CI: run coverage only on master
To save resources. It is unlikely that anyone would want this information
from a branch. If necessary, we must create a manual job.
2018-07-16 19:15:16 +00:00
Claudio André
e3a2e96efb CI: allow PPC job to fail
It fails on progress.gnome.org but passes on scallable runners.
2018-07-16 16:06:54 -03:00
Georges Basile Stavracas Neto
f86b080fe4 ci: Automatically run ARMv8 and PPC64 jobs
They are all passing tests now, since 4f8a64ac2, which
means we can run them on every commit too.
2018-07-15 14:22:52 +00:00
Claudio André
185e53169f CI: build and save Docker images in GNOME GitLab 2018-07-14 23:49:17 -03:00
Claudio André
22132a2c91 CI: add ARMV8 and PPC64LE build tests 2018-07-15 01:47:23 +00:00
Claudio André
92af703634 CI: add MSAN, TSAN and UBSAN Sanitizers
MemorySanitizer (MSan) is a detector of uninitialized memory reads in C/C++ programs.
Uninitialized values occur when stack- or heap-allocated memory is read before
it is written.

ThreadSanitizer is a tool that detects data races.

UndefinedBehaviorSanitizer (UBSan) is a fast undefined behavior detector. UBSan
catches various kinds of undefined behavior, for example:
- Using misaligned or null pointer
- Signed integer overflow
- Conversion to, from, or between floating-point types which would overflow the
  destination

The llvm.org states that Sanitizers have found thousands of bugs everywhere.
Sanitizers running during CI can prevent bugs from taking up residence. They
are helper tools to maintain bugs out.
2018-07-11 07:56:57 +00:00
Claudio André
26cb1dde06 CI: use a previous Docker image
Fedora itself was/is unstable since some days ago.
See https://gitlab.gnome.org/GNOME/gnome-control-center/merge_requests/109#note_263396.
2018-07-10 12:32:53 -03:00
Claudio André
361e765427 CI: add ASAN Address Sanitizer
AddressSanitizer (or ASan) is a programming tool that detects memory
corruption bugs such as buffer overflows or use after free. AddressSanitizer
is based on compiler instrumentation.

The llvm.org states that Sanitizers have found thousands of bugs everywhere.
Sanitizers running during CI can prevent bugs from taking up residence. They
are helper tools to maintain bugs out.
2018-06-21 13:29:08 -03:00
Claudio André
38487017b3 CI: refactor the build process
In order to shrink the file and reuse "code".
2018-06-21 13:29:08 -03:00
Claudio André
8fb43047df CI: add coverage parsing to the job
It works only if enabled via CI/CD Settings. More info available at
https://docs.gitlab.com/ee/user/project/pipelines/settings.html#test-coverage-parsing.

The parsing regex was tested on my GitLab forked project.
2018-06-21 13:29:08 -03:00
Claudio André
316b901296 CI: avoid rebuilding in the test job
The test job was recompiling the software (unexpected behavior).
This was happening because the git checkout runs after the artifacts
download (resulting in the source code being newer than the object
files).

This commits saves and reuses the working directory produced by the
build job.
2018-06-21 15:35:00 +00:00
Claudio André
186038a014 CI: refactor the GitLab job header
In order to shrink the file and reuse "code".
2018-06-21 15:35:00 +00:00
Claudio André
28a66e5df1 CI: refactor GitLab yaml file 2018-06-21 15:34:59 +00:00
Claudio André
a1d57165c1 CI: add code coverage report 2018-06-21 15:34:59 +00:00
Claudio André
690f15b69d CI: create a workaround to build flatpak
GNOME master image is not working, so, we are using a workaround.
2018-05-28 21:50:50 +00:00
Claudio André
14adc647b5 CI: save the build log 2018-05-28 21:50:50 +00:00
Claudio André
ad0f3f6ffb CI: cache flatpak-builder files
It is needed to make things faster.
2018-05-28 21:50:49 +00:00
Claudio André
5ab9e645ee CI: handle patches while creating a flatpak
Make the flatpak routine able to deal with patches (if needed).
2018-05-16 18:49:35 +00:00
Georges Basile Stavracas Neto
017643dbf9 ci: Reorganize files 2018-05-16 15:18:57 -03:00
Claudio André
72732dd1db CI: create a flatpak
The goal is dogfooding. Allow interested people to try, safely, the
bleeding GNOME Control Center.
2018-05-15 19:16:01 -03:00