Welcome to mirror list, hosted at ThFree Co, Russian Federation.

.cirrus.yml - github.com/checkpoint-restore/criu.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 914ceb72cc6e9ef501aae30702d706ae09d18bf9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
task:
  name: Vagrant Fedora based test (no VDSO)
  environment:
    HOME: "/root"
    CIRRUS_WORKING_DIR: "/tmp/criu"

  compute_engine_instance:
    image_project: cirrus-images
    image: family/docker-kvm
    platform: linux
    cpu: 4
    memory: 16G
    nested_virtualization: true

  setup_script: |
    scripts/ci/apt-install make gcc pkg-config git perl-modules iproute2 kmod wget cpu-checker
    sudo kvm-ok
    ln -sf /usr/include/google/protobuf/descriptor.proto images/google/protobuf/descriptor.proto
  build_script: |
    make -C scripts/ci vagrant-fedora-no-vdso

task:
  name: CentOS Stream 9 based test
  environment:
    HOME: "/root"
    CIRRUS_WORKING_DIR: "/tmp/criu"

  compute_engine_instance:
    image_project: centos-cloud
    image: family/centos-stream-9
    platform: linux
    cpu: 4
    memory: 8G

  setup_script: |
    ln -sf /usr/include/google/protobuf/descriptor.proto images/google/protobuf/descriptor.proto
    dnf config-manager --set-enabled crb # Same as CentOS 8 powertools
    dnf -y install epel-release epel-next-release
    dnf -y install --allowerasing asciidoc gcc git gnutls-devel libaio-devel libasan libcap-devel libnet-devel libnl3-devel libbsd-devel libselinux-devel make protobuf-c-devel protobuf-devel python-devel python-PyYAML python-future python-protobuf python-junit_xml python-flake8 xmlto
    systemctl stop sssd
    # Even with selinux in permissive mode the selinux tests will be executed.
    # The Cirrus CI user runs as a service from selinux point of view and is
    # much more restricted than a normal shell (system_u:system_r:unconfined_service_t:s0).
    # The test case above (vagrant-fedora-no-vdso) should run selinux tests in enforcing mode.
    setenforce 0

  build_script: |
    make -C scripts/ci local SKIP_CI_PREP=1 CC=gcc CD_TO_TOP=1 ZDTM_OPTS="-x zdtm/static/socket-raw"

task:
  name: Vagrant Fedora Rawhide based test
  environment:
    HOME: "/root"
    CIRRUS_WORKING_DIR: "/tmp/criu"

  compute_engine_instance:
    image_project: cirrus-images
    image: family/docker-kvm
    platform: linux
    cpu: 4
    memory: 16G
    nested_virtualization: true

  setup_script: |
    scripts/ci/apt-install make gcc pkg-config git perl-modules iproute2 kmod wget cpu-checker
    sudo kvm-ok
    ln -sf /usr/include/google/protobuf/descriptor.proto images/google/protobuf/descriptor.proto
  build_script: |
    make -C scripts/ci vagrant-fedora-rawhide

task:
  name: Vagrant Fedora based test (non-root)
  environment:
    HOME: "/root"
    CIRRUS_WORKING_DIR: "/tmp/criu"

  compute_engine_instance:
    image_project: cirrus-images
    image: family/docker-kvm
    platform: linux
    cpu: 4
    memory: 16G
    nested_virtualization: true

  setup_script: |
    scripts/ci/apt-install make gcc pkg-config git perl-modules iproute2 kmod wget cpu-checker
    sudo kvm-ok
    ln -sf /usr/include/google/protobuf/descriptor.proto images/google/protobuf/descriptor.proto
  build_script: |
    make -C scripts/ci vagrant-fedora-non-root

