lxc scripts break when user has PYTHONPATH set
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
pyjuju |
Fix Committed
|
Critical
|
Kapil Thangavelu | ||
juju (Ubuntu) |
Fix Released
|
Critical
|
Stephanie | ||
lxc (Ubuntu) |
Invalid
|
Undecided
|
Unassigned |
Bug Description
The various lxc scripts installed in /usr/bin are Python 3 only. If the user has PYTHONPATH or other similar environment variables set, these scripts can incorrectly inherit details from the user's Python 2 setup when run.
This can result in either a crash as per the initial report, or a traceback over syntax differences such as the following in juju:
Traceback (most recent call last):
File "/usr/lib/
yield self.unit_
File "/usr/lib/
result = result.
File "/usr/lib/
return g.throw(self.type, self.value, self.tb)
File "/usr/lib/
running = yield deployment.
File "/usr/lib/
result = result.
File "/usr/lib/
return g.throw(self.type, self.value, self.tb)
File "/usr/lib/
prefix=
File "/usr/lib/
result = result.
File "/usr/lib/
return g.throw(self.type, self.value, self.tb)
File "/usr/lib/
_, output = yield deferToThread(_cmd, ["lxc-ls"])
File "/usr/lib/
result = context.call(ctx, function, *args, **kwargs)
File "/usr/lib/
return self.currentCon
File "/usr/lib/
return func(*args,**kw)
File "/usr/lib/
raise LXCError(
LXCError: Fatal Python error: Py_Initialize: Unable to get the locale encoding
File "/usr/lib/
raise CodecRegistryEr
SyntaxError: invalid syntax
WORKAROUND:
Add "-Es" to /usr/bin/lxc-ls (after /usr/bin/python3 ) so that those environment variables are ignored.
Related branches
- James Page: Needs Fixing
- Ubuntu branches: Pending requested
-
Diff: 146313 lines (+742/-72218)437 files modified.bzrignore (+12/-0)
.pc/applied-patches (+1/-0)
.pc/disable-failing-zookeeper-test.patch/juju/agents/tests/test_unit.py (+6/-0)
.pc/workaround-lxc-python-env.patch/juju/lib/lxc/__init__.py (+308/-0)
.testr.conf (+0/-4)
COPYING (+0/-661)
Makefile (+0/-44)
README (+0/-34)
bin/close-port (+0/-11)
bin/config-get (+0/-12)
bin/juju (+0/-10)
bin/juju-admin (+0/-10)
bin/juju-log (+0/-12)
bin/open-port (+0/-11)
bin/relation-get (+0/-12)
bin/relation-ids (+0/-11)
bin/relation-list (+0/-13)
bin/relation-set (+0/-13)
bin/unit-get (+0/-12)
debian/changelog (+13/-2)
debian/control (+11/-2)
debian/juju.install (+0/-1)
debian/juju.manpages (+0/-1)
debian/juju.postinst.in (+43/-0)
debian/juju.prerm.in (+23/-0)
debian/patches/series (+1/-0)
debian/patches/workaround-lxc-python-env.patch (+26/-0)
debian/rules (+36/-8)
examples/README (+0/-24)
examples/precise/mysql/config.yaml (+0/-1)
examples/precise/mysql/hooks/db-relation-joined (+0/-40)
examples/precise/mysql/hooks/install (+0/-32)
examples/precise/mysql/hooks/start (+0/-3)
examples/precise/mysql/hooks/stop (+0/-3)
examples/precise/mysql/metadata.yaml (+0/-17)
examples/precise/mysql/revision (+0/-1)
examples/precise/php/config.yaml (+0/-5)
examples/precise/php/hooks/config-changed (+0/-14)
examples/precise/php/hooks/install (+0/-49)
examples/precise/php/hooks/start (+0/-1)
examples/precise/php/hooks/stop (+0/-3)
examples/precise/php/metadata.yaml (+0/-4)
examples/precise/php/revision (+0/-1)
examples/precise/recorder/hooks/install (+0/-3)
examples/precise/recorder/hooks/juju-info-relation-changed (+0/-5)
examples/precise/recorder/hooks/juju-info-relation-departed (+0/-3)
examples/precise/recorder/hooks/juju-info-relation-joined (+0/-6)
examples/precise/recorder/metadata.yaml (+0/-9)
examples/precise/recorder/revision (+0/-1)
examples/precise/wordpress/config.yaml (+0/-7)
examples/precise/wordpress/hooks/config-changed (+0/-19)
examples/precise/wordpress/hooks/db-relation-changed (+0/-100)
examples/precise/wordpress/hooks/install (+0/-6)
examples/precise/wordpress/hooks/start (+0/-1)
examples/precise/wordpress/hooks/stop (+0/-3)
examples/precise/wordpress/metadata.yaml (+0/-10)
examples/precise/wordpress/revision (+0/-1)
juju/__init__.py (+0/-2)
juju/agents/__init__.py (+0/-1)
juju/agents/base.py (+0/-345)
juju/agents/dummy.py (+0/-16)
juju/agents/machine.py (+0/-126)
juju/agents/provision.py (+0/-239)
juju/agents/tests/__init__.py (+0/-1)
juju/agents/tests/common.py (+0/-52)
juju/agents/tests/test_base.py (+0/-633)
juju/agents/tests/test_dummy.py (+0/-13)
juju/agents/tests/test_machine.py (+0/-241)
juju/agents/tests/test_provision.py (+0/-527)
juju/agents/tests/test_unit.py (+0/-718)
juju/agents/unit.py (+0/-230)
juju/charm/__init__.py (+0/-3)
juju/charm/base.py (+0/-62)
juju/charm/bundle.py (+0/-85)
juju/charm/config.py (+0/-220)
juju/charm/directory.py (+0/-135)
juju/charm/errors.py (+0/-91)
juju/charm/metadata.py (+0/-264)
juju/charm/provider.py (+0/-28)
juju/charm/publisher.py (+0/-123)
juju/charm/repository.py (+0/-214)
juju/charm/tests/__init__.py (+0/-3)
juju/charm/tests/repository/series/configtest/config.yaml (+0/-9)
juju/charm/tests/repository/series/configtest/metadata.yaml (+0/-8)
juju/charm/tests/repository/series/configtest/revision (+0/-1)
juju/charm/tests/repository/series/dummy/.ignored (+0/-1)
juju/charm/tests/repository/series/dummy/config.yaml (+0/-5)
juju/charm/tests/repository/series/dummy/hooks/install (+0/-2)
juju/charm/tests/repository/series/dummy/metadata.yaml (+0/-5)
juju/charm/tests/repository/series/dummy/revision (+0/-1)
juju/charm/tests/repository/series/dummy/src/hello.c (+0/-7)
juju/charm/tests/repository/series/funkyblog/config.yaml (+0/-3)
juju/charm/tests/repository/series/funkyblog/metadata.yaml (+0/-17)
juju/charm/tests/repository/series/funkyblog/revision (+0/-1)
juju/charm/tests/repository/series/mysql-alternative/metadata.yaml (+0/-9)
juju/charm/tests/repository/series/mysql-alternative/revision (+0/-1)
juju/charm/tests/repository/series/mysql-format-v2/config.yaml (+0/-17)
juju/charm/tests/repository/series/mysql-format-v2/metadata.yaml (+0/-6)
juju/charm/tests/repository/series/mysql-format-v2/revision (+0/-1)
juju/charm/tests/repository/series/mysql/config.yaml (+0/-17)
juju/charm/tests/repository/series/mysql/metadata.yaml (+0/-6)
juju/charm/tests/repository/series/mysql/revision (+0/-1)
juju/charm/tests/repository/series/new/metadata.yaml (+0/-5)
juju/charm/tests/repository/series/new/revision (+0/-1)
juju/charm/tests/repository/series/old/metadata.yaml (+0/-5)
juju/charm/tests/repository/series/old/revision (+0/-1)
juju/charm/tests/repository/series/riak/metadata.yaml (+0/-11)
juju/charm/tests/repository/series/riak/revision (+0/-1)
juju/charm/tests/repository/series/varnish-alternative/hooks/install (+0/-3)
juju/charm/tests/repository/series/varnish-alternative/metadata.yaml (+0/-5)
juju/charm/tests/repository/series/varnish-alternative/revision (+0/-1)
juju/charm/tests/repository/series/varnish/metadata.yaml (+0/-5)
juju/charm/tests/repository/series/varnish/revision (+0/-1)
juju/charm/tests/repository/series/wordpress/config.yaml (+0/-3)
juju/charm/tests/repository/series/wordpress/metadata.yaml (+0/-19)
juju/charm/tests/repository/series/wordpress/revision (+0/-1)
juju/charm/tests/test_base.py (+0/-80)
juju/charm/tests/test_bundle.py (+0/-240)
juju/charm/tests/test_config.py (+0/-223)
juju/charm/tests/test_directory.py (+0/-227)
juju/charm/tests/test_errors.py (+0/-68)
juju/charm/tests/test_metadata.py (+0/-370)
juju/charm/tests/test_provider.py (+0/-31)
juju/charm/tests/test_publisher.py (+0/-223)
juju/charm/tests/test_repository.py (+0/-579)
juju/charm/tests/test_url.py (+0/-140)
juju/charm/url.py (+0/-148)
juju/control/__init__.py (+0/-192)
juju/control/add_relation.py (+0/-70)
juju/control/add_unit.py (+0/-65)
juju/control/bootstrap.py (+0/-39)
juju/control/command.py (+0/-75)
juju/control/config_get.py (+0/-95)
juju/control/config_set.py (+0/-113)
juju/control/constraints_get.py (+0/-76)
juju/control/debug_hooks.py (+0/-182)
juju/control/debug_log.py (+0/-138)
juju/control/deploy.py (+0/-194)
juju/control/destroy_environment.py (+0/-35)
juju/control/destroy_service.py (+0/-68)
juju/control/expose.py (+0/-48)
juju/control/initialize.py (+0/-46)
juju/control/legacy.py (+0/-41)
juju/control/open_tunnel.py (+0/-32)
juju/control/options.py (+0/-133)
juju/control/remove_relation.py (+0/-92)
juju/control/remove_unit.py (+0/-54)
juju/control/resolved.py (+0/-114)
juju/control/scp.py (+0/-88)
juju/control/ssh.py (+0/-102)
juju/control/status.py (+0/-726)
juju/control/terminate_machine.py (+0/-71)
juju/control/tests/__init__.py (+0/-1)
juju/control/tests/common.py (+0/-60)
juju/control/tests/sample_cluster.yaml (+0/-60)
juju/control/tests/test_add_relation.py (+0/-226)
juju/control/tests/test_add_unit.py (+0/-199)
juju/control/tests/test_admin.py (+0/-53)
juju/control/tests/test_bootstrap.py (+0/-118)
juju/control/tests/test_config_get.py (+0/-98)
juju/control/tests/test_config_set.py (+0/-291)
juju/control/tests/test_constraints_get.py (+0/-115)
juju/control/tests/test_control.py (+0/-319)
juju/control/tests/test_debug_hooks.py (+0/-218)
juju/control/tests/test_debug_log.py (+0/-271)
juju/control/tests/test_deploy.py (+0/-595)
juju/control/tests/test_destroy_environment.py (+0/-137)
juju/control/tests/test_destroy_service.py (+0/-152)
juju/control/tests/test_expose.py (+0/-93)
juju/control/tests/test_initialize.py (+0/-55)
juju/control/tests/test_open_tunnel.py (+0/-45)
juju/control/tests/test_remove_relation.py (+0/-215)
juju/control/tests/test_remove_unit.py (+0/-238)
juju/control/tests/test_resolved.py (+0/-392)
juju/control/tests/test_scp.py (+0/-138)
juju/control/tests/test_ssh.py (+0/-380)
juju/control/tests/test_status.py (+0/-925)
juju/control/tests/test_terminate_machine.py (+0/-200)
juju/control/tests/test_unexpose.py (+0/-93)
juju/control/tests/test_upgrade_charm.py (+0/-523)
juju/control/tests/test_utils.py (+0/-203)
juju/control/unexpose.py (+0/-48)
juju/control/upgrade_charm.py (+0/-141)
juju/control/utils.py (+0/-137)
juju/environment/config.py (+0/-313)
juju/environment/environment.py (+0/-58)
juju/environment/errors.py (+0/-9)
juju/environment/tests/data/lsb-release (+0/-4)
juju/environment/tests/test_config.py (+0/-796)
juju/environment/tests/test_environment.py (+0/-80)
juju/errors.py (+0/-225)
juju/ftests/__init__.py (+0/-1)
juju/ftests/test_aws.py (+0/-117)
juju/ftests/test_connection.py (+0/-91)
juju/ftests/test_ec2_provider.py (+0/-258)
juju/hooks/cli.py (+0/-297)
juju/hooks/commands.py (+0/-286)
juju/hooks/executor.py (+0/-291)
juju/hooks/invoker.py (+0/-376)
juju/hooks/protocol.py (+0/-527)
juju/hooks/scheduler.py (+0/-361)
juju/hooks/tests/hooks/echo-hook (+0/-5)
juju/hooks/tests/hooks/fail-hook (+0/-4)
juju/hooks/tests/hooks/hanging-hook (+0/-3)
juju/hooks/tests/hooks/sleep-hook (+0/-3)
juju/hooks/tests/hooks/success-hook (+0/-3)
juju/hooks/tests/test_arguments.py (+0/-163)
juju/hooks/tests/test_cli.py (+0/-444)
juju/hooks/tests/test_communications.py (+0/-431)
juju/hooks/tests/test_executor.py (+0/-397)
juju/hooks/tests/test_invoker.py (+0/-2142)
juju/hooks/tests/test_scheduler.py (+0/-738)
juju/lib/cache.py (+0/-18)
juju/lib/filehash.py (+0/-18)
juju/lib/format.py (+0/-137)
juju/lib/loader.py (+0/-38)
juju/lib/lxc/__init__.py (+0/-308)
juju/lib/lxc/tests/data/sample_fstab (+0/-2)
juju/lib/lxc/tests/data/sample_fstab_withdevtmpfs (+0/-3)
juju/lib/lxc/tests/test_lxc.py (+0/-300)
juju/lib/mocker.py (+0/-2162)
juju/lib/pick.py (+0/-49)
juju/lib/port.py (+13/-0)
juju/lib/schema.py (+0/-326)
juju/lib/serializer.py (+0/-21)
juju/lib/service.py (+0/-160)
juju/lib/statemachine.py (+0/-417)
juju/lib/testing.py (+0/-230)
juju/lib/tests/test_cache.py (+0/-20)
juju/lib/tests/test_filehash.py (+0/-13)
juju/lib/tests/test_format.py (+0/-308)
juju/lib/tests/test_loader.py (+0/-33)
juju/lib/tests/test_pick.py (+0/-59)
juju/lib/tests/test_port.py (+32/-0)
juju/lib/tests/test_schema.py (+0/-484)
juju/lib/tests/test_service.py (+0/-116)
juju/lib/tests/test_statemachine.py (+0/-473)
juju/lib/tests/test_twistutils.py (+0/-157)
juju/lib/tests/test_under.py (+0/-29)
juju/lib/tests/test_zk.py (+0/-123)
juju/lib/tests/test_zklog.py (+0/-259)
juju/lib/twistutils.py (+0/-69)
juju/lib/under.py (+0/-12)
juju/lib/zk.py (+0/-253)
juju/lib/zklog.py (+0/-187)
juju/machine/__init__.py (+0/-17)
juju/machine/errors.py (+0/-6)
juju/machine/tests/__init__.py (+0/-1)
juju/machine/tests/data/test_get_container (+0/-44)
juju/machine/tests/test_constraints.py (+1/-0)
juju/machine/tests/test_machine.py (+0/-20)
juju/machine/tests/test_unit_deployment.py (+0/-428)
juju/machine/unit.py (+0/-296)
juju/providers/__init__.py (+0/-1)
juju/providers/common/__init__.py (+0/-1)
juju/providers/common/base.py (+0/-224)
juju/providers/common/bootstrap.py (+0/-58)
juju/providers/common/cloudinit.py (+0/-410)
juju/providers/common/connect.py (+0/-86)
juju/providers/common/files.py (+0/-40)
juju/providers/common/findzookeepers.py (+0/-41)
juju/providers/common/instance_type.py (+0/-55)
juju/providers/common/launch.py (+0/-117)
juju/providers/common/state.py (+0/-56)
juju/providers/common/tests/data/cloud_init_bootstrap (+0/-61)
juju/providers/common/tests/data/cloud_init_bootstrap_testing (+64/-0)
juju/providers/common/tests/data/cloud_init_bootstrap_zookeepers (+0/-61)
juju/providers/common/tests/data/cloud_init_branch (+0/-39)
juju/providers/common/tests/data/cloud_init_branch_trunk (+0/-39)
juju/providers/common/tests/data/cloud_init_distro (+0/-36)
juju/providers/common/tests/data/cloud_init_no_machine_id (+0/-10)
juju/providers/common/tests/data/cloud_init_normal (+0/-13)
juju/providers/common/tests/data/cloud_init_ppa (+0/-38)
juju/providers/common/tests/data/cloud_init_ppa_apt_proxy (+0/-39)
juju/providers/common/tests/data/cloud_init_proposed (+0/-37)
juju/providers/common/tests/test_base.py (+0/-155)
juju/providers/common/tests/test_bootstrap.py (+0/-117)
juju/providers/common/tests/test_cloudinit.py (+0/-332)
juju/providers/common/tests/test_connect.py (+0/-239)
juju/providers/common/tests/test_files.py (+0/-62)
juju/providers/common/tests/test_findzookeepers.py (+0/-128)
juju/providers/common/tests/test_instance_type.py (+0/-71)
juju/providers/common/tests/test_launch.py (+0/-105)
juju/providers/common/tests/test_state.py (+0/-108)
juju/providers/common/tests/test_utils.py (+0/-117)
juju/providers/common/utils.py (+0/-148)
juju/providers/dummy.py (+0/-206)
juju/providers/ec2/__init__.py (+0/-225)
juju/providers/ec2/files.py (+0/-122)
juju/providers/ec2/launch.py (+0/-104)
juju/providers/ec2/machine.py (+0/-22)
juju/providers/ec2/securitygroup.py (+0/-136)
juju/providers/ec2/tests/__init__.py (+0/-1)
juju/providers/ec2/tests/common.py (+0/-209)
juju/providers/ec2/tests/data/bootstrap_cloud_init (+0/-61)
juju/providers/ec2/tests/data/launch_cloud_init (+0/-35)
juju/providers/ec2/tests/data/launch_cloud_init_branch (+0/-39)
juju/providers/ec2/tests/data/launch_cloud_init_ppa (+0/-37)
juju/providers/ec2/tests/data/lucid.txt (+0/-16)
juju/providers/ec2/tests/data/natty.txt (+0/-21)
juju/providers/ec2/tests/test_bootstrap.py (+0/-153)
juju/providers/ec2/tests/test_files.py (+0/-237)
juju/providers/ec2/tests/test_findzookeeper.py (+0/-138)
juju/providers/ec2/tests/test_getmachines.py (+0/-177)
juju/providers/ec2/tests/test_launch.py (+0/-313)
juju/providers/ec2/tests/test_machine.py (+0/-21)
juju/providers/ec2/tests/test_provider.py (+0/-288)
juju/providers/ec2/tests/test_securitygroup.py (+0/-164)
juju/providers/ec2/tests/test_shutdown.py (+0/-221)
juju/providers/ec2/tests/test_state.py (+0/-129)
juju/providers/ec2/tests/test_utils.py (+0/-283)
juju/providers/ec2/utils.py (+0/-171)
juju/providers/local/__init__.py (+0/-272)
juju/providers/local/agent.py (+0/-82)
juju/providers/local/files.py (+0/-117)
juju/providers/local/machine.py (+0/-10)
juju/providers/local/network.py (+0/-101)
juju/providers/local/pkg.py (+0/-18)
juju/providers/local/tests/__init__.py (+0/-1)
juju/providers/local/tests/test_agent.py (+0/-97)
juju/providers/local/tests/test_container.py (+0/-37)
juju/providers/local/tests/test_files.py (+0/-142)
juju/providers/local/tests/test_machine.py (+0/-12)
juju/providers/local/tests/test_network.py (+0/-137)
juju/providers/local/tests/test_pkg.py (+0/-27)
juju/providers/local/tests/test_provider.py (+0/-217)
juju/providers/maas/maas.py (+29/-8)
juju/providers/maas/provider.py (+4/-3)
juju/providers/maas/tests/test_launch.py (+23/-4)
juju/providers/maas/tests/test_maas.py (+38/-2)
juju/providers/maas/tests/test_provider.py (+28/-3)
juju/providers/openstack/__init__.py (+0/-5)
juju/providers/openstack/_ssl.py (+0/-21)
juju/providers/openstack/client.py (+0/-526)
juju/providers/openstack/credentials.py (+0/-101)
juju/providers/openstack/files.py (+0/-84)
juju/providers/openstack/launch.py (+0/-152)
juju/providers/openstack/machine.py (+0/-68)
juju/providers/openstack/ports.py (+0/-180)
juju/providers/openstack/provider.py (+0/-218)
juju/providers/openstack/tests/__init__.py (+0/-233)
juju/providers/openstack/tests/test_bootstrap.py (+0/-222)
juju/providers/openstack/tests/test_client.py (+0/-315)
juju/providers/openstack/tests/test_credentials.py (+0/-216)
juju/providers/openstack/tests/test_files.py (+0/-100)
juju/providers/openstack/tests/test_getmachines.py (+0/-115)
juju/providers/openstack/tests/test_launch.py (+0/-188)
juju/providers/openstack/tests/test_machine.py (+0/-110)
juju/providers/openstack/tests/test_ports.py (+0/-408)
juju/providers/openstack/tests/test_provider.py (+0/-194)
juju/providers/openstack/tests/test_shutdown.py (+0/-130)
juju/providers/openstack/tests/test_state.py (+0/-57)
juju/providers/openstack_s3/__init__.py (+0/-58)
juju/providers/openstack_s3/tests/test_provider.py (+0/-89)
juju/providers/orchestra/__init__.py (+0/-132)
juju/providers/orchestra/cobbler.py (+0/-284)
juju/providers/orchestra/digestauth.py (+0/-106)
juju/providers/orchestra/files.py (+0/-84)
juju/providers/orchestra/launch.py (+0/-57)
juju/providers/orchestra/machine.py (+0/-17)
juju/providers/orchestra/tests/__init__.py (+0/-1)
juju/providers/orchestra/tests/common.py (+0/-179)
juju/providers/orchestra/tests/data/bootstrap_user_data (+0/-61)
juju/providers/orchestra/tests/data/launch_user_data (+0/-34)
juju/providers/orchestra/tests/data/server.crt (+0/-12)
juju/providers/orchestra/tests/data/server.key (+0/-15)
juju/providers/orchestra/tests/test_bootstrap.py (+0/-158)
juju/providers/orchestra/tests/test_cobbler.py (+0/-1033)
juju/providers/orchestra/tests/test_digestauth.py (+0/-304)
juju/providers/orchestra/tests/test_files.py (+0/-205)
juju/providers/orchestra/tests/test_findzookeepers.py (+0/-88)
juju/providers/orchestra/tests/test_getmachines.py (+0/-105)
juju/providers/orchestra/tests/test_launch.py (+0/-163)
juju/providers/orchestra/tests/test_machine.py (+0/-25)
juju/providers/orchestra/tests/test_provider.py (+0/-146)
juju/providers/orchestra/tests/test_shutdown.py (+0/-192)
juju/providers/orchestra/tests/test_state.py (+0/-48)
juju/providers/tests/__init__.py (+0/-1)
juju/providers/tests/test_dummy.py (+0/-175)
juju/state/__init__.py (+0/-1)
juju/state/agent.py (+0/-42)
juju/state/auth.py (+0/-56)
juju/state/base.py (+0/-143)
juju/state/charm.py (+0/-116)
juju/state/endpoint.py (+0/-47)
juju/state/environment.py (+0/-204)
juju/state/errors.py (+0/-428)
juju/state/firewall.py (+0/-314)
juju/state/hook.py (+0/-434)
juju/state/initialize.py (+0/-77)
juju/state/machine.py (+0/-282)
juju/state/placement.py (+0/-89)
juju/state/relation.py (+0/-927)
juju/state/security.py (+0/-444)
juju/state/service.py (+0/-1592)
juju/state/sshclient.py (+0/-135)
juju/state/sshforward.py (+0/-160)
juju/state/tests/__init__.py (+0/-1)
juju/state/tests/common.py (+0/-55)
juju/state/tests/test_agent.py (+0/-94)
juju/state/tests/test_auth.py (+0/-89)
juju/state/tests/test_base.py (+0/-435)
juju/state/tests/test_charm.py (+0/-183)
juju/state/tests/test_endpoint.py (+0/-37)
juju/state/tests/test_environment.py (+0/-255)
juju/state/tests/test_errors.py (+0/-283)
juju/state/tests/test_firewall.py (+0/-697)
juju/state/tests/test_hook.py (+0/-896)
juju/state/tests/test_initialize.py (+0/-92)
juju/state/tests/test_machine.py (+0/-784)
juju/state/tests/test_placement.py (+0/-91)
juju/state/tests/test_relation.py (+0/-1916)
juju/state/tests/test_security.py (+0/-546)
juju/state/tests/test_service.py (+0/-2909)
juju/state/tests/test_sshclient.py (+0/-326)
juju/state/tests/test_sshforward.py (+0/-244)
juju/state/tests/test_topology.py (+0/-1266)
juju/state/tests/test_utils.py (+0/-708)
juju/state/topology.py (+0/-574)
juju/state/utils.py (+0/-279)
juju/tests/common.py (+0/-53)
juju/tests/test_errors.py (+0/-165)
juju/unit/__init__.py (+0/-1)
juju/unit/address.py (+0/-124)
juju/unit/charm.py (+0/-40)
juju/unit/deploy.py (+5/-2)
juju/unit/lifecycle.py (+0/-756)
juju/unit/tests/test_address.py (+0/-206)
juju/unit/tests/test_charm.py (+0/-167)
juju/unit/tests/test_deploy.py (+25/-10)
juju/unit/tests/test_lifecycle.py (+0/-1444)
juju/unit/tests/test_workflow.py (+0/-1074)
juju/unit/workflow.py (+0/-598)
misc/bash_completion.d/juju (+0/-107)
misc/devel-tools/juju-inspect-local-provider (+0/-63)
setup.py (+0/-43)
test (+0/-52)
description: | updated |
summary: |
- lxc-ls crashed with SIGABRT in Py_FatalError() + lxc scripts break when user has PYTHONPATH |
summary: |
- lxc scripts break when user has PYTHONPATH + lxc scripts break when user has PYTHONPATH set |
description: | updated |
Changed in juju (Ubuntu): | |
assignee: | nobody → Martin Packman (gz) |
status: | Triaged → In Progress |
Changed in juju: | |
status: | Incomplete → Fix Committed |
milestone: | none → 0.7.1 |
assignee: | nobody → Kapil Thangavelu (hazmat) |
Changed in juju: | |
importance: | Undecided → Critical |
Changed in juju (Ubuntu): | |
assignee: | Martin Packman (gz) → Stephanie (districtmellow-1904) |
StacktraceTop: entry=0x81d3504 "Py_Initialize: Unable to get the locale encoding") at ../Python/ pythonrun. c:2365 .isra.4. 21966 () at ../Python/ pythonrun. c:873 Ex_Private (install_ sigs=install_ sigs@entry= 1, install_ importlib= install_ importlib@ entry=1) at ../Python/ pythonrun. c:373 sigs=install_ sigs@entry= 1) at ../Python/ pythonrun. c:401 pythonrun. c:407
Py_FatalError (msg=msg@
initfsencoding
_Py_Initialize
Py_InitializeEx (install_
Py_Initialize () at ../Python/