summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2011-01-24merge in fixes to get to functioning pointScott Moser
2011-01-24cc_update_hostname: fix error handlingScott Moser
2011-01-24cloudinit/__init__: fix get_cpath()Scott Moser
2011-01-24cc_update_hostname: fix bad variable nameScott Moser
2011-01-24cloud-init.py: fix bad variable nameScott Moser
2011-01-24cloudinit/__init__.py: fixes to initfsScott Moser
2011-01-24cloud-init.py: add trailing carriage return to messageScott Moser
2011-01-24add CloudConfig.per-once definitionScott Moser
2011-01-24make the module list that cloud-config selects specified via cmdlineScott Moser
instead of hard-coding in cloud-init-cfg the module list that should be read, read it from the second command line argument. Basically, instead of reading 'cloud_config_modules', specify 'cloud_config' when cloud-init-cfg is run. change the upstart job to invoke cloud-init-cfg with: exec cloud-init-cfg all cloud_config rather than exec cloud-init-cfg all
2011-01-24fix cloud-run-user-script for directory change, make it invoke other scriptsScott Moser
Now, in addition to running instance specific scripts (in runcmd or user-data scripts), cloud-run-user-script will run other directories also. All under /var/lib/cloud, and in the following order: scripts/per-once [once ever] scripts/per-boot [every boot] scripts/per-instance [once per instance] instance/scripts [once per instance] At the moment, the marker is on the entire directory, so changes to that directory. Changes to the contents of the directory will not be noticed.
2011-01-21add function to cloud-init to run cloud-config style modulesScott Moser
add 'hostname' cloud-config option for setting hostname make rsyslog and resizefs run at cloud-init time
2011-01-21cc_locale: fix copy paste code error if args are givenScott Moser
2011-01-20add 'resize_rootfs' cloud-config option.Scott Moser
2011-01-20TODO: add need to rewrite cloud-init-querScott Moser
2011-01-20remove updates check, as its no longer really necessary (LP: #653220)Scott Moser
LP: #653220
2011-01-20update changelog (/var/log rework)Scott Moser
2011-01-20support configuration of what is the default log fileScott Moser
since user names and group names wont' be the same on all images, allow configuration of what ownership to put on 'default_log_file'.
2011-01-20add caching of parsed configs to util.get_base_cfgScott Moser
add caching of the parsed config, this will allow re-use in cloudinit so that we don't have to load the default config more than once in a program.
2011-01-20add TODO and ChangeLogScott Moser
2011-01-19add cloud-config-archive input type.Scott Moser
cloud-config-archive is a yaml formated document where the top level should contain an array. Each entry in the array can be one of - dict { 'filename' : 'value' , 'content' : 'value', 'type' : 'value' } filename and type may not be present - scalar(content) if filename and type are not present, they are attempted to be guessed. LP: #641504
2011-01-19do not use 'str' as a variable nameScott Moser
2011-01-19pull in the rework of /var/lib/cloud.Scott Moser
- /var/lib/cloud is redesigned, and its layout now described in doc/var-lib-cloud.txt. The big plus point of this was to get instance specific data into /var/lib/cloud/instances, so that data could easily be purged. A symlink /var/lib/cloud/instance -> /var/lib/cloud/instances/<current_id> is maintained. - Also, now run scripts in /var/lib/cloud/scripts/ per-once per-boot per-instance - bugs addressed: - LP: #704509
2011-01-19fix bug in get_cpathScott Moser
2011-01-19add 'data' entry in pathmap and move get_cpath to a static functionScott Moser
2011-01-19write the previous-hostname file to persistent cloud/dataScott Moser
This change just uses a different facility for coming up with the path. But, by design I'm chosing to put 'previous-hostname' in /var/lib/cloud/data/ rather than in /var/lib/cloud/instance/data/ The idea is that if the user: - started an instance - modified /etc/hostname - bundled instance (or create-image from it) - started new instance They would expect their modified /etc/hostname to persist. As such, the previous-hostname file should be cross-instance data. Bugs in this area include LP: #596993 and LP: #514492
2011-01-19make scripts sub-dirs for per-<item>Scott Moser
2011-01-19convert 'cachedir' to 'seeddir', move cloud_config, scripts to instanceScott Moser
- cloud_config and scripts now live in instance directory - cachedir is now more correctly named 'seeddir'
2011-01-19move cache to instance specific dirScott Moser
2011-01-19improve log message on failure of initfs. run on both start-local and startScott Moser
2011-01-19move boothooks and user-data into instance dirScott Moser
2011-01-19cloud-init.py: log exception on failure to set hostnameScott Moser
2011-01-19initial /var/lib rework still lots to do. includes a fix for LP: #704509Scott Moser
LP: #704509
2011-01-19add doc about redesigned /var/lib/cloudScott Moser
2011-01-19support $MIRROR and $RELEASE in apt-source cloud-config lines (LP: #693292)Scott Moser
sources can use $MIRROR and $RELEASE and they will be replaced with the local mirror for this cloud, and the running release this: - source: deb $MIRROR $RELEASE multiverse would possibly be turned into: - source: deb http://us-east-1.ec2.archive.ubuntu.com/ubuntu natty multiverse LP: #693292
2011-01-19move user scripts ('#!' and runcmd) to be per-instance (LP: #675711)Scott Moser
Previously, if you ran an instance with either runcmd data or user-data scripts, it would run again after rebundle or create-image. This puts the files created by runcmd or user-data scripts into instance-id specific paths, and then runs them by that instance-id specific path. LP: #675711
2011-01-19add 'cloud-init-query' tool, to query fields from cloud dataScott Moser
At this point, this is appears much like a cripped 'ec2metdata' tool. However, it does provide a tool interface to some fields independent of their DataSource.
2011-01-19make 'do not login as root' message more clear.Scott Moser
When the user attempts login as root, they see a message suggesting a different user. This changes that message from: Please login as the ubuntu user rather than root user. to Please login as the user "ubuntu" rather than the user "root". LP: #672417
2011-01-19move writing of ssh key fingerprints to a separate toolScott Moser
This will allow this code to be called more easily elsewhere. I'm considering having the "all the way up" message contain fingerprints so that they're more or less guaranteed to get to the console where the user could see them.
2011-01-19remove write-mime-multipart from setup.pyScott Moser
2011-01-19add handling of rsyslog in cloud-configScott Moser
This adds the following cloud-config keys: - 'rsyslog_dir' default: /etc/rsyslog.d - 'rsyslog_filename' default: 20-cloud-config.conf - 'rsyslog' (list) default: empty
2011-01-19make timestamps get recorded to /var/log/cloud-init.log when no syslogScott Moser
2011-01-19remove debug print statementScott Moser
2011-01-18remove 'get_locale' from DataSourceEc2.Scott Moser
Previously the 'get_locale()' method of DataSourceEc2 would select a default locale based on the availability zone that the instance was running on. I generally don't like that as a.) there are loads of other locales than en_US and en_GB (that were being used) b.) either one is almost certainly not really the users preferred locale. Just because I launch an instance in eu-west-1 doesn't mean I perfer en_GB.
2011-01-18move setting of default locale out of cloud-init, into cloud-configScott Moser
Now, instead of setting a default value in cloud-init based only on the DataSource, this supports using 'locale' in the cloud-config.
2011-01-18revert previous commit that special cased 'ssh_import_id' on cmdlineScott Moser
Instead of: root=LABEL=uec-rootfs ro console=hvc0 ssh_import_id=smoser We now have more generic: root=LABEL=uec-rootfs ro console=hvc0 cc:ssh_import_id: smoser
2011-01-18support reading cloud_config from kernel command lineScott Moser
This allows the user to specify portions of the cloud-config system config on the kernel command line. values found on the kernel command line have preference over those in system config. The format is: cc:[ ]<yaml content here> [end_cc] Where: 'cc:' indicates the beginning of cloud config syntax [ ] optionally followed by whitespace (which will be trimmed) <yaml content here> : this content is passed untouched to yaml end_cc: this is optional. If no 'end_cc' tag is found, all data from the begin tag to the end of the command line is consumed Multiple occurences of the cc:<data>end_cc will be joined with carriage return before passing to yaml. Any litteral '\n' (backslash followed by lower case 'n') are converted to a carriage return. The following are examples: cc: ssh_import_id: [smoser, kirkland] cc: ssh_import_id: [smoser, bob]\\nruncmd: [ [ ls, -l ], echo hi ] end_cc cc:ssh_import_id: [smoser] end_cc cc:runcmd: [ [ ls, -l ] ] end_cc
2011-01-18remove 'biultin' config, separate cloud.cfgScott Moser
This set of changes makes '/etc/cloud/cloud.cfg' support "#include" and "#opt_include". The idea is to then provide a base configuration and allow distro or local changes that would override that.
2011-01-14add support for specifying ssh-import-id on the kernel command lineScott Moser
2011-01-12ssh-import-lp-id was renamed to ssh-import-idScott Moser
2011-01-11move write-mime-multipart into cloud-utils packageScott Moser