Blob Blame History Raw
Name:           docker-compose
Version:        1.18.0
Release:        4%{?dist}
Summary:        Multi-container orchestration for Docker

License:        ASL 2.0
URL:            https://github.com/docker/compose
Source0:        %pypi_source

# Upstream uses environment markers to conditionally apply some dependencies.
# Environment markers were first added in setuptools 20.6.8.
Patch2:         allow-older-setuptools.patch

# rhbz#1636882
# If the pip command is available and docker-py is in the output, docker-compose
# will emit a warning advising the user to manipulate dependencies via pip.  That
# doesn't make sense when installed via RPM.
Patch3:         remove-pip-warning.patch

# docker-compose is compatible with fig and is a simple rename.
# Currently it only prints deprecation warnings for changed functionality.
Provides:       fig = %{version}-%{release}
# Last fig EVR was 1.0.1-2
Obsoletes:      fig <= 1.0.1-3

BuildRequires:  python%{python3_pkgversion}-devel
BuildRequires:  python%{python3_pkgversion}-setuptools
BuildRequires:  python%{python3_pkgversion}-pytest
BuildRequires:  python%{python3_pkgversion}-cached_property >= 1.2.0
BuildRequires:  python%{python3_pkgversion}-docopt >= 0.6.1
BuildRequires:  python%{python3_pkgversion}-yaml >= 3.10
BuildRequires:  python%{python3_pkgversion}-requests >= 2.6.1
BuildRequires:  python%{python3_pkgversion}-texttable >= 0.9.0
BuildRequires:  python%{python3_pkgversion}-websocket-client >= 0.32.0
BuildRequires:  python%{python3_pkgversion}-docker >= 2.6.1
BuildRequires:  python%{python3_pkgversion}-dockerpty >= 0.4.1
BuildRequires:  python%{python3_pkgversion}-six >= 1.3.0
BuildRequires:  python%{python3_pkgversion}-jsonschema >= 2.5.1
BuildRequires:  python%{python3_pkgversion}-pysocks >= 1.5.6

Requires:       python%{python3_pkgversion}-setuptools
Requires:       python%{python3_pkgversion}-cached_property >= 1.2.0
Requires:       python%{python3_pkgversion}-docopt >= 0.6.1
Requires:       python%{python3_pkgversion}-yaml >= 3.10
Requires:       python%{python3_pkgversion}-requests >= 2.6.1
Requires:       python%{python3_pkgversion}-texttable >= 0.9.0
Requires:       python%{python3_pkgversion}-websocket-client >= 0.32.0
Requires:       python%{python3_pkgversion}-docker >= 2.6.1
Requires:       python%{python3_pkgversion}-dockerpty >= 0.4.1
Requires:       python%{python3_pkgversion}-six >= 1.3.0
Requires:       python%{python3_pkgversion}-jsonschema >= 2.5.1
Requires:       python%{python3_pkgversion}-pysocks >= 1.5.6

BuildArch:      noarch


%description
Compose is a tool for defining and running multi-container Docker
applications. With Compose, you use a Compose file to configure your
application's services. Then, using a single command, you create and
start all the services from your configuration.

Compose is great for development, testing, and staging environments,
as well as CI workflows.

Using Compose is basically a three-step process.

1. Define your app's environment with a Dockerfile so it can be
   reproduced anywhere.
2. Define the services that make up your app in docker-compose.yml so
   they can be run together in an isolated environment:
3. Lastly, run docker-compose up and Compose will start and run your
   entire app.


%prep
%autosetup -p 1
rm -rf docker_compose.egg-info

# Remove dependency version constraints not relevant in Fedora/EPEL
sed -e 's/, < [0-9.]\+//' -i setup.py

# Backport of https://github.com/docker/compose/commit/8b5d32373e55dbf9d041c6b9c379900c94b9a6b9
sed -e 's/^import mock$/from tests import mock/' -i tests/unit/bundle_test.py


%build
%py3_build


%install
%py3_install
install -D -p -m 644 contrib/completion/bash/docker-compose %{buildroot}%{_datadir}/bash-completion/completions/docker-compose
install -D -p -m 644 contrib/completion/zsh/_docker-compose %{buildroot}%{_datadir}/zsh/site-functions/_docker-compose
install -D -p -m 644 contrib/completion/fish/docker-compose.fish %{buildroot}%{_datadir}/fish/vendor_completions.d/docker-compose.fish


%check
PYTHONPATH=%{buildroot}%{python3_sitelib} py.test-%{python3_version} --verbose tests/unit


%files
%license LICENSE
%doc CHANGELOG.md README.rst
%{_bindir}/%{name}
%{python3_sitelib}/compose
%{python3_sitelib}/docker_compose-%{version}-py%{python3_version}.egg-info
%{_datadir}/bash-completion
%{_datadir}/zsh
%{_datadir}/fish


%changelog
* Thu Mar 07 2019 Carl George <carl@george.computer> - 1.18.0-4
- Drop backports-ssl_match_hostname requirement for py34->py36 switch

* Thu Mar 07 2019 Troy Dawson <tdawson@redhat.com> - 1.18.0-3
- Rebuilt to change main python from 3.4 to 3.6

* Mon Oct 08 2018 Carl George <carl@george.computer> - 1.18.0-2
- Add patch3 to remove pip warning rhbz#1636882

