Commit Graph

7370 Commits (1268f4778dd8cd75112f80c2307ce80c51851db5)

Author SHA1 Message Date
Chris Houseknecht 30c0ce1e60 Merge pull request #16680 from chouseknecht/devel
Fix find_image() not matching on tag
8 years ago
Brian Coca ed7623ecde J2 test docs (#16646)
* moved tests from filters to actual jinja2 tests

also removed some unused declarations and imports

* split tests into their own docs

removed isnan as existing jinja2's 'number' already covers same
added missing docs for several tests

* updated as per feedback
8 years ago
James Cammarata 245ce9461d Fix unreachable host/any_errors_fatal bug in linear strategy
2e003adb added the ability for tasks using any_errors_fatal to fail
when there were unreachable hosts. However that patch used the running
unreachable hosts data rather than the results from the current task,
which causes failures when any run_once or BYPASS_HOST_LOOP task is hit
after an unreachable host causes a failure. This patch corrects that by
using the current set of results to determine if any hosts were
unreachable during the last task only.

Fixes ansible/ansible-modules-core#4160
8 years ago
Chris Houseknecht 16a3f28f6e Fix find_image() not matching on tag 8 years ago
nitzmahone 31e963dd2a tkuratomi bugfix for BOMs in powershell modules
fixes #15998
8 years ago
Brian Coca 0a439df4b0 removed redundant True/False cause `arg.lower()` 8 years ago
Peter Sprygada 54fc1a10fe Merge pull request #16674 from privateip/ios_config_action
adds action plugin for working with network configuration files
8 years ago
Peter Sprygada 075a03d511 adds action plugin for working with network configuration files
This adds a action plugin that will allow config and template modules
to be merged into a single module.  Once completed this will supercede
the net_template action plugin.
8 years ago
Peter Sprygada 637bbdadfa add new features to ios shared module
* add load_config() for loading a set of configuration commands
* add load_candidate() function for loading a candidate config
* updates shared module to provide NetworKModule instead of get_module
* fixes Cli transport implementation for 2.2 refactor
* updates ios documentation fragments with new options
8 years ago
Rene Moser fffd4b7b46 update extras submodule ref
fixes build in ansible-module-extras
8 years ago
Rene Moser be7a3b2fe6 update extras submodule ref 8 years ago
Peter Sprygada 80ab80b6fd adds additional capabilities to diff of network configs
* diff functions now split out for easier troubleshooting
* added dumps() function to serialize config objects to strings
* difference() can now expand all blocks instead of just singluar blocks
8 years ago
Peter Sprygada c2d5865627 adds restconf transport option to ios shared module
includes changes from PR ansible/ansible#16636 and refactors for the
NetworkModule changes

new features

* ios now supports transport=restcon will additional arguments
* ModuleStub refactored into common network shared module
* import temporary get_module() function (to be removed prior to 2.2 final)
8 years ago
Peter Sprygada c0c9cf6441 add helper factory function to avoid breaking network modules in devel
This is a temporary change to keep the get_module() function until all
of the network module refactoring is completed to avoid breaking them
in devel.   The get_module() function should not be used and will be
removed before 2.2 final.
8 years ago
jctanner fe8258a378 make timeout decorator for facts have a configurable duration (#16551)
* Add a gather_timeout parameter
* update example ansible.cfg
* fix play level fact gathering too
8 years ago
James Tanner ebd3eeec8c Update submodule refs 8 years ago
Brian Coca 7657f75f75 removed defined/undefined as jinja2 already has em 8 years ago
Brian Coca 7f28bcacaa added defined/undefined tests 8 years ago
Nathaniel Case af5fba759f EOS new ModuleStub
As per #16575
8 years ago
James Cammarata 9ad8132628 Updating submodule refs 8 years ago
Peter Sprygada b4d36f6ed4 Implement IOS restconf 8 years ago
Nathaniel Case 18738c81da New ModuleStub solution 8 years ago
Matt Davis 30c63a41e9 Merge pull request #16555 from matsu-chara/fix-error-msg-default-to-defaults
fix default/main.yml to defaults/main.yml
8 years ago
nitzmahone b6d41d3d4b bump extras submodule ref 8 years ago
Nathaniel Case 72204ddd3e Net mod ios (#16426)
* Update IOS with new NetworkModule

* Remove redundant EOS code

* `authorize` can get rolled into NetCli

* Fix up IOS to where EOS is.

* Update IOSXR for NetworkModule

* collections is unnecessary
8 years ago
James Cammarata 6cde80fe69 Updating submodule refs 8 years ago
Brian Coca 906dc99c64 correctly set become value in console
fixes #16614
8 years ago
James Cammarata 9248cde239 Force remote_user to be the currently user for connection=local
Fixes ansible-modules-core#4092
8 years ago
Toshio Kuratomi 251c9182fe Refactor network and eos module_utils to use a subclass instead of factory function to create the NetworkModule 8 years ago
Toshio Kuratomi 626e6aee7d Update core submodule for unarchive fixes 8 years ago
Toshio Kuratomi d1558fcee4 Don't check that we import basic.py in new-style modules (#16613)
Since Ansiballz, we no longer need to import basic directly into
a new-style module.  Some modules, like the Networking modules, may
import basic in their own module_utils files and the module will import
that specialized module_util file rather than basic.
8 years ago
Toshio Kuratomi a93cf801e1 Update submodule refs 8 years ago
Monty Taylor 229d8f6b21 Don't treat parsing problems as async task timeout (#16458)
* Don't treat parsing problems as async task timeout

If there is a problem reading/writing the status file that manifests as
not being able to parse the data, that doesn't mean the task timed out,
it means there was what was likely a tempoarary problem. Move on and
keep polling for success. The only things that should cause the async
status to not be parseable are bugs in the async_runner.

* Add comment explaining not bailing out of loop

* Return different error when result is unparseable

* Remove extraneous else
8 years ago
James Cammarata 930d090507 Fix the way handlers are compiled and found/notified
* Instead of rebuilding the handler list all over the place, we now
  compile the handlers at the point the play is post-validated so that
  the view of the play in the PlayIterator contains the definitive list
* Assign the dep_chain to the handlers as they're compiling, just as we
  do for regular tasks
* Clean up the logic used to find a given handler, which is greatly
  simplified by the above changes

Fixes #15418
8 years ago
Brian Coca 729686a434 added back spaces for profile_tasks formatting 8 years ago
Toshio Kuratomi d38cc1e0a1 Remove doubled instantiation of the zipfile (#16609) 8 years ago
René Moser 0f5f5fffee cloudstack: handle unicode API results in has_changed (#16601)
* cloudstack: handle unicode API results in has_changed

* cloudstack: add more case sensitve keys
8 years ago
Peter Sprygada 58eab8ee9f Merge pull request #16573 from privateip/network
captures the responses from running commands and adds response to object
8 years ago
James Cammarata 690bc192d5 Use get_handler_blocks() to get list of role handlers 8 years ago
Toshio Kuratomi 3f4027f7b4 Add the PID of the Ansible process to local_tmp directory. (#16589)
This aids in associating a leftover cachedir with a previous run of
Ansible.  Came about because of #16489
8 years ago
Will Thames 0e16a5f3ee Retain local tar.gz roles during galaxy install (#16592)
Don't treat local tar.gz files as temporary when cleaning
up at the end of an ansible-galaxy install
8 years ago
Peter Sprygada 7d53fd2ef2 Merge pull request #16587 from privateip/netcfg
minor bug fixes found in netcfg
8 years ago
Peter Sprygada c9dccd3566 Merge pull request #16588 from privateip/vyos
bug fixes in vyos shared module
8 years ago
Peter Sprygada f30a836063 bug fixes in vyos shared module
* fixes lots of bugs with get_config function to perform correctly
* refactors load_config into load_candidate
* adds load_config function to convert commands to NetworkConfig
8 years ago
Peter Sprygada 3002965af0 minor bug fixes found in netcfg
* fixes issue with converting config to lines
* fixes issue with returning text config with single line
8 years ago
nitzmahone c5e0d3d17b prevent spurious pywinrm arg warnings for non-pywinrm connection args 8 years ago
nitzmahone 908ca727d6 bump core submodule ref 8 years ago
James Cammarata a178ffa674 Merge pull request #15890 from brandond/inv_refresh_hostvars-fixes_15115
Ignore limits and restrictions when parsing inventory.
8 years ago
Brian Coca ec61fba553 updated subref to fix pip issue 8 years ago
Brian Coca 65f87486fc updated module subrefs 8 years ago
James Tanner d51917f306 Update submodule refs 8 years ago
James Cammarata 06379bb288 Prevent loop_control from being inherited via parent includes
Fixes #16542
8 years ago
James Cammarata ea6efdbf2c Merge branch 'iterator-returncode' of https://github.com/axelspringer/ansible into axelspringer-iterator-returncode 8 years ago
Martin Matuska 8bff6154a6 Determine failed hosts with _check_failed_state() (#16566) 8 years ago
Peter Sprygada 54199f1cfb initial add of vyos shared documentation fragments 8 years ago
Peter Sprygada 0430923647 Merge pull request #16423 from privateip/netcfg
bug fix in netcfg replace method to handle whitespace argument
8 years ago
Peter Sprygada 65713c2418 Merge pull request #16574 from privateip/vyos
add get_config function to vyos shared module
8 years ago
Peter Sprygada 2866c7a9fb updates netcfg to remove dependency on collections module
This fixes the netcfg shared lib to be compatable with python versions
prior to 2.7.
8 years ago
Peter Sprygada 6b8c24e0f8 bug fix in netcfg replace method to handle whitespace argument 8 years ago
Peter Sprygada 75b8cf6ab3 captures the responses from running commands and adds response to object
The Command object can now store the response from executing the command
to allow it to be retrieved later by command name.  This update will
update the Command instance with the response before returning.
8 years ago
Peter Sprygada 527e4196b2 adds new method to return specific response from command to netcmd
This adds a new method that will return the output from a specified
command that has already been excuted by the CommandRunner.  The new
method, get_command takes a single argument which is the full name
of the command to retrieve.
8 years ago
Peter Sprygada 062db03f99 add get_config function to vyos shared module
This adds a new shard function get_config to retrieve the device
configuration either from module arguments or remotely from the
device.
8 years ago
Chris Houseknecht 54db1df244 Merge pull request #16559 from chouseknecht/azure-rc5
Fix authentication via params and env variables.
8 years ago
James Cammarata 83e4a4048b Fix the way pull localhosts out of inventory for delegate_to
This patch corrects the way we look in the inventory hosts list for
implicit localhost entries when localhost aliases are used.

Fixes #16568
8 years ago
Chris Houseknecht c71a939b08 Fix authentication via params and env vars. Update guide to RC5. 9 years ago
Chris Houseknecht 9e93f1c907 Merge pull request #16558 from chouseknecht/azure-rc5
Update and pin to azure-2.0.0rc5
9 years ago
chouseknecht a076612b63 Update and pin to azure-2.0.0rc5 9 years ago
matsu-chara 9f8b0cabcd fix default/main.yml to defaults/main.yml 9 years ago
Matt Clay 292785ff2b Parse async response in async action. (#16534)
* Parse async response in async action.
* Add async test for non-JSON data before module output.
* Fix existing async unit test.

Resolves #16156
9 years ago
jctanner f86c527736 If the known_hosts file does not exist, do not attempt to stat it. (#16548)
paramiko: If the known_hosts file does not exist, do not attempt to stat it.

Fixes #10057
9 years ago
NAGA RAVI CHAITANYA ELLURI b312a43544 fix(callback-mail plugin): fixes the warning 'TaskResult' object has no attribute '__getitem__' because of which its not sending an email on failure (#16547) 9 years ago
Stian Vikan 288446c9bf Added and-quit to all commit statements. (#16411) 9 years ago
Brian Coca faec03aabc fix encoding issues in profile_tasks (#16522)
* fix encoding issues in profile_tasks

fixes #16521

* really fix it

* unicode the nested

* simpler format

* readded space after name
9 years ago
Abhijit Menon-Sen 950cc26aab Use loop_control.loop_var directly
6eefc11c converted task.loop_control into an object, but while the other
callers were updated to use .loop_var instead of .get('loop_var'), this
site was overlooked.

This can be reproduced by including with loop_control a file that does
set_fact; a simple regression test along these lines is included.
9 years ago
graywulf 9b7d782abb Ignore broken pipe errors if the sshpass process has exited (#16515)
This fix prevents a broken pipe exception from occurring when password-less
SSH is configured and the sshpass process exits and closes the pipe before
the password is written to the pipe.
9 years ago
Brad Davidson 0c4effb8a6 Ignore limits and restrictions when parsing inventory.
We want to update host vars for all hosts (even those that might
have failed), and the in case of a refresh_inventory, the code has
a stale restrictions list at this point anyway.
9 years ago
Peter Sprygada 46a97e1f55 removes dependency on collections module from eos (#16485)
This removes the dependency on the Python collections module to make
it fully compliant with version prior to py2.7
9 years ago
nitzmahone 6df56f009f bump submodule refs 9 years ago
Shota 47f715fb37 Fix some typos (#16498) 9 years ago
Toshio Kuratomi 4f76222f5b Update submodule refs 9 years ago
Toshio Kuratomi c7129c4efe In some cornercases, sys.executable is empty. Work around that by choosing a sensible default path to python and emitting a warning (#16487)
Fixes #13585

Fix grammar of warning method
9 years ago
Brian Coca 7c690f04e2 task get_path returns empty string when not in play 9 years ago
Peter Sprygada 216a845244 Merge pull request #16486 from privateip/netcmd
removes dependency on collections module from netcmd
9 years ago
Peter Sprygada 9b40e1106e removes dependency on collections module from netcmd
This change removes the dependency on collections so netcmd is
compatable with python versions prior to py2.7
9 years ago
Matt Clay 8f1b487141 Handle repeat includes in junit callback. (#16484) 9 years ago
Toshio Kuratomi 405dca1abe Update submodule refs 9 years ago
Brian Coca 2bb7feec6d Search path (#16387)
* smarter function to figure out relative paths

takes list of paths in order of relevance to current task
and does the dwim magic on them

* shared function for action plugins using new dwim

unify path construction and error info/messaging
made include and role non exclusive
corrected order and now smarter about tasks
includes inside roles are currently broken as they don't provide the correct role data
make dirname full match to avoid corner cases

* migrated action plugins to new dwim function

reported plugins to use exceptions instead of info

* clarified needle
9 years ago
Brian Coca d843e5a79d removed unused boolean 9 years ago
Brian Coca 9abdb1bb7c added skipped_reason for verbosity not met
fixes http://github.com/ansible/ansible-modules-core/issues/4062
9 years ago
jctanner 4ba60d00c8 Refactor the parameter splitting in ini lookup to handle more path formats (#16477)
Refactor the parameter splitting in ini lookup to handle more path formats.

Fixes #16468
9 years ago
Brian Coca 3afe50dfe2 push unicode handling into unfrack 9 years ago
Brian Coca bae988ee9b fix path utils 9 years ago
Lars Fredriksen 4b5203c5fb add holders to partitions (#16446)
* add holders to partitions

* make holder gathering a function
9 years ago
James Cammarata af249b83e6 Don't modify the original task ds when preprocessing data
In the case of using YAML anchors/aliases, YAML actually uses references
to the duplicated object so any modifications to the original impacts
later uses of the object.

Fixes #13575
9 years ago
Pilou b361bf90d7 Lookup password omit salt (#16361)
* Lookup unencrypted password must not include salt
* Integration test lookup: remove previous directory
* Test that lookup password doesn't return salt
* Lookup password: test behavior with empty encrypt parameter

Closes #16189
9 years ago
nitzmahone 60a8af95a5 bump core submodule ref 9 years ago
Brian Coca 1b7b1ca15e if seconds are specified, min is 1 9 years ago
Peter Sprygada d83962d3f5 Merge pull request #15992 from ogenstad/asa
Module util, template action and doc fragment for Cisco ASA
9 years ago
Matt Clay c2a5cb6174 Fix junit callback plugin for Python 2.6. (#16440) 9 years ago
James Cammarata 04fca42b62 Fixing issues with getattr caused by 5a3493b 9 years ago
Toshio Kuratomi 9330edd6b9 Update submodule refs 9 years ago
Peter Sprygada 32b605f603 Merge pull request #16422 from privateip/network
bug fix changes Config class in network to only raise exceptions
9 years ago
Peter Sprygada 02902325b4 Merge pull request #16424 from privateip/vyos
initial commit of vyos shared module with Cli transport
9 years ago
James Cammarata 948682dbe2 Fix off-by-one error with retries
Fixes #16408
9 years ago
James Cammarata 3e4755f7e4 Remove unnecessary role initialization and lookup stuff
* Remove unnecessary copying of values from parents to role deps, as
  this can cause problems when roles have multiple parents (or the same
  parents with different params speficied through deps)
* Since we're already checking the dep chain in the block for role
  things (which every task in a role should have), it is not necessary
  to check the role directly in case it improperly grabs something

Fixes #14438
9 years ago
nitzmahone ac04ffb9b1 apply @zazard's fix to parent attribute lookup 9 years ago
Peter Sprygada 77922f82e2 initial commit of vyos shared module with Cli transport
This adds support for the VyOS network operating system using the
Cli transport.   This module will simplify building VyOS based
modules in Ansible
9 years ago
James Cammarata c24c0f5f6b Properly wrap objects using json default encoder
Our custom encoder for the to_json filter was simply returning the
object if it was not a HostVars object, leading in some cases to a
TypeError when the data contained an undefined variable. This lead
to an odd error message being propagated up, so we now properly catch
this as an undefined variable error.

Fixes #15610
9 years ago
w1r0x 7d24e6e95c Fixes #12309 (#14121) 9 years ago
James Cammarata 3ea3fa8d46 Merge pull request #14639 from ivovangeel/find_mount_point-bug
Fixed bug in find_mount_point function
9 years ago
nitzmahone 5f9ca67685 bump extras submodule ref for test failures 9 years ago
nitzmahone 76633ddc4c bump submodule refs 9 years ago
James Cammarata 7c27f72515 Merge pull request #14356 from mludvig/session_token
Add support for AWS_SESSION_TOKEN environment variable. (trivial patch)
9 years ago
Peter Sprygada 107c13759e changes Config class in network to only raise exceptions
The Config class should not call fail_json but simply raise exceptions
and allow the implementor to handle the exception
9 years ago
Toshio Kuratomi 39c543e356 Use find -exec + so that failures will be visible in find's exit code (#16389)
Fixes #16385
9 years ago
James Cammarata 4c1601e9f2 Take previously failed/unreachable hosts into account when checking the batch
Again, as we're carrying failed/unreachable hosts forward from play to play via
internal structures, we need to remember which ones had previously failed so that
unrelated host failures don't inflate the numbers for a given serial batch in the
PlaybookExecutor causing a premature exit.

Fixes #16364
9 years ago
James Cammarata aefa12a20f Merge pull request #13709 from traveloka/credstash-support-encr-context
Make credstash lookup plugin support encryption contexts
9 years ago
James Cammarata 15e648dd94 Fix handler listeners as a list
The listen statement on handlers should have supported a list, however
it was broken in the revision of the pub/sub feature based on the handler
revamp. This patch corrects the bug, so this works again:

- name: some handler
  ...
  listen:
  - some target
  - another target

Fixes #16378
9 years ago
James Tanner b1d32e6e32 Update submodule refs 9 years ago
nitzmahone 2bf9f593b5 bump submodule refs 9 years ago
James Cammarata 96a96b0e97 Merge pull request #16360 from agaffney/old_style_module_args_quoting
Fix quoting of args for old-style modules
9 years ago
Nathaniel Case 5dccff29bf Network Module: EOS (#16158)
* add new module network

* move EOS to NetworkModule

* shell.py Python 3.x compatibility

* implements the Command class through the connection for eos

This implements a new Command class that specifies the cli command
and output format.  This removes the need to batch commands through
the connection

* initial add of netcmd module
9 years ago
James Cammarata 17447ff035 Fixing typo in base strategy code from handler listen feature merge 9 years ago
James Cammarata ca6ee4c789 FEATURE: handler listeners
Fixes ansible/proposals#8
9 years ago
James Cammarata 8218591fec Track notified handlers by object rather than simply their name
Due to the fact that roles may be instantiated with different sets of
params (multiple inclusions of the same role or via role dependencies),
simply tracking notified handlers by name does not work. This patch
changes the way we track handler notifications by using the handler
object itself instead of just the name, allowing for multiple internal
instances. Normally this would be bad, but we also modify the way we
search for handlers by first looking at the notifying tasks dependency
chain (ensuring that roles find their own handlers first) and then at
the main list of handlers, using the first match it finds.

This patch also modifies the way we setup the internal list of handlers,
which should allow us to correctly identify if a notified handler exists
more easily.

Fixes #15084
9 years ago
Andrew Gaffney a64f7fd602 Fix quoting of args for old-style modules
This removes the extra layer of quotes around values in the 'args' file.
These quotes were there before the pipes.quote() call was added, but
were not removed, resulting in too much quoting.
9 years ago
jctanner 1db02dfb71 If decryption of a vaulted file failed, include the filename in the error. (#16329)
Fixes #16327
9 years ago
James Cammarata 8ee851cd95 Merge pull request #13460 from yesbox/devel
Adds support for converting a MAC address to an integer
9 years ago
James Cammarata 4bc85e150a Merge pull request #12807 from Lujeni/devel
Ansible-galaxy requirements support a include directive
9 years ago
James Cammarata 20754c1094 Allow groups to be specified using YAML list syntax for add_host
Fixes #12622
9 years ago
Zempashi af150ea43a Fix linux 'ip' stdout parsing. (#16170)
With network-manager in debian (stretch) and openvpn connection enabled
the output for ipv6 is different and include a 'peer' keyword.

Fixes #15448
9 years ago
Nate Coraor 706778ee7f Fix distro detection for Solaris derivatives 9 years ago
art-at-sky 38590fbab9 Fix string coercion problem in error handling code 10:50 (#16270)
Manifests as the following stack trace
  File "/usr/local/Cellar/ansible/2.0.1.0/libexec/lib/python2.7/site-packages/ansible/utils/display.py", line 259, in error
      new_msg = u"ERROR! " + msg
      TypeError: coercing to Unicode: need string or buffer, AnsibleParserError found
9 years ago
Mark Szymanski 2b0d0d0323 Allowing changed colour to be set properly from ansible.cfg (#16338) 9 years ago
Toshio Kuratomi bef1971ffe Update core submodule for wait_for fix 9 years ago
Toshio Kuratomi 6cb8fdeaf2 Use find instead of -R for recursive setfacl (#16340)
(-R is not present on Solaris or freebsd setfacl)

Fixes #16322
9 years ago
James Tanner a5046a3ffe Update submodule refs 9 years ago
Matt Davis 5900571273 Merge pull request #16296 from ccin2p3/hotfix/issue_16295
Properly template task names in free strategy
9 years ago
Matt Davis 9e2e2b1c54 Merge pull request #16279 from md5/show-facl-error
Show stderr when there is an error calling setfacl
9 years ago
nitzmahone 0a0b44baeb bump submodule refs 9 years ago
Toshio Kuratomi a3959644ee Change the default of module_set_locale to False. (#16313)
This makes Ansible no longer set LC_ALL for remote systems.  It is up to
the individual modules to set LC_ALL if they need it for screenscraping
the output from a program.

This is the 2.2 followup for #15138
9 years ago
Colin Hoglund 5a2b34e159 allow spaces before the filter string (#16312) 9 years ago
Toshio Kuratomi e088193599 Update submodule refs 9 years ago
Toshio Kuratomi 16211e7dab Check that required arguments src and dest are present.
Fixes #16301
9 years ago
Adrian Likins a7639896a2 Delete currently unused code. (#16290)
This was kind of confusing, and also caused sphinx-apidoc
to throw strange errors.
9 years ago
Brian Coca 13d52ae438 subref update 9 years ago
Brian Coca 4acac55d23 add executable if none exists when become
this is needed as become adds commands that require shell
9 years ago
elotje 8c7ceaab81 Unprivileged become on HP-UX/UNIX (Fixes #16249) (#16275)
Problem: When setting the file permissions on the remote server for
unprivileged users ansible expects that a chown will fail for unprivileged
users. For some systems (e.g. HP-UX) this is not the case.

Solution: Change the order how ansible sets the remote permissions.
* If the remote_user sudo's to an unprivileged user then we attempt to
  grant the unprivileged user access via file system acls.
* If granting file system acls fails we try to change the owner of the
  file with chown which only works in case the remote_user is privileged
  or the remote systems allows chown calls by unprivileged users (e.g.
  HP-UX)
* If the chown fails we can set the file to be world readable so that
  the second unprivileged user can read the file. Since this could allow
  other users to get access to private information we only do this
  ansible is configured with "allow_world_readable_tmpfiles" in the
  ansible.cfg
9 years ago
Adrian Likins f819bb524a zone plugin updates for newer api (#16289)
Fixes errors on import.
9 years ago
Toshio Kuratomi c4838286ac Make sure we don't end up with an empty PYTHONPATH (#16240)
When the PYTHONPATH is an empty string python will treat it as though
the cwd is in the PYTHONPATH.  This can be undesirable.  So make sure we
delete PYTHONPATH from the environment altgether in this case.

Fixes #16195
9 years ago