yellow team mailing list archive
-
yellow team
-
Mailing list archive
-
Message #00676
Re: Test launcher script
On Apr 8, 2012, at 16:18 , Graham Binns wrote:
> Hi chaps,
>
> It occurred to me that I've not actually sent anything out the script
> to automate test runs, so here's something:
>
> - Branch this: lp:~gmb/+junk/gris-gris
> - Run the following command:
>
> ./run_lp_tests.py --master-config=/path/to/master/config/yaml
> --slave-config=/path/to/slave/config/yaml
> --repository=/path/to/charm/repo
>
> And it should _just work_.
Hi Graham,
I tried exercising your script today and ran into some problems. The issues are odd to the point that I wonder if you perhaps forgot to push up your latest work -or- I've got some environmental issues.
* The script has a pdb still in it.
* When running the script, the slave never came up. 'wait_for_machine' got an error as 'instance-state' was not part of the juju status output for the slave machine, as you can see at http://paste.ubuntu.com/922372/. Is that part of the change to the format of 'juju status' that was introduced recently.
For comparison, launching a master and slave by hand (though not changing the machine type) gives this: http://paste.ubuntu.com/922365/. The slave is still pending but at least has an instance-id and an instance-state reported.
Running your script I eventually get "timeout waiting for service to start". That is after I made a change to charmhelpers wait_for_machine to not rely on 'instance-state' existing.
So, in short, I'm a bit stumped as to why a slave will not come up using your script. Gary suggests it may be a recent change to juju.
--bac
>
> Notes:
>
> 0. You need to have an Juju environment configured for
> EC2 in your environments.yaml; it needs to be called
> 'ec2'. The script will copy this and modify it for
> the sake of launching the instances we need.
> 1. You need to have the following installed:
> - python-shelltoolbox
> - python-charmhelpers (it's not packaged yet, but
> you can grab the code from
> lp:~gmb/charm-tools/add-charm-helpers and run
> python setup.py install
> 2. The script will launch a slave and a master, will wait
> for the slave to be ready, and then will force a build.
> Once it's done that it will exit.
> 3. Once the build's complete, you need to run:
> `juju destroy-environment ec2-testing`
> followed by
> `./run_lp_tests.py --cleanup`
> The latter will restore your old environments.yaml.
>
> Further things we could do with the script:
>
> - Make it monitor the build, capture the final output
> and tear down the environment when it's finished
> (I tried this, but of course destroy-environment
> is interactive, and piping `yes` to it caused it to
> eat the CPU.
> - ??? Suggestions welcome.
>
> --
> Graham Binns | PGP Key: EC66FA7D
> http://launchpad.net/~gmb
>
> --
> Mailing list: https://launchpad.net/~yellow
> Post to : yellow@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~yellow
> More help : https://help.launchpad.net/ListHelp
Follow ups
References