* Fri May 18 2018 Carl George <carl@george.computer> - 1.18.0-1
- Bump to upstream 1.18.0
- Drop patch0, use sed on setup.py instead
- Add patch2 to allow use of older setuptools
- Use python34 stack
- Run upstream unit tests
- Add bash, zsh, and fish completions

* Tue Jun 06 2017 Carl George <carl.george@rackspace.com> - 1.9.0-5
- Relax minimum requirement of python-requests

* Wed May 31 2017 Michael Hampton <error@ioerror.us> - 1.9.0-4
- Update python-docker-py minimum version; fixes BZ#1457376

* Sun May 21 2017 Michael Hampton <error@ioerror.us> - 1.9.0-3
- Remove requires upper bound from setup.py, fixes BZ#1452999

* Sat Nov 19 2016 Michael Hampton <error@ioerror.us> - 1.9.0-2
- Add new upstream dependency python-backports-ssl_match_hostname

* Sat Nov 19 2016 Michael Hampton <error@ioerror.us> - 1.9.0-1
- Update to upstream 1.9.0
- Add new upstream dependency python2-backports-functools_lru_cache

* Fri Sep 23 2016 Michael Hampton <error@ioerror.us> - 1.8.1-1
- Update to upstream 1.8.1

* Thu Jul 28 2016 Michael Hampton <error@ioerror.us> - 1.8.0-1
- Update to upstream 1.8.0

* Tue Jul 19 2016 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.7.1-2
- https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages

* Thu May 05 2016 Michael Hampton <error@ioerror.us> - 1.7.1-1
- Update to upstream 1.7.1
- Updated package description from upstream

* Thu Apr 14 2016 Michael Hampton <error@ioerror.us> - 1.7.0-1
- Update to upstream 1.7.0

* Fri Feb 05 2016 Michael Hampton <error@ioerror.us> - 1.6.0-1
- Update to upstream 1.6.0

* Wed Feb 03 2016 Fedora Release Engineering <releng@fedoraproject.org> - 1.5.2-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild

* Tue Jan 12 2016 Michael Hampton <error@ioerror.us> - 1.5.2-4
- Added missing dependency python-enum34

* Mon Jan 11 2016 Michael Hampton <error@ioerror.us> - 1.5.2-3
- Added missing dependency python-jsonschema

* Wed Dec 30 2015 Michael Hampton <error@ioerror.us> - 1.5.2-2
- Updated locations of docs

* Wed Dec 30 2015 Michael Hampton <error@ioerror.us> - 1.5.2-1
- Update to upstream 1.5.2

* Wed Sep 23 2015 Michael Hampton <error@ioerror.us> - 1.4.2-1
- Fixes a regression in the 1.4.1 release that would cause
  docker-compose up without the -d option to exit immediately.

* Wed Sep 16 2015 Michael Hampton <error@ioerror.us> - 1.4.1-1
- Update to upstream 1.4.1

* Wed Aug 12 2015 Michael Hampton <error@ioerror.us> - 1.4.0-1
- Update to upstream 1.4.0
- Update Summary to match upstream summary

* Sat May 16 2015 Michael Hampton <error@ioerror.us> - 1.2.0-3
- Update Obsoletes EVR per packaging guidelines BZ#1213111

* Sun Apr 19 2015 Michael Hampton <error@ioerror.us> - 1.2.0-2
- Update location of LICENSE file

* Sat Apr 18 2015 Michael Hampton <error@ioerror.us> - 1.2.0-1
- Update to 1.2.0
- Added new doc SWARM.md
- Removed docker package requires as it is not required to build or run the
  package, only to run tests, which we can't do anyway
- Removed commented code relating to running tests, which we can't do anyway
- Made package noarch as docker-io is no longer required

* Mon Mar 23 2015 Michael Hampton <error@ioerror.us> - 1.1.0-1
- Update to 1.1.0 including upstream name change
- Requires python-dockerpty
- Requires python-docker-py >= 0.7.1-3 BZ#1197300

* Tue Mar 17 2015 Matej Stuchlik <mstuchli@redhat.com> - 1.0.1-2
- Completely remove version specs from setup.py

* Tue Mar 17 2015 Matej Stuchlik <mstuchli@redhat.com> - 1.0.1-1
- Update to 1.0.1

* Wed Dec 03 2014 Matej Stuchlik <mstuchli@redhat.com> - 1.0.0-5
- Remove upper bound from setup.py requires

* Wed Nov 12 2014 Matej Stuchlik <mstuchli@redhat.com> - 1.0.0-4
- Add python-setuptools to requires

* Thu Oct 23 2014 Matej Stuchlik <mstuchli@redhat.com> - 1.0.0-3
- Relax strict version requirements on websocket-client (#1155510)

* Tue Oct 21 2014 Matej Stuchlik <mstuchli@redhat.com> - 1.0.0-2
- Update Requires

* Tue Oct 21 2014 Matej Stuchlik <mstuchli@redhat.com> - 1.0.0-1
- Update to 1.0.0
- Droped the two patches

* Tue Oct 21 2014 Matej Stuchlik <mstuchli@redhat.com> - 0.5.2-2
- Explicitly disable debuginfo subpackage (#1154780)
- Add python-docker-py to Requires (#1154874)

* Thu Oct 09 2014 Matej Stuchlik <mstuchli@redhat.com> - 0.5.2-1
- Initial spec based on rhbz#1129889