File: test_suite

package info (click to toggle)
openscap 1.4.3%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 125,116 kB
  • sloc: xml: 527,136; ansic: 91,867; sh: 19,831; python: 2,531; perl: 444; makefile: 49
file content (38 lines) | stat: -rw-r--r-- 1,752 bytes parent folder | download
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
# This Dockerfile should allow you to run the openscap test suite
# inside a Fedora container and it can be also used to test a specific
# pull request (PR).
#
# Example how to build it and run it:
#     podman build -t oscap_test_suite -f Dockerfiles/test_suite
#     podman run --cap-add=SYS_PTRACE -e PR=ID --name pr_test oscap_test_suite
#
# where ID in the $PR environment variable is the pull request (PR) ID,
# if ID would not be set (-e option omitted) tests will be run from the
# default branch (main).
#
# Once tests are finished it is possible to enter the container:
#     podman start pr_test
#     podman exec -it pr_test bash
# and when you are done with the container you can remove it:
#     podman rm -f pr_test
#
FROM fedora

RUN dnf -y update && \
    dnf -y install \
        git-extras git cmake dbus-devel GConf2-devel \
        libacl-devel libblkid-devel libcap-devel libcurl-devel \
        libgcrypt-devel libselinux-devel libxml2-devel libxslt-devel \
        libattr-devel make openldap-devel pcre-devel \
        perl-XML-Parser perl-XML-XPath perl-devel \
        python3-devel rpm-devel swig bzip2-devel \
        gcc-c++ libyaml-devel xmlsec1-devel xmlsec1-openssl-devel \
        hostname bzip2 lua rpm-build which strace \
    && dnf clean all \
    && rm -rf /var/cache/dnf

RUN git clone --recurse-submodules https://github.com/OpenSCAP/openscap
RUN echo -e "#!/bin/bash\n\ncd /openscap/build\nif [ -d /openscap/build/tests ]; then\n  sleep 1d\n  exit 0\nelse\n  [ -n \"\$PR\" ] && git pr \$PR\n  echo \"Testing branch: \$(git branch --show-current)\"\n  cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo ../ && make all\n  ctest --output-on-failure\nfi" >> /run.sh
RUN chmod +x /run.sh

CMD /bin/bash -c /run.sh; /bin/bash