Age | Commit message (Collapse) | Author |
|
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.
|
|
|
|
|
|
|
|
actually offer.
|
|
This gives us the bulk of the magic needed on the instance side
to implement http://wiki.ubuntu.com/VirtualApplianceSpec
|
|
|
|
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.
|
|
Add @handler decorator for appliance config
|
|
LP: #376740
|
|
Added test cases for this.
|
|
removal)
Also added unit tests for the above.
|
|
Fixes invalid $ssh token in Required-Start LSB init header.
|
|
|
|
|
|
|
|
a slash to every single URL)
|
|
Disable root by default.
Fail more gracefully if ssh keys could not be fetched.
|
|
Handle undefined config values gracefully.
|
|
|
|
|
|
is possibly not even needed there)
Fix a bit of fallout due to code shuffling between EC2Init, ec2-set-apt-sources, and ec2-set-defaults.
|
|
|
|
|
|
run_once_per_instance().
There are three cases:
You want to run the script every time. In that case, simply do not wrap it.
You want to rerun the script every time the AMI has been rebundled. Wrap it in run_once_per_ami.
You want to run the script only once, ever. Wrap it in run_once_ever.
If I'm missing a case, please tell me.
|
|
|
|
|
|
|
|
|
|
Install init-script using distutils.
Add -o to dh_installinit call to let it find the init script.
|
|
Replace use of os.system with a call to subprocess.Popen.
|
|
Moved everything else from ec2-set-sources-list to ec2-set-defaults.
Removed call to ec2-set-sources-list from init script.
Removed ec2-set-sources-list.
|
|
calls to ec2-get-info.
|
|
|
|
fully installed by dh_pycentral before the init script is run in postinst.
|
|
|
|
|
|
|
|
Add a new function: wait_or_bail which will wait for the meta-data service
or call the bailout command if the meta-data service never shows up.
Remove the wait_or_bail code from __init__.
|
|
It will wait for around half an hour for the ec2 meta data service to turn
up and eventually execute the configured bailout command (if any) if it never
shows up.
Call this as the first thing in the init script.
|
|
|
|
just do its thing.
|
|
|
|
Unify init script indentation style.
|
|
|
|
Update copyright years.
Add copyright and license information to setup.py.
Add myself as author of the relevant files.
|
|
* New ec2init python module introduced
* Lots and lots of stuff cleaned up and moved to ec2init python module.
* Started the move to Boto
|
|
* debian/init: Fix comments (LP: #373057)
* debian/control: Add update-motd as a depends.
* ec2-set-defaults.py: Wait for network to become available. (LP: #308530)
|
|
host kes in the init script rather than /etc/rc.local (LP: #370628)
* ec2-set-apt-sources.py:
- Move sources.list to /var/ec2 so it doesnt get removed after user
reboots.
* ec2-set-defaults.py:
- Move locale to /var/ec2/ so it doesnt get remove after user reboots.
* ec2-set-hostname.py
- Create an /etc/hostname as well.
|
|
* Run ec2-run-user-data script last. (LP: #373055)
* Minor comment tweaks. (LP:373057)
|