summaryrefslogtreecommitdiff
path: root/python-chopsticks.spec
blob: 7f5743c3c78a9437862a7a8381733e42a32ca697 (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
%global _empty_manifest_terminate_build 0
Name:		python-chopsticks
Version:	1.0
Release:	1
Summary:	Chopsticks is an orchestration library: it lets you manage and configure remote hosts over SSH.
License:	Apache Software License
URL:		https://github.com/lordmauve/chopsticks
Source0:	https://mirrors.nju.edu.cn/pypi/web/packages/9f/81/d6c21092db5e57a5114cce9c88955558bad1d8b42b5f0f815a9b7a9eba60/chopsticks-1.0.tar.gz
BuildArch:	noarch


%description
Chopsticks is an orchestration library: it lets you manage and configure
remote hosts over SSH.
Naturally this is agentless and nothing needs to be installed on the remote
host except Python and an SSH agent.
It also has support for executing code in Docker containers.
It's perhaps best compared to Ansible or Fabric, but has some clever transport
magic which means it's very easy to develop with: you just write Python
functions that can be called from the orchestration host. No invoking bash
commands (eg. Fabric) or writing self-contained scripts with constrained input
and output formats (eg. Ansible).
One might also draw a comparison with Python's built-in ``multiprocessing``
library, but instead of calling code in subprocesses on the same host, the
code may be run on remote hosts.

%package -n python3-chopsticks
Summary:	Chopsticks is an orchestration library: it lets you manage and configure remote hosts over SSH.
Provides:	python-chopsticks
BuildRequires:	python3-devel
BuildRequires:	python3-setuptools
BuildRequires:	python3-pip
%description -n python3-chopsticks
Chopsticks is an orchestration library: it lets you manage and configure
remote hosts over SSH.
Naturally this is agentless and nothing needs to be installed on the remote
host except Python and an SSH agent.
It also has support for executing code in Docker containers.
It's perhaps best compared to Ansible or Fabric, but has some clever transport
magic which means it's very easy to develop with: you just write Python
functions that can be called from the orchestration host. No invoking bash
commands (eg. Fabric) or writing self-contained scripts with constrained input
and output formats (eg. Ansible).
One might also draw a comparison with Python's built-in ``multiprocessing``
library, but instead of calling code in subprocesses on the same host, the
code may be run on remote hosts.

%package help
Summary:	Development documents and examples for chopsticks
Provides:	python3-chopsticks-doc
%description help
Chopsticks is an orchestration library: it lets you manage and configure
remote hosts over SSH.
Naturally this is agentless and nothing needs to be installed on the remote
host except Python and an SSH agent.
It also has support for executing code in Docker containers.
It's perhaps best compared to Ansible or Fabric, but has some clever transport
magic which means it's very easy to develop with: you just write Python
functions that can be called from the orchestration host. No invoking bash
commands (eg. Fabric) or writing self-contained scripts with constrained input
and output formats (eg. Ansible).
One might also draw a comparison with Python's built-in ``multiprocessing``
library, but instead of calling code in subprocesses on the same host, the
code may be run on remote hosts.

%prep
%autosetup -n chopsticks-1.0

%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-chopsticks -f filelist.lst
%dir %{python3_sitelib}/*

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

%changelog
* Mon May 29 2023 Python_Bot <Python_Bot@openeuler.org> - 1.0-1
- Package Spec generated