Merge branch 'master' into pip_custom_pypi

This commit is contained in:
Daniel Wozniak 2020-03-24 09:42:57 -07:00 committed by GitHub
commit 55655ff96c
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
18 changed files with 143 additions and 76 deletions

View file

@ -19,13 +19,13 @@ repos:
- id: pip-tools-compile
alias: compile-darwin-py2.7-zmq-requirements
name: Darwin Py2.7 ZeroMQ Requirements
files: ^(pkg/osx/(req|req_ext)\.txt|requirements/((base|zeromq|pytest)\.txt|static/darwin\.in))$
files: ^(pkg/osx/(req|req_pyobjc)\.txt|requirements/((base|zeromq|pytest)\.txt|static/darwin\.in))$
args:
- -v
- --py-version=2.7
- --platform=darwin
- --include=pkg/osx/req.txt
- --include=pkg/osx/req_ext.txt
- --include=pkg/osx/req_pyobjc.txt
- --include=requirements/base.txt
- --include=requirements/zeromq.txt
- --include=requirements/pytest.txt
@ -132,13 +132,13 @@ repos:
- id: pip-tools-compile
alias: compile-darwin-py3.5-zmq-requirements
name: Darwin Py3.5 ZeroMQ Requirements
files: ^(pkg/osx/(req|req_ext)\.txt|requirements/((base|zeromq|pytest)\.txt|static/darwin\.in))$
files: ^(pkg/osx/(req|req_pyobjc)\.txt|requirements/((base|zeromq|pytest)\.txt|static/darwin\.in))$
args:
- -v
- --py-version=3.5
- --platform=darwin
- --include=pkg/osx/req.txt
- --include=pkg/osx/req_ext.txt
- --include=pkg/osx/req_pyobjc.txt
- --include=requirements/base.txt
- --include=requirements/zeromq.txt
- --include=requirements/pytest.txt
@ -231,13 +231,13 @@ repos:
- id: pip-tools-compile
alias: compile-darwin-py3.6-zmq-requirements
name: Darwin Py3.6 ZeroMQ Requirements
files: ^(pkg/osx/(req|req_ext)\.txt|requirements/((base|zeromq|pytest)\.txt|static/darwin\.in))$
files: ^(pkg/osx/(req|req_pyobjc)\.txt|requirements/((base|zeromq|pytest)\.txt|static/darwin\.in))$
args:
- -v
- --py-version=3.6
- --platform=darwin
- --include=pkg/osx/req.txt
- --include=pkg/osx/req_ext.txt
- --include=pkg/osx/req_pyobjc.txt
- --include=requirements/base.txt
- --include=requirements/zeromq.txt
- --include=requirements/pytest.txt
@ -330,13 +330,13 @@ repos:
- id: pip-tools-compile
alias: compile-darwin-py3.7-zmq-requirements
name: Darwin Py3.7 ZeroMQ Requirements
files: ^(pkg/osx/(req|req_ext)\.txt|requirements/((base|zeromq|pytest)\.txt|static/darwin\.in))$
files: ^(pkg/osx/(req|req_pyobjc)\.txt|requirements/((base|zeromq|pytest)\.txt|static/darwin\.in))$
args:
- -v
- --py-version=3.7
- --platform=darwin
- --include=pkg/osx/req.txt
- --include=pkg/osx/req_ext.txt
- --include=pkg/osx/req_pyobjc.txt
- --include=requirements/base.txt
- --include=requirements/zeromq.txt
- --include=requirements/pytest.txt

View file

