Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add juju-deployer as dependency #123

Open
tvansteenburgh opened this issue Mar 18, 2016 · 3 comments
Open

Add juju-deployer as dependency #123

tvansteenburgh opened this issue Mar 18, 2016 · 3 comments

Comments

@tvansteenburgh
Copy link
Contributor

Doing so will ensure that amulet will actually work right-out-of-the-box, for example when installed from pip in a fresh container, without having to manually install other deps.

As of juju-solutions/bundletester#42, you can replace this:

tvansteenburgh@xenial-vm:/tmp/meteor⟫ cat tests/00-setup 
#!/bin/bash

#sudo add-apt-repository ppa:juju/stable -y
#sudo apt-get update
#sudo apt-get install amulet python-requests -y

With this:

tvansteenburgh@xenial-vm:/tmp/meteor⟫ cat tests/tests.yaml
python_packages:
  - requests
  - amulet
  - juju-deployer
  - bzr
virtualenv: true

Instead of just installing amulet, you have to install juju-deployer and bzr (because juju-deployer doesn't install bzr, which we should also fix).

I know deployer will be going away, but I'd prefer to fix this papercut in the meantime anyway.

@marcoceppi
Copy link
Contributor

Is there anyway to say that there are optional_installs in amulet? I fear that including these would make amulet heavier and fail frequently because bzr tends to fail to pip install. We should also evaluate if bzr is even needed anymore

@marcoceppi
Copy link
Contributor

It would appear that this is only used in https://github.com/juju/amulet/blob/master/amulet/charm.py#L184 and it's used to get the metadata for a charm when the charm is branch: lp:... I wonder if we could refactor this out to use LP api instead. Furthermore, we have a GitCharm but no way to list git as a python_package since it's not one. How should we handle this case?

@tvansteenburgh
Copy link
Contributor Author

I actually don't want to add git and bzr as deps of amulet, since they're not required. But juju-deployer is a mandatory runtime dep (currently) - amulet won't work at all w/o it.

I will add bzrlib as a dep of deployer. The fact that it's not already a defined dep is a long-standing bug that no one has bothered to fix.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants