summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2010-01-08change DataSourceEc2 to use the local boto_utilsScott Moser
2010-01-08add boto_utilsScott Moser
There are some problems with boto 1.9, (eucatools has issues with it). For now, I'm copying the portions of boto that i needed here to boto_utils. This gets me the newer get_instance_metadata() without needing boto
2010-01-08read cached user-data without pickling -- its just a stringScott Moser
2010-01-08fixes found testing in ec2Scott Moser
2010-01-07fix ec2init.conf upstart job to have correct start onScott Moser
2010-01-07remove old 'tests.py'Scott Moser
2010-01-07remove dead/unused code, call this 0.5.0Scott Moser
2010-01-07support setting hostnameScott Moser
2010-01-07add setting of default locale and apt-sourcesScott Moser
2010-01-07support getting public ssh keys from ec2 metadata serviceScott Moser
2010-01-07functional state now in kvm testsScott Moser
supports user data as mime-multipart and handling types of text/x-shellscript - execute at rc.local text/cloud-config - feed to cloud config text/upstart-job - add to /etc/init as upstart job text/x-include-url - include urls as if they were in-line
2010-01-07get usage of cloud-init-run-module correctScott Moser
2010-01-06add UserDataHandler.py, it handles includes and normalizing of userdataScott Moser
2010-01-06mention where it came fromScott Moser
2010-01-06add tools/ directory and 'write-mime-multipart'Scott Moser
write-mime-multipart text/x-shellscript path/filename.sh \ text/x-cloud-config my.yaml \ > my.userdata
2010-01-06add cloud-run-user-script upstart job to run rc.local style scriptsScott Moser
2010-01-06put upstart files in upstart/, minor other changesScott Moser
adding cat-cloud-config.conf, a debug file that just cats the config
2010-01-06add cloud-init-run-module and ec2init/execute.pyScott Moser
cloud-init-run-module handles some boilerplate code for running items on a 'frequency'. It has the following usefulness - a config module can be put into ec2init dir and implement a 'run' method that takes a list of arguments and the path to a config file - it handles invoking module.run() only at a given frequency This is similar to karmic's ec2init's "run_once_ever" or run_once_per_ami execute.py is an example module that executes the arguments given to it An example usage in an upstart job would be with a 'exec' line like: exec cloud-init-run-module once_per_ami clean-core execute rm /var/run/core The above would then run the command 'rm /var/run/core' only once
2010-01-06add semaphore utilities to ec2init moduleScott Moser
2010-01-06add general flow of ec2-init.pyScott Moser
2010-01-06support compressed user data, use cPickle instead of pickleScott Moser
2010-01-06add initctl_emit and defines for different data locationsScott Moser
2010-01-05initial re-org, ec2 data source successfully reads from cache if presentScott Moser
2010-01-05add hacked 'install.sh' for installing to a directoryScott Moser
this 'install.sh <dir>' script ends up rendering a directory structure under <dir> like would be packaged in a deb
2010-01-05ec2-init-user-data is not present, remove it from setup.pyScott Moser
2009-12-16fix but that required 'ec2init=X' to be last thing on the cmdlineScott Moser
2009-12-16add ec2-is-compat-env as it is in lucid/karmic nowScott Moser
2009-12-16add current working ec2init.conf, save ec2init.conf.goal, add disablerScott Moser
I'm saving ec2init.conf.goal off as the goal. At some point in the future that should be functional. ec2init-disable.conf is present as a debugging tool. If boot hangs due to unsatisfiable conditions in start-on for ec2init.conf, this will disable ec2init.conf so a reboot will come up ec2init.conf running.
2009-12-16fix typo in ec2init.confScott Moser
2009-12-15add ec2init.conf upstart jobScott Moser
2009-12-14sync karmic and trunkScott Moser
This commit merges lp:~soren/ec2-init/0.5 at rev 67 and lp:ubuntu/lucid at 0.4.999-0ubuntu8
2009-09-25replace multiple '| logger' in regenerate_ssh_host_keys with a single oneScott Moser
This is a speed improvement as previous would make a fork/subshell for each pipe. This will only make a single fork. I've also verified that each line in logger output will still get the 'ec2' prefix $ printf "%s\n%s\n" "hi world" "by world" | logger -s -t ec2 2>/dev/null $ tail -n 2 /var/log/messages Sep 24 19:06:10 ip-10-242-225-190 ec2: hi world Sep 24 19:06:10 ip-10-242-225-190 ec2: by world The other thing to note is that I redirected stderr of the regenerate_ssh_host_keys call to logger, so it will go to the logs also.
2009-09-04Add a unittest for veriyfing that shell scripts passed in user-data get called.Soren Hansen
2009-08-26Tag 0.4.999 releaseSoren Hansen
2009-08-26Use /var/run/ec2 for mounting EBS volumes.Soren Hansen
2009-08-26Don't advertise a force-stop option to the init script that we don't ↵Soren Hansen
actually offer.
2009-08-25Merge with lp:~soren/ec2-init/appliancexmlSoren Hansen
This gives us the bulk of the magic needed on the instance side to implement http://wiki.ubuntu.com/VirtualApplianceSpec
2009-08-25Merge decorator based content_type mappings from lp:~soren/ec2-init/decoratorSoren Hansen
2009-08-25Implement EBS volume mountingSoren Hansen
This can either be invoked by instrumenting the user-data with a mime part with content-type 'text/x-ebs-mount-description' with a body like so: device=/dev/sde:/var/lib/mysql,/etc/alfresco device=/dev/sdf:/other/things or by using the appliance config XML format like so: <appliance> <storage device="/dev/sde"> <path>/var/lib/mysql</path> <path>/etc/alfresco</path> </storage> <storage device="/dev/sdf"> <path>/other/things</path> </appliance> </appliance> In either case, if the volume does not yet have a filesystem, one will be created. For each path that is to live on the volume, a directory is created, and populated with the data currently in the target directory (e.g. /var/lib/mysql is copied to ${ebs_volume_path}/_var_lib_mysql). Once this is done, the directories are bind-mounted to the relevant paths. If the directories in question already exist, they will just be bind-mounted.
2009-08-25Merge with lp:~soren/ec2-init/decoratorSoren Hansen
Add @handler decorator for appliance config
2009-08-25Replace static content_type_handler dictionary with a decorator.Soren Hansen
LP: #376740
2009-08-25Added script handling to appliance config handling.Soren Hansen
Added test cases for this.
2009-08-25Added basic appliance config handling (specifically package installation and ↵Soren Hansen
removal) Also added unit tests for the above.
2009-08-24Merge lp:~smoser/ec2-init/bugfix-412143Soren Hansen
Fixes invalid $ssh token in Required-Start LSB init header.
2009-08-11 * ec2-init: Remove invalid token '$ssh' in header (LP: #412143)Scott Moser
2009-08-11Update /etc/default/locale with locale setting derived from locality.Soren Hansen
2009-08-11Consolidate on the use of urllib2 (rather than both urllib and urllib2)Soren Hansen
2009-08-11Fix ec2-get-info to work with simple testing environment (i.e. don't append ↵Soren Hansen
a slash to every single URL)
2009-08-11Set ownership of user's .ssh directory correctly.Soren Hansen
Disable root by default. Fail more gracefully if ssh keys could not be fetched.
2009-08-11Extend config API to allow for default values.Soren Hansen
Handle undefined config values gracefully.