Merge branch 'tizen' into nether
[platform/core/test/security-tests.git] / packaging / security-tests.spec
1 Name:       security-tests
2 Summary:    Security repository for holding tests.
3 Version:    0.0.45
4 Release:    1
5 Group:      Security/Testing
6 License:    Apache License, Version 2.0
7 URL:        N/A
8 Source0:    %{name}-%{version}.tar.gz
9 Source1:    %{name}.manifest
10 BuildRequires: cmake
11 BuildRequires: libattr-devel
12 BuildRequires: pkgconfig(libcap)
13 BuildRequires: pkgconfig(libsmack)
14 BuildRequires: pkgconfig(security-manager)
15 BuildRequires: pkgconfig(key-manager)
16 BuildRequires: pkgconfig(yaca)
17 BuildRequires: pkgconfig(dlog)
18 BuildRequires: pkgconfig(glib-2.0)
19 BuildRequires: pkgconfig(dbus-1)
20 BuildRequires: pkgconfig(libpcrecpp)
21 BuildRequires: pkgconfig(libxml-2.0)
22 BuildRequires: pkgconfig(sqlite3)
23 BuildRequires: pkgconfig(libwebappenc)
24 BuildRequires: pkgconfig(openssl)
25 BuildRequires: cynara-devel
26 BuildRequires: libcynara-creds-dbus-devel
27 BuildRequires: libcynara-creds-gdbus-devel
28 BuildRequires: pkgconfig(libtzplatform-config)
29 BuildRequires: boost-devel
30 BuildRequires: pkgconfig(vconf)
31 BuildRequires: pkgconfig(libgum) >= 1.0.5
32 BuildRequires: pkgconfig(security-privilege-manager)
33 Requires: perf
34 Requires: gdb
35 Requires: diffutils
36 Requires: iproute2
37 Requires: toybox-symlinks-ping
38
39 %global ckm_test_dir %{?TZ_SYS_SHARE:%TZ_SYS_SHARE/ckm-test/}%{!?TZ_SYS_SHARE:/usr/share/ckm-test/}
40 %global ckm_rw_data_dir %{?TZ_SYS_DATA:%TZ_SYS_DATA/ckm/}%{!?TZ_SYS_DATA:/opt/data/ckm/}
41
42 %description
43 Security tests repository - for tests that can't be kept together with code.
44
45 %prep
46 %setup -q
47 cp %{SOURCE1} .
48
49 %build
50 export LDFLAGS+="-Wl,--rpath=%{_prefix}/lib"
51
52 cmake . -DCMAKE_INSTALL_PREFIX=%{_prefix} \
53         -DDPL_LOG="ON"                    \
54         -DDPL_WITH_DLOG="ON"              \
55         -DVERSION=%{version}              \
56         -DCMAKE_BUILD_TYPE=%{?build_type:%build_type}%{!?build_type:DEBUG} \
57 %if "%{sec_product_feature_security_mdfpp_enable}" == "1"
58         -DSECURITY_MDFPP_STATE_ENABLE=1 \
59 %endif
60         -DCMAKE_VERBOSE_MAKEFILE=ON       \
61         -DCYNARA_DB_DIR=%{_localstatedir}/cynara/db \
62         -DAPP_USER="security_test_user" \
63         -DCKM_TEST_DIR=%{ckm_test_dir} \
64         -DCKM_RW_DATA_DIR=%{ckm_rw_data_dir} \
65         -DGLOBAL_APP_DIR=%{TZ_SYS_RW_APP} \
66         -DLOCAL_APP_DIR="%{TZ_SYS_HOME}/security_test_user/apps_rw"
67 make %{?jobs:-j%jobs}
68
69 %pre
70 id -u  security_test_user 1>/dev/null 2>&1 || \
71     gum-utils -o -a --username=security_test_user --usertype=normal
72
73 %install
74 %make_install
75 ln -sf /etc/smack/test_smack_rules %{buildroot}/etc/smack/test_smack_rules_lnk
76
77 %post
78 # Reload dbus daemon to apply newly installed configuration
79 systemctl reload dbus
80
81 echo "security-tests postinst done ..."
82
83 %files
84 %manifest %{name}.manifest
85 %defattr(-, root, root, -)
86 /usr/bin/security-tests.sh
87 /usr/bin/security-tests-all.sh
88 /usr/bin/test-performance-check.sh
89 /usr/bin/setup-nether-tests-nns.sh
90 /usr/bin/teardown-nether-tests-nns.sh
91 /usr/bin/setup-nether-tests-dns.sh
92 /usr/bin/teardown-nether-tests-dns.sh
93
94 /etc/dbus-1/system.d/security-tests.conf
95
96 /usr/bin/libsmack-test
97 /etc/smack/test_smack_rules_full
98 /etc/smack/test_smack_rules2
99 /etc/smack/test_smack_rules3
100 /etc/smack/test_smack_rules4
101 /usr/bin/security-manager-tests
102 /etc/smack/test_smack_rules
103 /etc/smack/test_smack_rules_lnk
104 %{TZ_SYS_RW_APP}*
105 %attr(755, security_test_user,users) %{TZ_SYS_HOME}/security_test_user/apps_rw/*
106 /usr/bin/cynara-test
107 /usr/bin/ckm-tests
108 /usr/bin/ckm-privileged-tests
109 /usr/bin/ckm-tests-on-onlycap.sh
110 /usr/bin/ckm-integration-tests
111 /usr/bin/yaca-test
112 /usr/bin/nether-tests
113 %{ckm_test_dir}/*
114 /etc/security-tests
115 /usr/lib/security-tests/cynara-tests/plugins/single-policy/*
116 /usr/lib/security-tests/cynara-tests/plugins/multiple-policy/*
117 /usr/lib/security-tests/cynara-tests/plugins/test-agent/*
118 /usr/bin/security-tests-inner-test
119 /usr/bin/security-tests-cleanup-test
120 /usr/bin/cleanup_test.sh
121 /usr/bin/libwebappenc-tests
122 %{_prefix}/share/yaca-test
123 %dir %{_prefix}/share/security-tests-cleanup-test
124 %{_prefix}/share/security-tests-cleanup-test/*
125
126 %postun
127 id -u security_test_user 1>/dev/null 2>&1 && gum-utils -o -d --uid=`id -u security_test_user`