task:
  name: CentOS Stream 8 based test
  environment:
    HOME: "/root"
    CIRRUS_WORKING_DIR: "/tmp/criu"

  compute_engine_instance:
    image_project: centos-cloud
    image: family/centos-stream-8
    platform: linux
    cpu: 4
    memory: 8G

  setup_script: |
    ln -sf /usr/include/google/protobuf/descriptor.proto images/google/protobuf/descriptor.proto
    # Do not fail if latest epel repository definition is already installed
    yum install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm || :
    yum install -y dnf-plugins-core
    yum config-manager --set-enabled powertools
    yum install -y --allowerasing asciidoc gcc git gnutls-devel libaio-devel libasan libcap-devel libnet-devel libnl3-devel libbsd-devel libselinux-devel make protobuf-c-devel protobuf-devel python3-devel python3-flake8 python3-PyYAML python3-future python3-protobuf python3-junit_xml xmlto
    alternatives --set python /usr/bin/python3
    systemctl stop sssd
    # Even with selinux in permissive mode the selinux tests will be executed
    # The Cirrus CI user runs as a service from selinux point of view and is
    # much more restricted than a normal shell (system_u:system_r:unconfined_service_t:s0)
    # The test case above (vagrant-fedora-no-vdso) should run selinux tests in enforcing mode
    setenforce 0

  build_script: |
    make -C scripts/ci local SKIP_CI_PREP=1 CC=gcc CD_TO_TOP=1 ZDTM_OPTS="-x zdtm/static/socket-raw"

task:
  name: CentOS 7 based test
  environment:
    HOME: "/root"
    CIRRUS_WORKING_DIR: "/tmp/criu"

  compute_engine_instance:
    image_project: centos-cloud
    image: family/centos-7
    platform: linux
    cpu: 4
    memory: 8G

  setup_script: |
    # EPEL is needed for python2-future, python2-junit_xml, python-flake8 and libbsd-devel.
    # Do not fail if latest epel repository definition is already installed
    yum install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm || :
    ln -sf /usr/include/google/protobuf/descriptor.proto images/google/protobuf/descriptor.proto
    yum install -y findutils gcc git gnutls-devel iproute iptables libaio-devel libasan libcap-devel libnet-devel libnl3-devel libbsd-devel make procps-ng protobuf-c-devel protobuf-devel protobuf-python python python-flake8 python-ipaddress python2-future python2-junit_xml python-yaml python-six sudo tar which e2fsprogs python2-pip rubygem-asciidoctor libselinux-devel
    # Even with selinux in permissive mode the selinux tests will be executed
    # The Cirrus CI user runs as a service from selinux point of view and is
    # much more restricted than a normal shell (system_u:system_r:unconfined_service_t:s0)
    # The test case above (vagrant-fedora-no-vdso) should run selinux tests in enforcing mode
    setenforce 0
    # Enable user namespaces on CentOS 7
    echo 10000 > /proc/sys/user/max_user_namespaces
    # Adapt sudoers to our needs
    echo 'root ALL=(ALL:ALL) ALL' | EDITOR='tee -a' visudo

  build_script: |
    make -C scripts/ci local SKIP_CI_PREP=1 CC=gcc CD_TO_TOP=1 ZDTM_IGNORE_TAINT=1 ZDTM_OPTS="-x zdtm/static/socket-raw -x zdtm/static/child_subreaper_existing_child -x zdtm/static/fifo_upon_unix_socket01 -x zdtm/static/overmount_sock -x zdtm/static/tempfs_overmounted"

task:
  name: aarch64 build GCC (native)
  arm_container:
    image: docker.io/library/ubuntu:jammy
    cpu: 4
    memory: 4G
  script: uname -a
  build_script: |
    scripts/ci/apt-install make
    ln -sf /usr/include/google/protobuf/descriptor.proto images/google/protobuf/descriptor.proto
    make -C scripts/ci local

task:
  name: aarch64 build CLANG (native)
  arm_container:
    image: docker.io/library/ubuntu:jammy
    cpu: 4
    memory: 4G
  script: uname -a
  build_script: |
    scripts/ci/apt-install make
    ln -sf /usr/include/google/protobuf/descriptor.proto images/google/protobuf/descriptor.proto
    make -C scripts/ci local CLANG=1

task:
  name: aarch64 Fedora Rawhide
  arm_container:
    image: registry.fedoraproject.org/fedora:rawhide
    cpu: 4
    memory: 4G
  script: uname -a
  build_script: |
    scripts/ci/prepare-for-fedora-rawhide.sh
    ln -sf /usr/include/google/protobuf/descriptor.proto images/google/protobuf/descriptor.proto
    make -C scripts/ci/ local CC=gcc SKIP_CI_PREP=1 SKIP_CI_TEST=1 CD_TO_TOP=1
    make -C test/zdtm -j 4