mirror of
https://gitlab.gnome.org/GNOME/gparted
synced 2024-09-17 23:11:30 +00:00
b3f5213207
Print the kernel version and supported file systems inside the GNOME GitLab CI jobs as a debugging aid. Kernel version helps identify the CI job runner's distribution to identify kernel features. Supported file systems identifies which ones can be mounted, should that be possible in future. Print supported file systems before and after the tests because checking for support may load additional modules. See calls to Utils::kernel_supports_fs() for: btrfs, jfs, nilfs2 and xfs. Closes #147 - GitLab CI test failure from *.CreateAndGrow/jfs
123 lines
5 KiB
YAML
123 lines
5 KiB
YAML
stages:
|
|
- build
|
|
- test
|
|
|
|
.centos_image_template: ¢os_image_definition
|
|
# Use official CentOS image https://hub.docker.com/_/centos/.
|
|
image: centos:centos7
|
|
before_script:
|
|
- yum update -y
|
|
- yum install -y which gnome-common yelp-tools glib2-devel intltool
|
|
gcc-c++ libuuid-devel parted-devel gtkmm30-devel make
|
|
polkit file
|
|
# Extra packages only needed during the test stage.
|
|
# Install EPEL repo first for f2fs-tools and ntfsprogs.
|
|
- yum install -y epel-release
|
|
- yum install -y btrfs-progs e2fsprogs exfatprogs f2fs-tools dosfstools
|
|
mtools hfsplus-tools util-linux cryptsetup device-mapper
|
|
lvm2 ntfsprogs udftools xfsprogs xfsdump
|
|
xorg-x11-server-Xvfb kmod
|
|
- cat /proc/version
|
|
- cat /etc/os-release
|
|
- systemd-machine-id-setup
|
|
|
|
.ubuntu_image_template: &ubuntu_image_definition
|
|
# Use official Ubuntu image https://hub.docker.com/_/ubuntu/.
|
|
image: ubuntu:latest
|
|
before_script:
|
|
- export DEBIAN_FRONTEND=noninteractive
|
|
- apt-get update
|
|
- apt-get install -y build-essential gnome-common yelp-tools
|
|
libglib2.0-dev-bin uuid-dev libparted-dev
|
|
libgtkmm-3.0-dev policykit-1
|
|
# Extra packages only needed during the test stage.
|
|
- apt-get install -y btrfs-progs e2fsprogs f2fs-tools dosfstools mtools
|
|
hfsutils hfsprogs jfsutils util-linux cryptsetup-bin
|
|
dmsetup lvm2 nilfs-tools ntfs-3g reiser4progs
|
|
reiserfsprogs udftools xfsprogs xfsdump xvfb kmod
|
|
- cat /proc/version
|
|
- cat /etc/os-release
|
|
|
|
.build_stage_template: &build_stage_definition
|
|
stage: build
|
|
script:
|
|
- ./autogen.sh
|
|
- nproc=`grep -c '^processor' /proc/cpuinfo` || nproc=1
|
|
- echo nproc=$nproc
|
|
- make -j $nproc
|
|
- make install
|
|
# Save all files on job failure for investigation.
|
|
artifacts:
|
|
when: on_failure
|
|
name: "$CI_PROJECT_NAME-ci-job-$CI_JOB_ID-$CI_JOB_NAME"
|
|
untracked: true
|
|
paths:
|
|
- ./
|
|
expire_in: 1 week
|
|
|
|
.test_stage_template: &test_stage_definition
|
|
stage: test
|
|
script:
|
|
- ./autogen.sh
|
|
- nproc=`grep -c '^processor' /proc/cpuinfo` || nproc=1
|
|
- echo nproc=$nproc
|
|
- make -j $nproc
|
|
# Exclude specific unit tests which fail without being able to create
|
|
# loop devices in Docker images.
|
|
- export GTEST_FILTER='-My/SupportedFileSystemsTest.Create/lvm2pv'
|
|
- GTEST_FILTER+=':My/SupportedFileSystemsTest.CreateAndReadUsage/btrfs'
|
|
- GTEST_FILTER+=':My/SupportedFileSystemsTest.CreateAndReadUsage/lvm2pv'
|
|
- GTEST_FILTER+=':My/SupportedFileSystemsTest.CreateAndReadUsage/nilfs2'
|
|
- GTEST_FILTER+=':My/SupportedFileSystemsTest.CreateAndReadLabel/btrfs'
|
|
- GTEST_FILTER+=':My/SupportedFileSystemsTest.CreateAndReadLabel/lvm2pv'
|
|
- GTEST_FILTER+=':My/SupportedFileSystemsTest.CreateAndReadLabel/nilfs2'
|
|
- GTEST_FILTER+=':My/SupportedFileSystemsTest.CreateAndReadUUID/btrfs'
|
|
- GTEST_FILTER+=':My/SupportedFileSystemsTest.CreateAndReadUUID/lvm2pv'
|
|
- GTEST_FILTER+=':My/SupportedFileSystemsTest.CreateAndReadUUID/nilfs2'
|
|
- GTEST_FILTER+=':My/SupportedFileSystemsTest.CreateAndWriteLabel/lvm2pv'
|
|
- GTEST_FILTER+=':My/SupportedFileSystemsTest.CreateAndWriteLabel/nilfs2'
|
|
- GTEST_FILTER+=':My/SupportedFileSystemsTest.CreateAndWriteUUID/lvm2pv'
|
|
- GTEST_FILTER+=':My/SupportedFileSystemsTest.CreateAndWriteUUID/nilfs2'
|
|
- GTEST_FILTER+=':My/SupportedFileSystemsTest.CreateAndCheck/lvm2pv'
|
|
- GTEST_FILTER+=':My/SupportedFileSystemsTest.CreateAndRemove/lvm2pv'
|
|
- GTEST_FILTER+=':My/SupportedFileSystemsTest.CreateAndGrow/btrfs'
|
|
- GTEST_FILTER+=':My/SupportedFileSystemsTest.CreateAndGrow/jfs'
|
|
- GTEST_FILTER+=':My/SupportedFileSystemsTest.CreateAndGrow/lvm2pv'
|
|
- GTEST_FILTER+=':My/SupportedFileSystemsTest.CreateAndGrow/nilfs2'
|
|
- GTEST_FILTER+=':My/SupportedFileSystemsTest.CreateAndGrow/xfs'
|
|
- GTEST_FILTER+=':My/SupportedFileSystemsTest.CreateAndShrink/btrfs'
|
|
- GTEST_FILTER+=':My/SupportedFileSystemsTest.CreateAndShrink/lvm2pv'
|
|
- GTEST_FILTER+=':My/SupportedFileSystemsTest.CreateAndShrink/nilfs2'
|
|
- fgrep -v nodev /proc/filesystems | sort
|
|
# Create needed /dev entries for unit tests in Docker images.
|
|
- tests/makedev.sh
|
|
- make check
|
|
- make distcheck
|
|
- fgrep -v nodev /proc/filesystems | sort
|
|
# Save all files on job failure for investigation.
|
|
artifacts:
|
|
when: on_failure
|
|
name: "$CI_PROJECT_NAME-ci-job-$CI_JOB_ID-$CI_JOB_NAME"
|
|
untracked: true
|
|
paths:
|
|
- ./
|
|
expire_in: 1 week
|
|
|
|
# Check GParted can be built and installed on CentOS and Ubuntu.
|
|
centos_build:
|
|
<<: *centos_image_definition
|
|
<<: *build_stage_definition
|
|
|
|
ubuntu_build:
|
|
<<: *ubuntu_image_definition
|
|
<<: *build_stage_definition
|
|
|
|
# Check GParted unit tests and distcheck pass on CentOS and Ubuntu.
|
|
centos_test:
|
|
<<: *centos_image_definition
|
|
<<: *test_stage_definition
|
|
|
|
ubuntu_test:
|
|
<<: *ubuntu_image_definition
|
|
<<: *test_stage_definition
|