summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCoprDistGit <infra@openeuler.org>2023-05-05 09:50:10 +0000
committerCoprDistGit <infra@openeuler.org>2023-05-05 09:50:10 +0000
commitda74ebab2463e5553e5e126ff6035a8034be3c30 (patch)
tree81cc178d689c05e2f2bf7218202c40f61b03a90c
parente7cad2dace984227c645f01e5097bb013042026f (diff)
automatic import of python-multipingopeneuler20.03
-rw-r--r--.gitignore1
-rw-r--r--python-multiping.spec387
-rw-r--r--sources1
3 files changed, 389 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
index e69de29..0b98ca6 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/multiping-1.1.2.tar.gz
diff --git a/python-multiping.spec b/python-multiping.spec
new file mode 100644
index 0000000..8349d02
--- /dev/null
+++ b/python-multiping.spec
@@ -0,0 +1,387 @@
+%global _empty_manifest_terminate_build 0
+Name: python-multiping
+Version: 1.1.2
+Release: 1
+Summary: Pure python library to send and receive ICMPecho request (ping) to monitor IP addresses
+License: Apache Software License
+URL: http://github.com/romana/multi-ping/
+Source0: https://mirrors.nju.edu.cn/pypi/web/packages/5e/2d/58d80a082f1985c83db0c9927fccb3108cfc6c384d5c55b107a3066eea6b/multiping-1.1.2.tar.gz
+BuildArch: noarch
+
+
+%description
+# MultiPing: A pure-python implemention to monitor IP addresses with pings
+
+MultiPing is a Python library to monitor one or many IP addresses via ICMP echo
+(ping) requests. Features:
+
+* It works for Python 2 and 3.
+* Supports timeouts and retries.
+* Supports IPv4 as well as IPv6.
+* Small and compact and does not rely on any 3rd party packages, aside from
+ what's included in Python.
+
+It is ideally suited to monitor large numbers of hosts in clusters, but is just
+as suitable to check on a single address.
+
+MultiPing was originally developed for the
+[vpc-router](https://github.com/romana/vpc-router) project, but can easily
+be used on its own.
+
+## Installation
+
+### Installation via pip
+
+MultiPing is available in PyPi, the Python Package Index. Therefore, you can
+install it simply with:
+
+ pip install multiping
+
+### Installation from source
+
+After downloading the code or cloning this repository, please run the `setup.py`
+file, which is included in the source code:
+
+ python setup.py install
+
+## Contributions
+
+We welcome any contributions, bug reports or feedback. Please use our
+[issue tracker](https://github.com/romana/multi-ping/issues) to file bugs or
+request additional features. We are happy to consider pull requests as well.
+
+## Using MultiPing
+
+_Note: ICMP packets can only be sent by processes with root privileges._
+
+Here is an example of how to use MultiPing in your own code:
+
+ from multiping import MultiPing
+
+ # Create a MultiPing object to test three hosts / addresses
+ mp = MultiPing(["8.8.8.8", "youtube.com", "127.0.0.1"])
+
+ # Send the pings to those addresses
+ mp.send()
+
+ # With a 1 second timout, wait for responses (may return sooner if all
+ # results are received).
+ responses, no_responses = mp.receive(1)
+
+The `receive()` function returns a tuple containing a results dictionary
+(addresses and response times) as well as a list of addresses that did not
+respond in time. The results may be processed like this:
+
+ ...
+
+ for addr, rtt in responses.items():
+ print "%s responded in %f seconds" % (addr, rtt)
+
+ if no_responses:
+ print "These addresses did not respond: %s" % ", ".join(no_responses)
+ # Sending pings once more, but just to those addresses that have not
+ # responded, yet. The MultiPing object 'mp' remembers the state of
+ # which address has responded already, so that another call to
+ # send() just generates packets to those hosts from which we haven't
+ # heard back, yet.
+ mp.send()
+ responses, no_responses = mp.receive(1)
+
+ ...
+
+Note that `send()` can be called multiple times. If there are any addresses
+left for which no response has been received yet then this will resend pings
+to those remaining addresses.
+
+A convenient `multi_ping()` function is provided, which implements retries and
+delivers results in a single and simple function call:
+
+ from multiping import multi_ping
+
+ addrs = ["8.8.8.8", "youtube.com", "127.0.0.1"]
+
+ # Ping the addresses up to 4 times (initial ping + 3 retries), over the
+ # course of 2 seconds. This means that for those addresses that do not
+ # respond another ping will be sent every 0.5 seconds.
+ responses, no_responses = multi_ping(addrs, timeout=2, retry=3)
+
+Also see the `demo.py` file for more examples.
+
+If there are any names or addresses in the list of target addresses, which
+cannot be resolved or looked up, a `socket.gaierror` is raised. This can be
+surpressed if the `silent_lookup_errors` parameter flag is set. Either as named
+parameter for the `multi_ping` function or when a `MultiPing` object is
+created.
+
+
+
+
+
+%package -n python3-multiping
+Summary: Pure python library to send and receive ICMPecho request (ping) to monitor IP addresses
+Provides: python-multiping
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+BuildRequires: python3-pip
+%description -n python3-multiping
+# MultiPing: A pure-python implemention to monitor IP addresses with pings
+
+MultiPing is a Python library to monitor one or many IP addresses via ICMP echo
+(ping) requests. Features:
+
+* It works for Python 2 and 3.
+* Supports timeouts and retries.
+* Supports IPv4 as well as IPv6.
+* Small and compact and does not rely on any 3rd party packages, aside from
+ what's included in Python.
+
+It is ideally suited to monitor large numbers of hosts in clusters, but is just
+as suitable to check on a single address.
+
+MultiPing was originally developed for the
+[vpc-router](https://github.com/romana/vpc-router) project, but can easily
+be used on its own.
+
+## Installation
+
+### Installation via pip
+
+MultiPing is available in PyPi, the Python Package Index. Therefore, you can
+install it simply with:
+
+ pip install multiping
+
+### Installation from source
+
+After downloading the code or cloning this repository, please run the `setup.py`
+file, which is included in the source code:
+
+ python setup.py install
+
+## Contributions
+
+We welcome any contributions, bug reports or feedback. Please use our
+[issue tracker](https://github.com/romana/multi-ping/issues) to file bugs or
+request additional features. We are happy to consider pull requests as well.
+
+## Using MultiPing
+
+_Note: ICMP packets can only be sent by processes with root privileges._
+
+Here is an example of how to use MultiPing in your own code:
+
+ from multiping import MultiPing
+
+ # Create a MultiPing object to test three hosts / addresses
+ mp = MultiPing(["8.8.8.8", "youtube.com", "127.0.0.1"])
+
+ # Send the pings to those addresses
+ mp.send()
+
+ # With a 1 second timout, wait for responses (may return sooner if all
+ # results are received).
+ responses, no_responses = mp.receive(1)
+
+The `receive()` function returns a tuple containing a results dictionary
+(addresses and response times) as well as a list of addresses that did not
+respond in time. The results may be processed like this:
+
+ ...
+
+ for addr, rtt in responses.items():
+ print "%s responded in %f seconds" % (addr, rtt)
+
+ if no_responses:
+ print "These addresses did not respond: %s" % ", ".join(no_responses)
+ # Sending pings once more, but just to those addresses that have not
+ # responded, yet. The MultiPing object 'mp' remembers the state of
+ # which address has responded already, so that another call to
+ # send() just generates packets to those hosts from which we haven't
+ # heard back, yet.
+ mp.send()
+ responses, no_responses = mp.receive(1)
+
+ ...
+
+Note that `send()` can be called multiple times. If there are any addresses
+left for which no response has been received yet then this will resend pings
+to those remaining addresses.
+
+A convenient `multi_ping()` function is provided, which implements retries and
+delivers results in a single and simple function call:
+
+ from multiping import multi_ping
+
+ addrs = ["8.8.8.8", "youtube.com", "127.0.0.1"]
+
+ # Ping the addresses up to 4 times (initial ping + 3 retries), over the
+ # course of 2 seconds. This means that for those addresses that do not
+ # respond another ping will be sent every 0.5 seconds.
+ responses, no_responses = multi_ping(addrs, timeout=2, retry=3)
+
+Also see the `demo.py` file for more examples.
+
+If there are any names or addresses in the list of target addresses, which
+cannot be resolved or looked up, a `socket.gaierror` is raised. This can be
+surpressed if the `silent_lookup_errors` parameter flag is set. Either as named
+parameter for the `multi_ping` function or when a `MultiPing` object is
+created.
+
+
+
+
+
+%package help
+Summary: Development documents and examples for multiping
+Provides: python3-multiping-doc
+%description help
+# MultiPing: A pure-python implemention to monitor IP addresses with pings
+
+MultiPing is a Python library to monitor one or many IP addresses via ICMP echo
+(ping) requests. Features:
+
+* It works for Python 2 and 3.
+* Supports timeouts and retries.
+* Supports IPv4 as well as IPv6.
+* Small and compact and does not rely on any 3rd party packages, aside from
+ what's included in Python.
+
+It is ideally suited to monitor large numbers of hosts in clusters, but is just
+as suitable to check on a single address.
+
+MultiPing was originally developed for the
+[vpc-router](https://github.com/romana/vpc-router) project, but can easily
+be used on its own.
+
+## Installation
+
+### Installation via pip
+
+MultiPing is available in PyPi, the Python Package Index. Therefore, you can
+install it simply with:
+
+ pip install multiping
+
+### Installation from source
+
+After downloading the code or cloning this repository, please run the `setup.py`
+file, which is included in the source code:
+
+ python setup.py install
+
+## Contributions
+
+We welcome any contributions, bug reports or feedback. Please use our
+[issue tracker](https://github.com/romana/multi-ping/issues) to file bugs or
+request additional features. We are happy to consider pull requests as well.
+
+## Using MultiPing
+
+_Note: ICMP packets can only be sent by processes with root privileges._
+
+Here is an example of how to use MultiPing in your own code:
+
+ from multiping import MultiPing
+
+ # Create a MultiPing object to test three hosts / addresses
+ mp = MultiPing(["8.8.8.8", "youtube.com", "127.0.0.1"])
+
+ # Send the pings to those addresses
+ mp.send()
+
+ # With a 1 second timout, wait for responses (may return sooner if all
+ # results are received).
+ responses, no_responses = mp.receive(1)
+
+The `receive()` function returns a tuple containing a results dictionary
+(addresses and response times) as well as a list of addresses that did not
+respond in time. The results may be processed like this:
+
+ ...
+
+ for addr, rtt in responses.items():
+ print "%s responded in %f seconds" % (addr, rtt)
+
+ if no_responses:
+ print "These addresses did not respond: %s" % ", ".join(no_responses)
+ # Sending pings once more, but just to those addresses that have not
+ # responded, yet. The MultiPing object 'mp' remembers the state of
+ # which address has responded already, so that another call to
+ # send() just generates packets to those hosts from which we haven't
+ # heard back, yet.
+ mp.send()
+ responses, no_responses = mp.receive(1)
+
+ ...
+
+Note that `send()` can be called multiple times. If there are any addresses
+left for which no response has been received yet then this will resend pings
+to those remaining addresses.
+
+A convenient `multi_ping()` function is provided, which implements retries and
+delivers results in a single and simple function call:
+
+ from multiping import multi_ping
+
+ addrs = ["8.8.8.8", "youtube.com", "127.0.0.1"]
+
+ # Ping the addresses up to 4 times (initial ping + 3 retries), over the
+ # course of 2 seconds. This means that for those addresses that do not
+ # respond another ping will be sent every 0.5 seconds.
+ responses, no_responses = multi_ping(addrs, timeout=2, retry=3)
+
+Also see the `demo.py` file for more examples.
+
+If there are any names or addresses in the list of target addresses, which
+cannot be resolved or looked up, a `socket.gaierror` is raised. This can be
+surpressed if the `silent_lookup_errors` parameter flag is set. Either as named
+parameter for the `multi_ping` function or when a `MultiPing` object is
+created.
+
+
+
+
+
+%prep
+%autosetup -n multiping-1.1.2
+
+%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-multiping -f filelist.lst
+%dir %{python3_sitelib}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Fri May 05 2023 Python_Bot <Python_Bot@openeuler.org> - 1.1.2-1
+- Package Spec generated
diff --git a/sources b/sources
new file mode 100644
index 0000000..acea171
--- /dev/null
+++ b/sources
@@ -0,0 +1 @@
+cceab7574d46030e041c54e12cffde8f multiping-1.1.2.tar.gz