Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Z
zope-container
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Boxiang Sun
zope-container
Commits
e903ebf7
Commit
e903ebf7
authored
Apr 20, 2016
by
Adam Groszer
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
update bootstrap.py
parent
a689cb8a
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
36 additions
and
15 deletions
+36
-15
bootstrap.py
bootstrap.py
+36
-15
No files found.
bootstrap.py
View file @
e903ebf7
...
...
@@ -25,7 +25,10 @@ import tempfile
from
optparse
import
OptionParser
tmpeggs
=
tempfile
.
mkdtemp
()
__version__
=
'2015-07-01'
# See zc.buildout's changelog if this version is up to date.
tmpeggs
=
tempfile
.
mkdtemp
(
prefix
=
'bootstrap-'
)
usage
=
'''
\
[DESIRED PYTHON FOR BUILDOUT] bootstrap.py [options]
...
...
@@ -40,8 +43,9 @@ this script from going over the network.
'''
parser
=
OptionParser
(
usage
=
usage
)
parser
.
add_option
(
"-v"
,
"--version"
,
help
=
"use a specific zc.buildout version"
)
parser
.
add_option
(
"--version"
,
action
=
"store_true"
,
default
=
False
,
help
=
(
"Return bootstrap.py version."
))
parser
.
add_option
(
"-t"
,
"--accept-buildout-test-releases"
,
dest
=
'accept_buildout_test_releases'
,
action
=
"store_true"
,
default
=
False
,
...
...
@@ -59,25 +63,33 @@ parser.add_option("-f", "--find-links",
parser
.
add_option
(
"--allow-site-packages"
,
action
=
"store_true"
,
default
=
False
,
help
=
(
"Let bootstrap.py use existing site packages"
))
parser
.
add_option
(
"--buildout-version"
,
help
=
"Use a specific zc.buildout version"
)
parser
.
add_option
(
"--setuptools-version"
,
help
=
"use a specific setuptools version"
)
help
=
"Use a specific setuptools version"
)
parser
.
add_option
(
"--setuptools-to-dir"
,
help
=
(
"Allow for re-use of existing directory of "
"setuptools versions"
))
options
,
args
=
parser
.
parse_args
()
if
options
.
version
:
print
(
"bootstrap.py version %s"
%
__version__
)
sys
.
exit
(
0
)
######################################################################
# load/install setuptools
try
:
if
options
.
allow_site_packages
:
import
setuptools
import
pkg_resources
from
urllib.request
import
urlopen
except
ImportError
:
from
urllib2
import
urlopen
ez
=
{}
exec
(
urlopen
(
'https://bootstrap.pypa.io/ez_setup.py'
).
read
(),
ez
)
if
os
.
path
.
exists
(
'ez_setup.py'
):
exec
(
open
(
'ez_setup.py'
).
read
(),
ez
)
else
:
exec
(
urlopen
(
'https://bootstrap.pypa.io/ez_setup.py'
).
read
(),
ez
)
if
not
options
.
allow_site_packages
:
# ez_setup imports site, which adds site packages
...
...
@@ -88,12 +100,19 @@ if not options.allow_site_packages:
# We can't remove these reliably
if
hasattr
(
site
,
'getsitepackages'
):
for
sitepackage_path
in
site
.
getsitepackages
():
sys
.
path
[:]
=
[
x
for
x
in
sys
.
path
if
sitepackage_path
not
in
x
]
# Strip all site-packages directories from sys.path that
# are not sys.prefix; this is because on Windows
# sys.prefix is a site-package directory.
if
sitepackage_path
!=
sys
.
prefix
:
sys
.
path
[:]
=
[
x
for
x
in
sys
.
path
if
sitepackage_path
not
in
x
]
setup_args
=
dict
(
to_dir
=
tmpeggs
,
download_delay
=
0
)
if
options
.
setuptools_version
is
not
None
:
setup_args
[
'version'
]
=
options
.
setuptools_version
if
options
.
setuptools_to_dir
is
not
None
:
setup_args
[
'to_dir'
]
=
options
.
setuptools_to_dir
ez
[
'use_setuptools'
](
**
setup_args
)
import
setuptools
...
...
@@ -110,7 +129,12 @@ for path in sys.path:
ws
=
pkg_resources
.
working_set
setuptools_path
=
ws
.
find
(
pkg_resources
.
Requirement
.
parse
(
'setuptools'
)).
location
# Fix sys.path here as easy_install.pth added before PYTHONPATH
cmd
=
[
sys
.
executable
,
'-c'
,
'import sys; sys.path[0:0] = [%r]; '
%
setuptools_path
+
'from setuptools.command.easy_install import main; main()'
,
'-mZqNxd'
,
tmpeggs
]
...
...
@@ -123,11 +147,8 @@ find_links = os.environ.get(
if
find_links
:
cmd
.
extend
([
'-f'
,
find_links
])
setuptools_path
=
ws
.
find
(
pkg_resources
.
Requirement
.
parse
(
'setuptools'
)).
location
requirement
=
'zc.buildout'
version
=
options
.
version
version
=
options
.
buildout_
version
if
version
is
None
and
not
options
.
accept_buildout_test_releases
:
# Figure out the most recent final version of zc.buildout.
import
setuptools.package_index
...
...
@@ -167,7 +188,7 @@ if version:
cmd
.
append
(
requirement
)
import
subprocess
if
subprocess
.
call
(
cmd
,
env
=
dict
(
os
.
environ
,
PYTHONPATH
=
setuptools_path
)
)
!=
0
:
if
subprocess
.
call
(
cmd
)
!=
0
:
raise
Exception
(
"Failed to execute command:
\
n
%s"
%
repr
(
cmd
)[
1
:
-
1
])
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment