Merge lp:~marcoceppi/charm-tools/fix-juju-test into lp:charm-tools/1.2

Proposed by Marco Ceppi
Status: Merged
Merged at revision: 301
Proposed branch: lp:~marcoceppi/charm-tools/fix-juju-test
Merge into: lp:charm-tools/1.2
Diff against target: 88 lines (+21/-6)
3 files modified
charmtools/test.py (+11/-3)
setup.py (+2/-2)
tests/test_juju_test.py (+8/-1)
To merge this branch: bzr merge lp:~marcoceppi/charm-tools/fix-juju-test
Reviewer Review Type Date Requested Status
charmers Pending
Review via email: mp+201694@code.launchpad.net

Description of the change

Fixed juju test load point and destroy-environment

https://codereview.appspot.com/52460043/

To post a comment you must log in.
Revision history for this message
Marco Ceppi (marcoceppi) wrote :
Download full text (4.4 KiB)

Reviewers: mp+201694_code.launchpad.net,

Message:
Please take a look.

Description:
Fixed juju test load point and destroy-environment

https://code.launchpad.net/~marcoceppi/charm-tools/fix-juju-test/+merge/201694

(do not edit description out of merge proposal)

Please review this at https://codereview.appspot.com/52460043/

Affected files (+23, -6 lines):
   A [revision details]
   M charmtools/test.py
   M setup.py
   M tests/test_juju_test.py

Index: [revision details]
=== added file '[revision details]'
--- [revision details] 2012-01-01 00:00:00 +0000
+++ [revision details] 2012-01-01 00:00:00 +0000
@@ -0,0 +1,2 @@
+Old revision: <email address hidden>
+New revision: <email address hidden>

Index: setup.py
=== modified file 'setup.py'
--- setup.py 2014-01-14 03:21:31 +0000
+++ setup.py 2014-01-15 00:18:41 +0000
@@ -34,7 +34,7 @@
              'charm = charmtools:charm',
              'juju-charm = charmtools:charm',
              'juju-bundle = charmtools:bundle',
- 'juju-test = charmtools:test',
+ 'juju-test = charmtools.test:main',
              'charm-get = charmtools.get:main',
              'charm-getall = charmtools.getall:main',
              'charm-proof = charmtools.proof:main',
@@ -49,7 +49,7 @@
              'charm-update = charmtools.update:main',
              'charm-version = charmtools.version:main',
              'charm-help = charmtools.cli:usage',
- 'charm-test = charmtools:test',
+ 'charm-test = charmtools.test:main',
              'charm-info = charmtools.info:main',
              'charm-generate = charmtools.generate:main',
              'charm-add = charmtools.generate:main',

Index: charmtools/test.py
=== modified file 'charmtools/test.py'
--- charmtools/test.py 2014-01-09 20:15:59 +0000
+++ charmtools/test.py 2014-01-15 00:18:41 +0000
@@ -184,8 +184,14 @@

      def destroy(self, juju_env):
          self.log.debug('Tearing down %s juju environment' % juju_env)
- cmd = ['juju', 'destroy-environment', '-e', juju_env]
+ cmd = ['juju', 'destroy-environment']
+
          if self.juju_version.major > 0:
+ if self.juju_version.minor < 17:
+ cmd.extend(['-y', '-e', juju_env])
+ else:
+ cmd.extend(['-y', juju_env])
+
              self.log.debug('Calling "%s"' % ' '.join(cmd))
              try:
                  subprocess.check_call(cmd)
@@ -194,6 +200,7 @@
          else:
              # Probably should use Popen instead of Shell=True. I'm just not
              # confident on properly mocking a Popen call just yet.
+ cmd.extend(['-e', juju_env])
              pycmd = 'echo y | %s' % ' '.join(cmd)
              self.log.debug('Calling "%s"' % pycmd)
              try:
@@ -234,8 +241,8 @@
                  if status['machines'][0]['agent-state'] == 'running':
                      bootstrapped = True

