Files
python-Fabric/python-Fabric.spec
Markéta Machová ac958239e7 Accepting request 911821 from home:glaubitz:branches:devel:languages:python
- Update to 2.6.0:
  * [Feature] #1999: Add sudo support to Group. Thanks to Bonnie Hardin for
    the report and to Winston Nolan for an early patchset.
  * [Feature] #1810: Add put/get support to Group.
  * [Feature] #1868: Ported a feature from v1: interpolating the local path
    argument in Transfer.get with connection and remote filepath attributes.
    For example, cxn.get(remote="/var/log/foo.log", local="{host}/") is now
    feasible for storing a file in per-host-named directories or files, and
    in fact Group.get does this by default.
  * [Feature]: When the local path argument to Transfer.get contains nonexistent
    directories, they are now created instead of raising an error.
    Warning: This change introduces a new runtime dependency: pathlib2.
  * [Bug]: Fix a handful of issues in the handling and mocking of SFTP local paths
    and os.path members within fabric.testing; this should remove some occasional
    “useless Mocks” as well as hewing closer to the real behavior of things like
    os.path.abspath re: path normalization.
- Update Requires from setup.py

OBS-URL: https://build.opensuse.org/request/show/911821
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Fabric?expand=0&rev=69
2021-08-12 14:45:39 +00:00

104 lines
3.5 KiB
RPMSpec

#
# spec file for package python-Fabric
#
# Copyright (c) 2021 SUSE LLC
#
# 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.6.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
# fix executable in tests
Patch0: fix-executable.patch
BuildRequires: %{python_module cryptography >= 1.1}
BuildRequires: %{python_module decorator}
BuildRequires: %{python_module invoke >= 1.3}
BuildRequires: %{python_module mock >= 2.0.0}
BuildRequires: %{python_module paramiko >= 2.4}
BuildRequires: %{python_module pytest-relaxed}
# gh#bitprophet/pytest-relaxed#12
BuildRequires: %{python_module pytest < 6.1}
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.3
Requires: python-paramiko >= 2.4
Requires: python-pathlib2
Requires: python-setuptools
Requires: python-six
Conflicts: python-Fabric3
Provides: python-Fabric2 = %{version}
Provides: python-Fabric3 = %{version}
Provides: python-Fabric3 = %{version}
Provides: python-fabric = %{version}
Provides: python-fabric2 = %{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
%patch0 -p1
%build
%python_build
%install
%python_install
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%python_clone -a %{buildroot}%{_bindir}/fab
%check
%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