14
0
forked from pool/python-Fabric
Files
python-Fabric/python-Fabric.spec
Tomáš Chvátal db14f619e0 Accepting request 692485 from home:glaubitz:branches:devel:languages:python
- Version update to 2.4.0:
  * [Feature] #1709: Add Group.close to allow closing an entire group’s
    worth of connections at once. Patch via Johannes Löthberg.
  * [Feature] #1780: Add context manager behavior to Group, to match
    the same feature in Connection. Feature request by István Sárándi.
  * [Feature] #1849: Add Connection.from_v1 (and Config.from_v1) for
    easy creation of modern Connection/Config objects from the currently
    configured Fabric 1.x environment. Should make upgrading piecemeal
    much easier for many use cases.
- additional changes from version 2.3.2:
    * [Bug] #1852: Grant internal Connection objects created during
      ProxyJump based gateways/proxies a copy of the outer Connection’s
      configuration object. This was not previously done, which among
      other things meant one could not fully disable SSH config file
      loading (as the internal Connection objects would revert to the
      default behavior). Thanks to Chris Adams for the report.
    * [Bug]: Some debug logging was reusing Invoke’s logger object,
      generating log messages “named” after invoke instead of fabric.
      This has been fixed by using Fabric’s own logger everywhere instead.
    * [Bug] #1850: Skip over ProxyJump configuration directives in SSH
      config data when they would cause self-referential RecursionError
      (e.g. due to wildcard-using Host stanzas which include the jump
      server itself). Reported by Chris Adams.
    * [Bug]: Fix a bug preventing tab completion (using the Invoke-level
      --complete flag) from completing task names correctly (behavior was
      to act as if there were never any tasks present, even if there was
      a valid fabfile nearby).
- Add sed expresion to spec file to remove all vendoring from imports
- Run testsuite using the new %pytest macro

OBS-URL: https://build.opensuse.org/request/show/692485
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Fabric?expand=0&rev=58
2019-04-11 09:50:09 +00:00

98 lines
3.3 KiB
RPMSpec

#
# spec file for package python-Fabric
#
# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-Fabric
Version: 2.4.0
Release: 0
Summary: A Pythonic tool for remote execution and deployment
License: BSD-2-Clause
Group: Development/Languages/Python
URL: http://fabfile.org
Source: https://files.pythonhosted.org/packages/source/f/fabric/fabric-%{version}.tar.gz
BuildRequires: %{python_module cryptography >= 1.1}
BuildRequires: %{python_module decorator}
BuildRequires: %{python_module invoke >= 1.1}
BuildRequires: %{python_module mock >= 2.0.0}
BuildRequires: %{python_module paramiko >= 2.4}
BuildRequires: %{python_module pytest >= 3.2.5}
BuildRequires: %{python_module pytest-relaxed}
BuildRequires: %{python_module setuptools}
BuildRequires: %{python_module six}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
Requires: python-cryptography >= 1.1
Requires: python-decorator
Requires: python-invoke >= 1.1
Requires: python-paramiko >= 2.4
Requires: python-setuptools
Requires: python-six
Conflicts: python-Fabric3
Provides: python-Fabric2 = %{version}
Provides: python-fabric = %{version}
Provides: python-fabric2 = %{version}
BuildArch: noarch
%python_subpackages
%description
Fabric is a Python library and command-line tool for
streamlining the use of SSH for application deployment or systems
administration tasks.
It provides a basic suite of operations for executing local or remote shell
commands (normally or via sudo) and uploading/downloading files, as well as
auxiliary functionality such as prompting the running user for input, or
aborting execution.
In addition to being used via the fab tool, Fabric's components may be imported
into other Python code, providing a Pythonic interface to the SSH protocol
suite at a higher level than that provided by e.g. Paramiko (which
Fabric itself leverages).
%prep
%setup -q -n fabric-%{version}
# fix all imports:
sed -i 's/from invoke.vendor\./from\ /' fabric/connection.py fabric/group.py integration/concurrency.py tests/config.py tests/transfer.py tests/_util.py tests/connection.py tests/runners.py
%build
%python_build
%install
%python_install
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%python_clone -a %{buildroot}%{_bindir}/fab
%check
%{python_expand export PYTHONPATH=%{buildroot}%{$python_sitelib}
%pytest tests/
}
%post
%python_install_alternative fab
%postun
%python_uninstall_alternative fab
%files %{python_files}
%license LICENSE
%doc README.rst
%python_alternative %{_bindir}/fab
%{python_sitelib}/*
%changelog