summaryrefslogtreecommitdiff
path: root/python-cement.spec
blob: 5faf3ac9366a617cd122e49a4dff2e8e8120646f (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
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
%global _empty_manifest_terminate_build 0
Name:		python-cement
Version:	3.0.8
Release:	1
Summary:	Application Framework for Python
License:	BSD
URL:		https://builtoncement.com
Source0:	https://mirrors.nju.edu.cn/pypi/web/packages/be/c3/69d35ecc69a69801d7dad88c8943cf7f82b28b92ea9c2352ca6ca0f9e9cf/cement-3.0.8.tar.gz
BuildArch:	noarch

Requires:	python3-colorlog
Requires:	python3-pyYaml
Requires:	python3-jinja2
Requires:	python3-pylibmc
Requires:	python3-pystache
Requires:	python3-redis
Requires:	python3-tabulate
Requires:	python3-watchdog
Requires:	python3-pyYaml

%description
cement_cement-py35_1   /bin/bash                        Up
cement_cement-py36_1   /bin/bash                        Up
cement_cement-py37_1   /bin/bash                        Up
cement_cement-py38_1   /bin/bash                        Up
cement_cement-py39_1   /bin/bash                        Up
cement_cement_1        /bin/bash                        Up
cement_memcached_1     docker-entrypoint.sh memcached   Up      11211/tcp
cement_redis_1         docker-entrypoint.sh redis ...   Up      6379/tcp
$ docker-compose exec cement-py37 /bin/bash
|> cement-py37 <| src #
```
### VirtualENV
An traditional VirtualENV helper is available:
```
$ make virtualenv
$ source env/bin/activate
|> cement <| $
```
### Vagrant
An alternative option is included to run Vagrant for development.  This is partially supported, primarily for the purpose of developing/testing on Windows as well as testing specific issues on target operating systems.
To see a list of configured systems:
```
$ vagrant status
```
#### Linux
```
$ vagrant up linux
$ vagrant ssh linux
vagrant@linux $ cd /vagrant
vagrant@linux $ bash scripts/vagrant/bootstrap.sh
vagrant@linux $ make virtualenv
vagrant@linux $ source env/bin/activate
|> cement >| $
```
#### Windows
*Windows development and support is not 100% complete.  Cement is known to run and work on Windows, however it is not a primary target for development and as such the setup is not as streamlined and currently has several known errors.*
The following assumes you're running these two initial commands from a unix based system:
```
$ make clean
$ vagrant up windows
```
RDP or Login to Desktop/Console, and open a PowerShell terminal:
```
C:\> cd C:\Vagrant
C:\Vagrant> powershell.exe scripts\vagrant\bootstrap.ps1
C:\Vagrant> make virtualenv-windows
C:\Vagrant> .\env-windows\Scripts\activate.ps1
C:\Vagrant> make test-core
```
*Note that only the core library is fully tested on Windows.*
### Running Tests and Compliance
Cement has a strict policy that all code and tests meet PEP8 guidelines, therefore `flake8` is called before any unit tests run.  All code submissions require 100% test coverage and PEP8 compliance:
Execute the following to run all compliance and unit tests:
```
$ make test
```
A coverage report is printed to console, as well as the HTML version created in `coverage-report`:
```
$ open coverage-report/index.html
```
See `Makefile` for all other common development actions.

%package -n python3-cement
Summary:	Application Framework for Python
Provides:	python-cement
BuildRequires:	python3-devel
BuildRequires:	python3-setuptools
BuildRequires:	python3-pip
%description -n python3-cement
cement_cement-py35_1   /bin/bash                        Up
cement_cement-py36_1   /bin/bash                        Up
cement_cement-py37_1   /bin/bash                        Up
cement_cement-py38_1   /bin/bash                        Up
cement_cement-py39_1   /bin/bash                        Up
cement_cement_1        /bin/bash                        Up
cement_memcached_1     docker-entrypoint.sh memcached   Up      11211/tcp
cement_redis_1         docker-entrypoint.sh redis ...   Up      6379/tcp
$ docker-compose exec cement-py37 /bin/bash
|> cement-py37 <| src #
```
### VirtualENV
An traditional VirtualENV helper is available:
```
$ make virtualenv
$ source env/bin/activate
|> cement <| $
```
### Vagrant
An alternative option is included to run Vagrant for development.  This is partially supported, primarily for the purpose of developing/testing on Windows as well as testing specific issues on target operating systems.
To see a list of configured systems:
```
$ vagrant status
```
#### Linux
```
$ vagrant up linux
$ vagrant ssh linux
vagrant@linux $ cd /vagrant
vagrant@linux $ bash scripts/vagrant/bootstrap.sh
vagrant@linux $ make virtualenv
vagrant@linux $ source env/bin/activate
|> cement >| $
```
#### Windows
*Windows development and support is not 100% complete.  Cement is known to run and work on Windows, however it is not a primary target for development and as such the setup is not as streamlined and currently has several known errors.*
The following assumes you're running these two initial commands from a unix based system:
```
$ make clean
$ vagrant up windows
```
RDP or Login to Desktop/Console, and open a PowerShell terminal:
```
C:\> cd C:\Vagrant
C:\Vagrant> powershell.exe scripts\vagrant\bootstrap.ps1
C:\Vagrant> make virtualenv-windows
C:\Vagrant> .\env-windows\Scripts\activate.ps1
C:\Vagrant> make test-core
```
*Note that only the core library is fully tested on Windows.*
### Running Tests and Compliance
Cement has a strict policy that all code and tests meet PEP8 guidelines, therefore `flake8` is called before any unit tests run.  All code submissions require 100% test coverage and PEP8 compliance:
Execute the following to run all compliance and unit tests:
```
$ make test
```
A coverage report is printed to console, as well as the HTML version created in `coverage-report`:
```
$ open coverage-report/index.html
```
See `Makefile` for all other common development actions.

%package help
Summary:	Development documents and examples for cement
Provides:	python3-cement-doc
%description help
cement_cement-py35_1   /bin/bash                        Up
cement_cement-py36_1   /bin/bash                        Up
cement_cement-py37_1   /bin/bash                        Up
cement_cement-py38_1   /bin/bash                        Up
cement_cement-py39_1   /bin/bash                        Up
cement_cement_1        /bin/bash                        Up
cement_memcached_1     docker-entrypoint.sh memcached   Up      11211/tcp
cement_redis_1         docker-entrypoint.sh redis ...   Up      6379/tcp
$ docker-compose exec cement-py37 /bin/bash
|> cement-py37 <| src #
```
### VirtualENV
An traditional VirtualENV helper is available:
```
$ make virtualenv
$ source env/bin/activate
|> cement <| $
```
### Vagrant
An alternative option is included to run Vagrant for development.  This is partially supported, primarily for the purpose of developing/testing on Windows as well as testing specific issues on target operating systems.
To see a list of configured systems:
```
$ vagrant status
```
#### Linux
```
$ vagrant up linux
$ vagrant ssh linux
vagrant@linux $ cd /vagrant
vagrant@linux $ bash scripts/vagrant/bootstrap.sh
vagrant@linux $ make virtualenv
vagrant@linux $ source env/bin/activate
|> cement >| $
```
#### Windows
*Windows development and support is not 100% complete.  Cement is known to run and work on Windows, however it is not a primary target for development and as such the setup is not as streamlined and currently has several known errors.*
The following assumes you're running these two initial commands from a unix based system:
```
$ make clean
$ vagrant up windows
```
RDP or Login to Desktop/Console, and open a PowerShell terminal:
```
C:\> cd C:\Vagrant
C:\Vagrant> powershell.exe scripts\vagrant\bootstrap.ps1
C:\Vagrant> make virtualenv-windows
C:\Vagrant> .\env-windows\Scripts\activate.ps1
C:\Vagrant> make test-core
```
*Note that only the core library is fully tested on Windows.*
### Running Tests and Compliance
Cement has a strict policy that all code and tests meet PEP8 guidelines, therefore `flake8` is called before any unit tests run.  All code submissions require 100% test coverage and PEP8 compliance:
Execute the following to run all compliance and unit tests:
```
$ make test
```
A coverage report is printed to console, as well as the HTML version created in `coverage-report`:
```
$ open coverage-report/index.html
```
See `Makefile` for all other common development actions.

%prep
%autosetup -n cement-3.0.8

%build
%py3_build

%install
%py3_install
install -d -m755 %{buildroot}/%{_pkgdocdir}
if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi
if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi
if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi
if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi
pushd %{buildroot}
if [ -d usr/lib ]; then
	find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst
fi
if [ -d usr/lib64 ]; then
	find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst
fi
if [ -d usr/bin ]; then
	find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst
fi
if [ -d usr/sbin ]; then
	find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst
fi
touch doclist.lst
if [ -d usr/share/man ]; then
	find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst
fi
popd
mv %{buildroot}/filelist.lst .
mv %{buildroot}/doclist.lst .

%files -n python3-cement -f filelist.lst
%dir %{python3_sitelib}/*

%files help -f doclist.lst
%{_docdir}/*

%changelog
* Mon Apr 10 2023 Python_Bot <Python_Bot@openeuler.org> - 3.0.8-1
- Package Spec generated