@ -42,6 +42,8 @@ Versions are `MAJOR.PATCH`.
- [#56360](https://github.com/saltstack/salt/pull/56360) - dont require virtualenv.virtualenv_version call, removed in 20.0.10
- [#56378](https://github.com/saltstack/salt/pull/56378) - Include _version.py if building wheel
- [#56376](https://github.com/saltstack/salt/pull/56376) - Fix win deps
- [#56418](https://github.com/saltstack/salt/pull/56418) - Ensure version.py included before we install
- [#56435](https://github.com/saltstack/salt/pull/56435) - Update mac build scripts
### Added

View file

@ -301,7 +301,7 @@ def _install_requirements(session, transport, *extra_requirements):
elif sys.platform.startswith('darwin'):
requirements_files = [
os.path.join('pkg', 'osx', 'req.txt'),
os.path.join('pkg', 'osx', 'req_ext.txt'),
os.path.join('pkg', 'osx', 'req_pyobjc.txt'),
os.path.join('requirements', 'static', 'darwin.in')
]

View file

@ -284,15 +284,28 @@ echo "##########################################################################
echo "Installing Salt Dependencies with pip (normal)"
echo "################################################################################"
$PIP install -r $SRCDIR/pkg/osx/req.txt \
--no-cache-dir
--target=$PYDIR/site-packages \
--ignore-installed \
--no-cache-dir \
--upgrade
echo "################################################################################"
echo "Installing Salt Dependencies with pip (build_ext)"
echo "Installing PyOBJ C Dependencies with pip (normal)"
echo "################################################################################"
$PIP install -r $SRCDIR/pkg/osx/req_ext.txt \
--global-option=build_ext \
--global-option="-I$INSTALL_DIR/include" \
--no-cache-dir
$PIP install -r $SRCDIR/pkg/osx/req_pyobjc.txt \
--target=$PYDIR/site-packages \
--ignore-installed \
--no-cache-dir \
--upgrade
#echo "################################################################################"
#echo "Installing Salt Dependencies with pip (build_ext)"
#echo "################################################################################"
#$PIP install -r $SRCDIR/pkg/osx/req_ext.txt \
# --global-option=build_ext \
# --global-option="-I$INSTALL_DIR/include" \
# --ignore-installed \
# --no-cache-dir
echo "--------------------------------------------------------------------------------"
echo "Create Symlink to certifi for openssl"

View file

@ -5,10 +5,10 @@ certifi
cffi==1.12.2
CherryPy==17.4.1
click==7.0
cryptography==2.8
enum34==1.1.6
futures==3.2.0 ; python_version < "3.0"
gitdb==0.6.4
gitpython==2.1.11
gitpython==2.1.15
idna==2.8
ipaddress==1.0.22
jinja2==2.10.1
@ -20,8 +20,7 @@ psutil==5.6.1
pyasn1==0.4.5
pycparser==2.19
pycryptodome==3.8.1
pyobjc==5.1.2
pyopenssl
pyopenssl==19.1.0
python-dateutil==2.8.0
python-gnupg==0.4.4
pyyaml==5.1.2
@ -29,6 +28,5 @@ pyzmq==18.0.1
requests==2.21.0
setproctitle
singledispatch==3.4.0.3; python_version < '3.4'
smmap==0.9.0
timelib==0.2.4
vultr==1.0.1

View file

@ -1,2 +0,0 @@
cryptography==2.6.1
pyopenssl==19.0.0

7
pkg/osx/req_pyobjc.txt Normal file
View file

@ -0,0 +1,7 @@
pyobjc==5.3
pyobjc-framework-AdSupport==5.3
pyobjc-framework-BusinessChat==5.3
pyobjc-framework-NaturalLanguage==5.3
pyobjc-framework-Network==5.3
pyobjc-framework-UserNotifications==5.3
pyobjc-framework-VideoSubscriberAccount==5.3

View file

@ -2,12 +2,12 @@
# This file is autogenerated by pip-compile
# To update, run:
#
# pip-compile -o requirements/static/py2.7/darwin.txt -v pkg/osx/req.txt pkg/osx/req_ext.txt requirements/base.txt requirements/zeromq.txt requirements/pytest.txt requirements/static/darwin.in
# pip-compile -o requirements/static/py2.7/darwin.txt -v pkg/osx/req.txt requirements/base.txt requirements/zeromq.txt requirements/pytest.txt requirements/static/darwin.in
#
apache-libcloud==2.4.0
appdirs==1.4.3 # via virtualenv
argh==0.26.2 # via watchdog
asn1crypto==1.3.0 # via certvalidator, cryptography, oscrypto
asn1crypto==1.3.0 # via certvalidator, oscrypto
atomicwrites==1.3.0 # via pytest
attrs==19.1.0 # via pytest
aws-xray-sdk==0.95 # via moto
@ -34,7 +34,7 @@ configparser==4.0.2 # via importlib-metadata
contextlib2==0.6.0.post1 # via cherrypy, importlib-metadata, importlib-resources, virtualenv
cookies==2.2.1 # via responses
croniter==0.3.29
cryptography==2.6.1
cryptography==2.8
distlib==0.3.0 # via virtualenv
dnspython==1.16.0
docker-pycreds==0.4.0 # via docker
@ -49,8 +49,7 @@ future==0.17.1 # via python-jose
futures==3.2.0 ; python_version < "3.0"
genshi==0.7.3
gitdb2==2.0.5 # via gitpython
gitdb==0.6.4
gitpython==2.1.11
gitpython==2.1.15
google-auth==1.6.3 # via kubernetes
idna==2.8
importlib-metadata==0.23 # via importlib-resources, pluggy, pytest, virtualenv
@ -93,7 +92,7 @@ pyasn1==0.4.5
pycparser==2.19
pycryptodome==3.8.1
pynacl==1.3.0 # via paramiko
pyopenssl==19.0.0
pyopenssl==19.1.0
pyparsing==2.4.5 # via packaging
pyserial==3.4 # via junos-eznc
pytest-helpers-namespace==2019.1.8
@ -122,7 +121,6 @@ setproctitle==1.1.10
singledispatch==3.4.0.3 ; python_version < "3.4"
six==1.12.0 # via bcrypt, cheroot, cherrypy, cryptography, docker, docker-pycreds, google-auth, junos-eznc, kubernetes, mock, more-itertools, moto, ncclient, packaging, pathlib2, pynacl, pyopenssl, pytest, python-dateutil, python-jose, pyvmomi, responses, salttesting, singledispatch, tempora, vcert, virtualenv, websocket-client
smmap2==2.0.5 # via gitdb2
smmap==0.9.0
strict-rfc3339==0.7
supervisor==3.3.5 ; python_version < "3"
tempora==1.14.1 # via portend
@ -142,5 +140,3 @@ xmltodict==0.12.0 # via moto
yamlordereddictloader==0.4.0
zc.lockfile==1.4 # via cherrypy
zipp==0.6.0 # via importlib-metadata, importlib-resources
# Passthrough dependencies from pkg/osx/req.txt
pyobjc==5.1.2

View file

@ -35,15 +35,14 @@ docker-pycreds==0.4.0 # via docker
docker==2.7.0
docutils==0.14 # via botocore
ecdsa==0.13.3 # via python-jose
enum34==1.1.6
enum34==1.1.6 ; python_version < "3.4"
funcsigs==1.0.2 # via mock, pytest
functools32==3.2.3.post2 # via jsonschema
future==0.17.1 # via python-jose
futures==3.2.0 ; python_version < "3.0"
futures==3.3.0 ; python_version < "3.0"
genshi==0.7.3
gitdb2==2.0.5 # via gitpython
gitdb==0.6.4
gitpython==2.1.10
gitpython==2.1.15
google-auth==1.6.3 # via kubernetes
idna==2.8
importlib-metadata==0.23 # via pluggy, pytest
@ -114,7 +113,6 @@ setproctitle==1.1.10
singledispatch==3.4.0.3 ; python_version < "3.4"
six==1.12.0 # via cheroot, cherrypy, cryptography, docker, docker-pycreds, google-auth, kubernetes, mock, more-itertools, moto, packaging, pathlib2, pygit2, pyopenssl, pytest, python-dateutil, python-jose, pyvmomi, responses, salttesting, singledispatch, tempora, websocket-client
smmap2==2.0.5 # via gitdb2
smmap==0.9.0
strict-rfc3339==0.7
supervisor==3.3.5 ; python_version < "3"
tempora==1.14.1 # via portend

View file

@ -2,12 +2,12 @@
# This file is autogenerated by pip-compile
# To update, run:
#
# pip-compile -o requirements/static/py3.5/darwin.txt -v pkg/osx/req.txt pkg/osx/req_ext.txt requirements/base.txt requirements/zeromq.txt requirements/pytest.txt requirements/static/darwin.in
# pip-compile -o requirements/static/py3.5/darwin.txt -v pkg/osx/req.txt requirements/base.txt requirements/zeromq.txt requirements/pytest.txt requirements/static/darwin.in
#
apache-libcloud==2.4.0
appdirs==1.4.3 # via virtualenv
argh==0.26.2 # via watchdog
asn1crypto==1.3.0 # via certvalidator, cryptography, oscrypto
asn1crypto==1.3.0 # via certvalidator, oscrypto
atomicwrites==1.3.0 # via pytest
attrs==19.1.0 # via pytest
aws-xray-sdk==0.95 # via moto
@ -29,7 +29,7 @@ click==7.0
clustershell==1.8.1
contextlib2==0.5.5 # via cherrypy
croniter==0.3.29
cryptography==2.6.1
cryptography==2.8
distlib==0.3.0 # via virtualenv
dnspython==1.16.0
docker-pycreds==0.4.0 # via docker
@ -41,8 +41,7 @@ filelock==3.0.12 # via virtualenv
future==0.17.1 # via python-jose
genshi==0.7.3
gitdb2==2.0.5 # via gitpython
gitdb==0.6.4
gitpython==2.1.11
gitpython==2.1.15
google-auth==1.6.3 # via kubernetes
idna==2.8
importlib-metadata==0.23 # via importlib-resources, pluggy, pytest, virtualenv
@ -84,7 +83,7 @@ pyasn1==0.4.5
pycparser==2.19
pycryptodome==3.8.1
pynacl==1.3.0 # via paramiko
pyopenssl==19.0.0
pyopenssl==19.1.0
pyparsing==2.4.5 # via packaging
pyserial==3.4 # via junos-eznc
pytest-helpers-namespace==2019.1.8
@ -110,7 +109,6 @@ scp==0.13.2 # via junos-eznc
setproctitle==1.1.10
six==1.12.0 # via bcrypt, cheroot, cherrypy, cryptography, docker, docker-pycreds, google-auth, junos-eznc, kubernetes, mock, more-itertools, moto, ncclient, packaging, pathlib2, pynacl, pyopenssl, pytest, python-dateutil, python-jose, pyvmomi, responses, salttesting, tempora, vcert, virtualenv, websocket-client
smmap2==2.0.5 # via gitdb2
smmap==0.9.0
strict-rfc3339==0.7
tempora==1.14.1 # via portend
timelib==0.2.4
@ -127,5 +125,3 @@ xmltodict==0.12.0 # via moto
yamlordereddictloader==0.4.0
zc.lockfile==1.4 # via cherrypy
zipp==0.6.0 # via importlib-metadata, importlib-resources
# Passthrough dependencies from pkg/osx/req.txt
pyobjc==5.1.2

View file

@ -30,12 +30,10 @@ docker-pycreds==0.4.0 # via docker
docker==2.7.0
docutils==0.14 # via botocore
ecdsa==0.13.3 # via python-jose
enum34==1.1.6
future==0.17.1 # via python-jose
genshi==0.7.3
gitdb2==2.0.5 # via gitpython
gitdb==0.6.4
gitpython==2.1.10
gitpython==2.1.15
google-auth==1.6.3 # via kubernetes
idna==2.8
importlib-metadata==0.23 # via pluggy, pytest
@ -103,7 +101,6 @@ sed==0.3.1
setproctitle==1.1.10
six==1.12.0 # via cheroot, cherrypy, cryptography, docker, docker-pycreds, google-auth, kubernetes, mock, more-itertools, moto, packaging, pathlib2, pygit2, pyopenssl, pytest, python-dateutil, python-jose, pyvmomi, responses, salttesting, tempora, websocket-client
smmap2==2.0.5 # via gitdb2
smmap==0.9.0
strict-rfc3339==0.7
tempora==1.14.1 # via portend
timelib==0.2.4

View file

@ -2,12 +2,12 @@
# This file is autogenerated by pip-compile
# To update, run:
#
# pip-compile -o requirements/static/py3.6/darwin.txt -v pkg/osx/req.txt pkg/osx/req_ext.txt requirements/base.txt requirements/zeromq.txt requirements/pytest.txt requirements/static/darwin.in
# pip-compile -o requirements/static/py3.6/darwin.txt -v pkg/osx/req.txt requirements/base.txt requirements/zeromq.txt requirements/pytest.txt requirements/static/darwin.in
#
apache-libcloud==2.4.0
appdirs==1.4.3 # via virtualenv
argh==0.26.2 # via watchdog
asn1crypto==1.3.0 # via certvalidator, cryptography, oscrypto
asn1crypto==1.3.0 # via certvalidator, oscrypto
atomicwrites==1.3.0 # via pytest
attrs==19.1.0 # via pytest
aws-xray-sdk==0.95 # via moto
@ -29,7 +29,7 @@ click==7.0
clustershell==1.8.1
contextlib2==0.5.5 # via cherrypy
croniter==0.3.29
cryptography==2.6.1
cryptography==2.8
distlib==0.3.0 # via virtualenv
dnspython==1.16.0
docker-pycreds==0.4.0 # via docker
@ -41,8 +41,7 @@ filelock==3.0.12 # via virtualenv
future==0.17.1 # via python-jose
genshi==0.7.3
gitdb2==2.0.5 # via gitpython
gitdb==0.6.4
gitpython==2.1.11
gitpython==2.1.15
google-auth==1.6.3 # via kubernetes
idna==2.8
importlib-metadata==0.23 # via importlib-resources, pluggy, pytest, virtualenv
@ -83,7 +82,7 @@ pyasn1==0.4.5
pycparser==2.19
pycryptodome==3.8.1
pynacl==1.3.0 # via paramiko
pyopenssl==19.0.0
pyopenssl==19.1.0
pyparsing==2.4.5 # via packaging
pyserial==3.4 # via junos-eznc
pytest-helpers-namespace==2019.1.8
@ -109,7 +108,6 @@ scp==0.13.2 # via junos-eznc
setproctitle==1.1.10
six==1.12.0 # via bcrypt, cheroot, cherrypy, cryptography, docker, docker-pycreds, google-auth, junos-eznc, kubernetes, mock, more-itertools, moto, ncclient, packaging, pynacl, pyopenssl, pytest, python-dateutil, python-jose, pyvmomi, responses, salttesting, tempora, vcert, virtualenv, websocket-client
smmap2==2.0.5 # via gitdb2
smmap==0.9.0
strict-rfc3339==0.7
tempora==1.14.1 # via portend
timelib==0.2.4
@ -126,5 +124,3 @@ xmltodict==0.12.0 # via moto
yamlordereddictloader==0.4.0
zc.lockfile==1.4 # via cherrypy
zipp==0.6.0 # via importlib-metadata, importlib-resources
# Passthrough dependencies from pkg/osx/req.txt
pyobjc==5.1.2

View file

@ -30,12 +30,10 @@ docker-pycreds==0.4.0 # via docker
docker==2.7.0
docutils==0.14 # via botocore
ecdsa==0.13.3 # via python-jose
enum34==1.1.6
future==0.17.1 # via python-jose
genshi==0.7.3
gitdb2==2.0.5 # via gitpython
gitdb==0.6.4
gitpython==2.1.10
gitpython==2.1.15
google-auth==1.6.3 # via kubernetes
idna==2.8
importlib-metadata==0.23 # via pluggy, pytest
@ -102,7 +100,6 @@ sed==0.3.1
setproctitle==1.1.10
six==1.12.0 # via cheroot, cherrypy, cryptography, docker, docker-pycreds, google-auth, kubernetes, mock, more-itertools, moto, packaging, pygit2, pyopenssl, pytest, python-dateutil, python-jose, pyvmomi, responses, salttesting, tempora, websocket-client
smmap2==2.0.5 # via gitdb2
smmap==0.9.0
strict-rfc3339==0.7
tempora==1.14.1 # via portend
timelib==0.2.4

View file

@ -2,12 +2,12 @@
# This file is autogenerated by pip-compile
# To update, run:
#
# pip-compile -o requirements/static/py3.7/darwin.txt -v pkg/osx/req.txt pkg/osx/req_ext.txt requirements/base.txt requirements/zeromq.txt requirements/pytest.txt requirements/static/darwin.in
# pip-compile -o requirements/static/py3.7/darwin.txt -v pkg/osx/req.txt requirements/base.txt requirements/zeromq.txt requirements/pytest.txt requirements/static/darwin.in
#
apache-libcloud==2.4.0
appdirs==1.4.3 # via virtualenv
argh==0.26.2 # via watchdog
asn1crypto==1.3.0 # via certvalidator, cryptography, oscrypto
asn1crypto==1.3.0 # via certvalidator, oscrypto
atomicwrites==1.3.0 # via pytest
attrs==19.1.0 # via pytest
aws-xray-sdk==0.95 # via moto
@ -29,7 +29,7 @@ click==7.0
clustershell==1.8.1
contextlib2==0.5.5 # via cherrypy
croniter==0.3.29
cryptography==2.6.1
cryptography==2.8
distlib==0.3.0 # via virtualenv
dnspython==1.16.0
docker-pycreds==0.4.0 # via docker
@ -41,8 +41,7 @@ filelock==3.0.12 # via virtualenv
future==0.17.1 # via python-jose
genshi==0.7.3
gitdb2==2.0.5 # via gitpython
gitdb==0.6.4
gitpython==2.1.11
gitpython==2.1.15
google-auth==1.6.3 # via kubernetes
idna==2.8
importlib-metadata==0.23 # via pluggy, pytest, virtualenv
@ -82,7 +81,7 @@ pyasn1==0.4.5
pycparser==2.19
pycryptodome==3.8.1
pynacl==1.3.0 # via paramiko
pyopenssl==19.0.0
pyopenssl==19.1.0
pyparsing==2.4.5 # via packaging
pyserial==3.4 # via junos-eznc
pytest-helpers-namespace==2019.1.8
@ -108,7 +107,6 @@ scp==0.13.2 # via junos-eznc
setproctitle==1.1.10
six==1.12.0 # via bcrypt, cheroot, cherrypy, cryptography, docker, docker-pycreds, google-auth, junos-eznc, kubernetes, mock, more-itertools, moto, ncclient, packaging, pynacl, pyopenssl, pytest, python-dateutil, python-jose, pyvmomi, responses, salttesting, tempora, vcert, virtualenv, websocket-client
smmap2==2.0.5 # via gitdb2
smmap==0.9.0
strict-rfc3339==0.7
tempora==1.14.1 # via portend
timelib==0.2.4
@ -125,5 +123,3 @@ xmltodict==0.12.0 # via moto
yamlordereddictloader==0.4.0
zc.lockfile==1.4 # via cherrypy
zipp==0.6.0 # via importlib-metadata
# Passthrough dependencies from pkg/osx/req.txt
pyobjc==5.1.2

View file

@ -30,12 +30,10 @@ docker-pycreds==0.4.0 # via docker
docker==2.7.0
docutils==0.14 # via botocore
ecdsa==0.13.3 # via python-jose
enum34==1.1.6
future==0.17.1 # via python-jose
genshi==0.7.3
gitdb2==2.0.5 # via gitpython
gitdb==0.6.4
gitpython==2.1.10
gitpython==2.1.15
google-auth==1.6.3 # via kubernetes
idna==2.8
importlib-metadata==0.23 # via pluggy, pytest
@ -102,7 +100,6 @@ sed==0.3.1
setproctitle==1.1.10
six==1.12.0 # via cheroot, cherrypy, cryptography, docker, docker-pycreds, google-auth, kubernetes, mock, more-itertools, moto, packaging, pygit2, pyopenssl, pytest, python-dateutil, python-jose, pyvmomi, responses, salttesting, tempora, websocket-client
smmap2==2.0.5 # via gitdb2
smmap==0.9.0
strict-rfc3339==0.7
tempora==1.14.1 # via portend
timelib==0.2.4

View file

@ -109,7 +109,7 @@ SALT_ZEROMQ_REQS = os.path.join(os.path.abspath(SETUP_DIRNAME), 'requirements',
SALT_LONG_DESCRIPTION_FILE = os.path.join(os.path.abspath(SETUP_DIRNAME), 'README.rst')
SALT_OSX_REQS = [
os.path.join(os.path.abspath(SETUP_DIRNAME), 'pkg', 'osx', 'req.txt'),
os.path.join(os.path.abspath(SETUP_DIRNAME), 'pkg', 'osx', 'req_ext.txt')
os.path.join(os.path.abspath(SETUP_DIRNAME), 'pkg', 'osx', 'req_pyobjc.txt')
]
SALT_WINDOWS_REQS = [
os.path.join(os.path.abspath(SETUP_DIRNAME), 'pkg', 'windows', 'req.txt'),
@ -745,6 +745,12 @@ class Install(install):
self.distribution.salt_download_windows_dlls = True
self.run_command('download-windows-dlls')
self.distribution.salt_download_windows_dlls = None
# need to ensure _version.py is created in build dir before install
if not os.path.exists(os.path.join(self.build_lib)):
if not self.skip_build:
self.run_command('build')
else:
self.run_command('write_salt_version')
# Run install.run
install.run(self)

View file

@ -0,0 +1,69 @@
# -*- coding: utf-8 -*-
'''
tests.integration.setup.test_egg
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
'''
# Import python libs
from __future__ import absolute_import, print_function, unicode_literals
import os
import re
import shutil
# Import Salt Testing libs
from tests.support.runtests import RUNTIME_VARS
from tests.support.unit import skipIf
from tests.support.helpers import VirtualEnv, destructiveTest
from tests.support.case import ModuleCase
# Import salt libs
import salt.utils.path
import salt.utils.platform
from salt.modules.virtualenv_mod import KNOWN_BINARY_NAMES
@destructiveTest
@skipIf(salt.utils.path.which_bin(KNOWN_BINARY_NAMES) is None, 'virtualenv not installed')
class EggSetupTest(ModuleCase):
'''
Tests for building and installing egg packages
'''
def setUp(self):
# ensure we have a clean build dir
self._clean_build()
def _clean_build(self):
'''
helper method to clean the build dir
'''
dirs = [os.path.join(RUNTIME_VARS.CODE_DIR, 'build'),
os.path.join(RUNTIME_VARS.CODE_DIR, 'salt.egg-info'),
os.path.join(RUNTIME_VARS.CODE_DIR, 'dist')]
for _dir in dirs:
if os.path.exists(_dir):
shutil.rmtree(_dir)
def test_egg_install(self):
'''
test installing an egg package
'''
# Let's create the testing virtualenv
with VirtualEnv() as venv:
ret = self.run_function('cmd.run', ['{0} setup.py install --prefix={1}'.format(venv.venv_python,
venv.venv_dir)],
cwd=RUNTIME_VARS.CODE_DIR)
self._clean_build()
lib_dir = os.path.join(venv.venv_dir, 'lib')
for _dir in os.listdir(lib_dir):
site_pkg = os.path.join(lib_dir, _dir, 'site-packages')
for _file in os.listdir(site_pkg):
if _file.startswith('salt-'):
egg = os.path.join(venv.venv_dir, _file)
assert os.path.exists(os.path.join(site_pkg, _file, 'salt', '_version.py'))
break
# Let's ensure the version is correct
pip_ver = self.run_function('pip.list', bin_env=venv.venv_dir).get('salt')
egg_ver = [x for x in egg.split('/')[-1:][0].split('-') if re.search(r'^\d.\d*', x)][0]
assert pip_ver == egg_ver.replace('_', '-')

View file

@ -160,6 +160,7 @@ class BadTestModuleNamesTestCase(TestCase):
'integration.scheduler.test_helpers',
'integration.scheduler.test_run_job',
'integration.setup.test_bdist',
'integration.setup.test_egg',
'integration.shell.test_spm',
'integration.shell.test_cp',
'integration.shell.test_syndic',