mirror of
https://github.com/kdave/btrfs-progs
synced 2024-12-28 00:52:17 +00:00
65058429a5
The jobs has been failing for some time due the time limit 1h: + qemu-system-x86_64 -m 512 -nographic -kernel /repo/bzImage -drive file=/repo/qemu-image.img,index=0,media=disk,format=raw -fsdev local,id=btrfs-progs,path=/repo,security_model=mapped -device virtio-9p-pci,fsdev=btrfs-progs,mount_tag=btrfs-progs -append 'console=tty1 root=/dev/sda rw' main-loop: WARNING: I/O thread spun for 1000 iterations ERROR: Job failed: execution took longer than 1h0m0s seconds We'd still like to use the qemu test as it could pull the recent development kernel that the base image does not provide. However the overall performance is too bad and it does not make sense to waste GitLab resources. Also remove the build status badge from README as it changed at some point and does not render as a SVG image anymore. Issue: #171 Signed-off-by: David Sterba <dsterba@suse.com>
158 lines
4.9 KiB
YAML
158 lines
4.9 KiB
YAML
# This program is free software; you can redistribute it and/or
|
|
# modify it under the terms of the GNU General Public
|
|
# License v2 as published by the Free Software Foundation.
|
|
#
|
|
# This program is distributed in the hope that it will be useful,
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
# General Public License for more details.
|
|
#
|
|
# You should have received a copy of the GNU General Public
|
|
# License along with this program; if not, write to the
|
|
# Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
|
# Boston, MA 021110-1307, USA.
|
|
#
|
|
|
|
image: docker:18.09.7
|
|
|
|
services:
|
|
- docker:18.09.7-dind
|
|
|
|
# To enable or disable Kernel Build set BUILD_KERNEL: "1" or BUILD_KERNEL: "0"
|
|
# If you disable Kernel Build, make sure PREBUILT_KERNEL_ID points to previously built the kernel job id.
|
|
# To enable or disable image build update BUILD_IMAGE value to "1" or "0".
|
|
# If you disable Image Build, make sure PREBUILT_IMAGE_ID points to previously built rootfs job id.
|
|
|
|
variables:
|
|
DOCKER_DRIVER: overlay2
|
|
IMAGE_TAG: registry.gitlab.com/$CI_PROJECT_NAMESPACE/btrfs-progs:gitlab-ci
|
|
BUILD_KERNEL: "1"
|
|
PREBUILT_KERNEL_ID: "320566224"
|
|
BUILD_IMAGE: "1"
|
|
PREBUILT_IMAGE_ID: "288506168"
|
|
|
|
stages:
|
|
- build
|
|
- btrfs-progs build
|
|
- test
|
|
|
|
before_script:
|
|
- docker login --username $CI_REGISTRY_USER --password $CI_REGISTRY_PASSWORD $CI_REGISTRY
|
|
|
|
docker build:
|
|
stage: build
|
|
script:
|
|
- cd ci/gitlab
|
|
- docker pull $IMAGE_TAG > /dev/null && echo "Downloaded image" || ( docker build -t $IMAGE_TAG . && docker push $IMAGE_TAG )
|
|
|
|
|
|
kernel build:
|
|
before_script:
|
|
- apk add curl unzip
|
|
stage: build
|
|
script:
|
|
- if [ "$BUILD_KERNEL" == "1" ]; then
|
|
docker run --cap-add SYS_PTRACE --cap-add sys_admin --privileged --device=/dev/kvm -v $PWD:/repo $IMAGE_TAG /repo/ci/gitlab/kernel_build.sh;
|
|
else
|
|
curl -o bzImage.zip --location --header "JOB-TOKEN:$CI_JOB_TOKEN" "https://gitlab.com/api/v4/projects/$CI_PROJECT_ID/jobs/$PREBUILT_KERNEL_ID/artifacts" && unzip bzImage.zip;
|
|
fi;
|
|
artifacts:
|
|
when: always
|
|
paths:
|
|
- bzImage
|
|
|
|
|
|
image build:
|
|
before_script:
|
|
- apk add curl unzip
|
|
stage: build
|
|
script:
|
|
- if [ "$BUILD_IMAGE" == "1" ]; then
|
|
docker run --cap-add SYS_PTRACE --cap-add sys_admin --privileged --device=/dev/kvm -v $PWD:/repo $IMAGE_TAG /repo/ci/gitlab/setup_image.sh;
|
|
else
|
|
curl -o qemu-image.img.zip --location --header "JOB-TOKEN:$CI_JOB_TOKEN" "https://gitlab.com/api/v4/projects/$CI_PROJECT_ID/jobs/$PREBUILT_IMAGE_ID/artifacts" && unzip qemu-image.img.zip;
|
|
fi;
|
|
artifacts:
|
|
when: always
|
|
paths:
|
|
- qemu-image.img
|
|
|
|
btrfs-progs build:
|
|
stage: btrfs-progs build
|
|
script:
|
|
- docker run --cap-add SYS_PTRACE --cap-add sys_admin --privileged --device=/dev/kvm -v $PWD:/repo $IMAGE_TAG /repo/ci/gitlab/run_tests.sh
|
|
artifacts:
|
|
expire_in: 1 week
|
|
when: always
|
|
paths:
|
|
- qemu-image.img
|
|
|
|
cli tests:
|
|
stage: test
|
|
script:
|
|
- echo "./cli-tests.sh" > $PWD/cmd
|
|
- docker run --cap-add SYS_PTRACE --cap-add sys_admin --privileged --device=/dev/kvm -v $PWD:/repo $IMAGE_TAG /repo/ci/gitlab/run_tests.sh
|
|
- test -e "result" || exit 1 # If result doesn't exists, job failed.
|
|
artifacts:
|
|
when: always
|
|
paths:
|
|
- "*tests-results.txt"
|
|
|
|
convert tests:
|
|
only:
|
|
- devel
|
|
stage: test
|
|
script:
|
|
- echo "./convert-tests.sh" > $PWD/cmd
|
|
- docker run --cap-add SYS_PTRACE --cap-add sys_admin --privileged --device=/dev/kvm -v $PWD:/repo $IMAGE_TAG /repo/ci/gitlab/run_tests.sh
|
|
- test -e "result" || exit 1
|
|
artifacts:
|
|
when: always
|
|
paths:
|
|
- "*tests-results.txt"
|
|
|
|
fsck tests:
|
|
stage: test
|
|
script:
|
|
- echo "./fsck-tests.sh" > $PWD/cmd
|
|
- docker run --cap-add SYS_PTRACE --cap-add sys_admin --privileged --device=/dev/kvm -v $PWD:/repo $IMAGE_TAG /repo/ci/gitlab/run_tests.sh
|
|
- test -e "result" || exit 1
|
|
artifacts:
|
|
when: always
|
|
paths:
|
|
- "*tests-results.txt"
|
|
- error.log
|
|
|
|
fuzz tests:
|
|
stage: test
|
|
script:
|
|
- echo "./fuzz-tests.sh" > $PWD/cmd
|
|
- docker run --cap-add SYS_PTRACE --cap-add sys_admin --privileged --device=/dev/kvm -v $PWD:/repo $IMAGE_TAG /repo/ci/gitlab/run_tests.sh
|
|
- test -e "result" || exit 1
|
|
artifacts:
|
|
when: always
|
|
paths:
|
|
- "*tests-results.txt"
|
|
|
|
misc tests:
|
|
stage: test
|
|
script:
|
|
- echo "./misc-tests.sh" > $PWD/cmd
|
|
- docker run --cap-add SYS_PTRACE --cap-add sys_admin --privileged --device=/dev/kvm -v $PWD:/repo $IMAGE_TAG /repo/ci/gitlab/run_tests.sh
|
|
- test -e "result" || exit 1
|
|
artifacts:
|
|
when: always
|
|
paths:
|
|
- "*tests-results.txt"
|
|
|
|
mkfs tests:
|
|
stage: test
|
|
script:
|
|
- echo "./mkfs-tests.sh" > $PWD/cmd
|
|
- docker run --cap-add SYS_PTRACE --cap-add sys_admin --privileged --device=/dev/kvm -v $PWD:/repo $IMAGE_TAG /repo/ci/gitlab/run_tests.sh
|
|
- test -e "result" || exit 1
|
|
artifacts:
|
|
when: always
|
|
paths:
|
|
- "*tests-results.txt"
|