Amulet should work with local charms that are not in version control

Bug #1293878 reported by Matt Bruzek
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Amulet
Fix Released
Critical
Tim Van Steenburgh

Bug Description

I was working on a charm that was not yet in version control and my amulet tests failed. Adding the directory to bzr seemed to fix the problem.

Here is the schema and the error:

local:
  relations:
  - ['memcached:juju-info', 'memcached-sentry:juju-info']
  - ['terracotta:juju-info', 'terracotta-sentry:juju-info']
  - ['tomcat:juju-info', 'tomcat-sentry:juju-info']
  - ['relation-sentry:requires-tomcat_jndi-memcached-memcached_cache', 'tomcat:jndi-memcached']
  - ['relation-sentry:provides-tomcat_jndi-memcached-memcached_cache', 'memcached:cache']
  - ['relation-sentry:requires-tomcat_jndi-terracotta-terracotta_dso', 'tomcat:jndi-terracotta']
  - ['relation-sentry:provides-tomcat_jndi-terracotta-terracotta_dso', 'terracotta:dso']
  series: precise
  services:
    memcached: {_has_sentry: true, charm: 'cs:precise/memcached-12'}
    memcached-sentry: {_has_sentry: true, branch: /tmp/sentry-sub_uejmyfr0/memcached-sentry,
      expose: true}
    relation-sentry: {branch: /tmp/sentry_j2p_7vyw/relation-sentry, expose: true}
    terracotta: {_has_sentry: true, charm: 'cs:precise/terracotta-0'}
    terracotta-sentry: {_has_sentry: true, branch: /tmp/sentry-sub_e8p6clkz/terracotta-sentry,
      expose: true}
    tomcat:
      _has_sentry: true
      branch: /home/mbruzek/workspace/charms/tomcat
      expose: true
      options: {admin_password: admin_p@ssw0rd, admin_username: admin, cluster_enabled: true,
        debug_enabled: true, http_connector: bio, http_port: 80, https_enabled: false,
        https_port: 443, java_opts: -Xms768M -Xmx1024M, jmx_control_password: jmx_control_p@ssw0rd,
        jmx_enabled: true, jmx_jar_md5: 82763603dc177d9aabd17d39cef7dcbb, jmx_jar_url: 'http://archive.apache.org/dist/tomcat/tomcat-7/
v7.0.26/bin/extras/catalina-jmx-remote.jar',
        jmx_localhost: true, jmx_monitor_password: jmx_monitor_p@ssw0rd, jndi_memcached_config: 'param/Memcached:memcached',
        jndi_terracotta_config: 'param/Terracotta:terracotta', manager_enabled: true,
        multicast: true, multicast_address: 228.0.0.4, multicast_port: 34569, status_password: status_p@ssw0rd,
        status_username: status, terracotta_md5: 92c6456f1641b7662b4dedec15eaf3f4,
        terracotta_url: 'http://d2zwv9pap9ylyd.cloudfront.net/terracotta-3.6.2.tar.gz',
        tomcat_version: tomcat7}
    tomcat-sentry: {_has_sentry: true, branch: /tmp/sentry-sub_9474o6_b/tomcat-sentry,
      expose: true}

2014-03-17 18:02:07 Starting deployment of local
Traceback (most recent call last):
  File "/usr/bin/juju-deployer", line 9, in <module>
    load_entry_point('juju-deployer==0.3.4', 'console_scripts', 'juju-deployer')()
  File "/usr/lib/python2.7/dist-packages/deployer/cli.py", line 127, in main
    run()
  File "/usr/lib/python2.7/dist-packages/deployer/cli.py", line 225, in run
    importer.Importer(env, deployment, options).run()
  File "/usr/lib/python2.7/dist-packages/deployer/action/importer.py", line 182, in run
    self.get_charms()
  File "/usr/lib/python2.7/dist-packages/deployer/action/importer.py", line 63, in get_charms
    no_local_mods=self.options.no_local_mods)
  File "/usr/lib/python2.7/dist-packages/deployer/deployment.py", line 135, in fetch_charms
    charm.fetch()
  File "/usr/lib/python2.7/dist-packages/deployer/charm.py", line 98, in fetch
    self.vcs.branch()
AttributeError: 'NoneType' object has no attribute 'branch'
Traceback (most recent call last):
  File "tests/10-configured-deploy.py", line 65, in <module>
    d.setup(timeout=seconds)
  File "/usr/lib/python3/dist-packages/amulet/deployer.py", line 205, in setup
    self.juju_env], cwd=self.deployer_dir)
  File "/usr/lib/python3.4/subprocess.py", line 559, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['juju-deployer', '-W', '-c', '/tmp/amulet-juju-deployer-jy0mrliq.json', '-e', 'local', 'local'
]' returned non-zero exit status 1

Marco Ceppi (marcoceppi)
Changed in amulet:
status: New → Triaged
milestone: none → 1.4.1
assignee: nobody → Marco Ceppi (marcoceppi)
importance: Undecided → High
Marco Ceppi (marcoceppi)
Changed in amulet:
importance: High → Critical
Marco Ceppi (marcoceppi)
Changed in amulet:
milestone: 1.4.1 → 1.5.0
Changed in amulet:
assignee: Marco Ceppi (marcoceppi) → Tim Van Steenburgh (tvansteenburgh)
status: Triaged → In Progress
Marco Ceppi (marcoceppi)
Changed in amulet:
milestone: 1.5.0 → 1.5.1
Revision history for this message
Tim Van Steenburgh (tvansteenburgh) wrote :
Changed in amulet:
status: In Progress → Fix Committed
Marco Ceppi (marcoceppi)
Changed in amulet:
status: Fix Committed → Fix Released
Revision history for this message
Sean Feole (sfeole) wrote :

any ETA for amulet 1.5.1 with this fix?

Revision history for this message
Tim Van Steenburgh (tvansteenburgh) wrote :

Sean, I'm almost certain this fix has already been released in a prior version. The latest version (1.5.0) should have it.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.