-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathcloudrouter-centos-release.spec
153 lines (119 loc) · 4.39 KB
/
cloudrouter-centos-release.spec
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
%define cr_display_name CloudRouter
%define cr_name cloudrouter
%define cr_version 4
%define cr_readme README.%{cr_display_name}-Release-Notes
# Set this to 'Beta' or 'Release' depending on what type of release is pending.
%define release_tag Release
%define base_display_name CentOS
%define base_name centos
%define base_version 7.2
%define project_url http://cloudrouter.org
%define bug_url https://cloudrouter.atlassian.net/secure/Dashboard.jspa
Summary: %{cr_display_name} release files
Name: %{cr_name}-%{base_name}-release
Version: %{cr_version}
Release: 2
License: AGPLv3
Group: System Environment/Base
Source0: GNU-AGPL-3.0.txt
Source1: %{cr_readme}
Group: System Environment/Base
Obsoletes: redhat-release
Obsoletes: %{cr_name}-release
Provides: redhat-release
Provides: system-release
Provides: system-release(release)
Provides: cloudrouter-release
BuildArch: noarch
Conflicts: %{base_name}-release
Requires: cloudrouter-repo
Requires: centos-repo
Requires: epel-release
%description
%{cr_display_name} release files such as the /etc/ files that
define the release.
%package notes
Summary: Release Notes
License: Open Publication
Group: System Environment/Base
Provides: system-release-notes = %{version}-%{release}
Provides: cloudrouter-release-notes
Conflicts: %{base_name}-release-notes
%description notes
CloudRouter release notes package.
%prep
#%setup -q
%build
echo OK
%install
rm -rf $RPM_BUILD_ROOT
install -d $RPM_BUILD_ROOT/etc
echo "%{cr_display_name} release %{version} (%{release_tag})" > $RPM_BUILD_ROOT/etc/%{cr_name}-release
echo "cpe:/o:%{cr_name}:%{cr_name}:%{version}" > $RPM_BUILD_ROOT/etc/system-release-cpe
cp -p $RPM_BUILD_ROOT/etc/cloudrouter-release $RPM_BUILD_ROOT/etc/issue
echo "Kernel \r on an \m (\l)" >> $RPM_BUILD_ROOT/etc/issue
echo >> $RPM_BUILD_ROOT/etc/issue
cp -p $RPM_BUILD_ROOT/etc/issue $RPM_BUILD_ROOT/etc/issue.net
ln -s cloudrouter-release $RPM_BUILD_ROOT/etc/redhat-release
ln -s cloudrouter-release $RPM_BUILD_ROOT/etc/system-release
cat << EOF >>$RPM_BUILD_ROOT/etc/os-release
NAME=%{cr_display_name}
VERSION="%{version} (%{release_tag})"
ID=%{cr_name}
VERSION_ID=%{version}
PRETTY_NAME="%{cr_display_name} %{version} (%{release_tag})"
ANSI_COLOR="0;34"
CPE_NAME="cpe:/o:%{cr_name}:%{cr_name}:%{version}"
HOME_URL="%{project_url}"
BUG_REPORT_URL="%{bug_url}"
EOF
# Set up the dist tag macros
install -d -m 755 $RPM_BUILD_ROOT%{_rpmconfigdir}/macros.d
cat >> $RPM_BUILD_ROOT%{_rpmconfigdir}/macros.d/macros.dist << EOF
# dist macros.
%%cloudrouter %{cr_version}
%%dist .cr%{cr_version}
%%cr%{cr_version} %{cr_version}
EOF
# copy Release Notes
DOCS=( %{SOURCE0} %{SOURCE1} )
install -d -m 755 $RPM_BUILD_ROOT%{_docdir}/CloudRouter
for file in "${DOCS[@]}"; do
install -m 644 $file %{buildroot}/%{_docdir}/CloudRouter
done
%clean
rm -rf $RPM_BUILD_ROOT
%post
# fix yum.conf
sed -i s-"^bugtracker_url=.*$"-"bugtracker_url=%{bug_url}"- /etc/yum.conf
sed -i s/"^distroverpkg=.*$"/"distroverpkg=%{name}"/ /etc/yum.conf
%files
%defattr(-,root,root,-)
%doc %{_docdir}/CloudRouter/*
%config %attr(0644,root,root) /etc/os-release
%config %attr(0644,root,root) /etc/%{cr_name}-release
/etc/redhat-release
/etc/system-release
%config %attr(0644,root,root) /etc/system-release-cpe
%config(noreplace) %attr(0644,root,root) /etc/issue
%config(noreplace) %attr(0644,root,root) /etc/issue.net
%attr(0644,root,root) %{_rpmconfigdir}/macros.d/macros.dist
%files notes
%defattr(-,root,root,-)
%doc %{_docdir}/CloudRouter/%{cr_readme}
%changelog
- Removed test-repo as dependency in preparation for GA of CRv4
- Updated version for CRv4
- Updated version for CRv3
- Separated out the CentOS and CloudRouter RPM repository info.
- Added dependency on epel-release so the CloudRouter dependencies in EPEL7 are accessible.
- Added support for virtual package "cloudrouter-release".
- Fixed GPG key verification for RPMs downloaded from the CloudRouter repository.
- Initial commit of the Fedora-specific CloudRouter-release project after splitting it into separate ones for Fedora and CentOS.