btrfs-progs/ci/.gitlab-ci.yml
David Sterba 65058429a5 btrfs-progs: ci: temporarily disable gitlab CI
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>
2021-01-18 20:53:23 +01:00

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"