- def load_environments_yaml(self, juju_home='~'):
- env_yaml_file =
os.path.join(os.path.expanduser(juju_home), '.juju',
+ def load_environments_yaml(self, juju_home='~/.juju'):
+ env_yaml_file = os.path.join(os.path.expandus...

Read more...

Revision history for this message
Benjamin Saller (bcsaller) wrote :
Revision history for this message
Marco Ceppi (marcoceppi) wrote :

*** Submitted:

Fixed juju test load point and destroy-environment

R=benjamin.saller
CC=
https://codereview.appspot.com/52460043

https://codereview.appspot.com/52460043/

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'charmtools/test.py'
--- charmtools/test.py 2014-01-09 20:15:59 +0000
+++ charmtools/test.py 2014-01-15 00:20:52 +0000
@@ -184,8 +184,14 @@
184184
185 def destroy(self, juju_env):185 def destroy(self, juju_env):
186 self.log.debug('Tearing down %s juju environment' % juju_env)186 self.log.debug('Tearing down %s juju environment' % juju_env)
187 cmd = ['juju', 'destroy-environment', '-e', juju_env]187 cmd = ['juju', 'destroy-environment']
188
188 if self.juju_version.major > 0:189 if self.juju_version.major > 0:
190 if self.juju_version.minor < 17:
191 cmd.extend(['-y', '-e', juju_env])
192 else:
193 cmd.extend(['-y', juju_env])
194
189 self.log.debug('Calling "%s"' % ' '.join(cmd))195 self.log.debug('Calling "%s"' % ' '.join(cmd))
190 try:196 try:
191 subprocess.check_call(cmd)197 subprocess.check_call(cmd)
@@ -194,6 +200,7 @@
194 else:200 else:
195 # Probably should use Popen instead of Shell=True. I'm just not201 # Probably should use Popen instead of Shell=True. I'm just not
196 # confident on properly mocking a Popen call just yet.202 # confident on properly mocking a Popen call just yet.
203 cmd.extend(['-e', juju_env])
197 pycmd = 'echo y | %s' % ' '.join(cmd)204 pycmd = 'echo y | %s' % ' '.join(cmd)
198 self.log.debug('Calling "%s"' % pycmd)205 self.log.debug('Calling "%s"' % pycmd)
199 try:206 try:
@@ -234,8 +241,8 @@
234 if status['machines'][0]['agent-state'] == 'running':241 if status['machines'][0]['agent-state'] == 'running':
235 bootstrapped = True242 bootstrapped = True
236243
237 def load_environments_yaml(self, juju_home='~'):244 def load_environments_yaml(self, juju_home='~/.juju'):
238 env_yaml_file = os.path.join(os.path.expanduser(juju_home), '.juju',245 env_yaml_file = os.path.join(os.path.expanduser(juju_home),
239 'environments.yaml')246 'environments.yaml')
240 if not os.path.exists(env_yaml_file):247 if not os.path.exists(env_yaml_file):
241 raise IOError("%s file does not exist" % env_yaml_file)248 raise IOError("%s file does not exist" % env_yaml_file)
@@ -624,6 +631,7 @@
624def main():631def main():
625 p = setup_parser()632 p = setup_parser()
626 args = p.parse_args()633 args = p.parse_args()
634 test_cfg = None
627 if args.description:635 if args.description:
628 print p.description636 print p.description
629 sys.exit()637 sys.exit()
630638
=== modified file 'setup.py'
--- setup.py 2014-01-14 03:21:31 +0000
+++ setup.py 2014-01-15 00:20:52 +0000
@@ -34,7 +34,7 @@
34 'charm = charmtools:charm',34 'charm = charmtools:charm',
35 'juju-charm = charmtools:charm',35 'juju-charm = charmtools:charm',
36 'juju-bundle = charmtools:bundle',36 'juju-bundle = charmtools:bundle',
37 'juju-test = charmtools:test',37 'juju-test = charmtools.test:main',
38 'charm-get = charmtools.get:main',38 'charm-get = charmtools.get:main',
39 'charm-getall = charmtools.getall:main',39 'charm-getall = charmtools.getall:main',
40 'charm-proof = charmtools.proof:main',40 'charm-proof = charmtools.proof:main',
@@ -49,7 +49,7 @@
49 'charm-update = charmtools.update:main',49 'charm-update = charmtools.update:main',
50 'charm-version = charmtools.version:main',50 'charm-version = charmtools.version:main',
51 'charm-help = charmtools.cli:usage',51 'charm-help = charmtools.cli:usage',
52 'charm-test = charmtools:test',52 'charm-test = charmtools.test:main',
53 'charm-info = charmtools.info:main',53 'charm-info = charmtools.info:main',
54 'charm-generate = charmtools.generate:main',54 'charm-generate = charmtools.generate:main',
55 'charm-add = charmtools.generate:main',55 'charm-add = charmtools.generate:main',
5656
=== modified file 'tests/test_juju_test.py'
--- tests/test_juju_test.py 2014-01-08 21:35:31 +0000
+++ tests/test_juju_test.py 2014-01-15 00:20:52 +0000
@@ -203,7 +203,14 @@
203 c.destroy(good_env)203 c.destroy(good_env)
204204
205 mock_check_call.assert_called_once_with(['juju', 'destroy-environment',205 mock_check_call.assert_called_once_with(['juju', 'destroy-environment',
206 '-e', good_env])206 '-y', '-e', good_env])
207
208 mock_check_call.reset_mock()
209 c.juju_version = juju_test.JujuVersion(major=1, minor=17, patch=0)
210 c.destroy(good_env)
211
212 mock_check_call.assert_called_once_with(['juju', 'destroy-environment',
213 '-y', good_env])
207214
208 mock_check_call.reset_mock()215 mock_check_call.reset_mock()
209 c.juju_version = juju_test.JujuVersion(major=0, minor=8, patch=0)216 c.juju_version = juju_test.JujuVersion(major=0, minor=8, patch=0)

Subscribers

People subscribed via source and target branches

to all changes: