b9d73786ff
add 'datasource' file to instance dir
64 lines
1.8 KiB
Plaintext
64 lines
1.8 KiB
Plaintext
/var/lib/cloud has the following structure:
|
|
- scripts/
|
|
per-instance/
|
|
per-boot/
|
|
per-once/
|
|
|
|
files in these directories will be run by 'run-parts' once per
|
|
instance, once per boot, and once per *ever*.
|
|
|
|
- seed/
|
|
<datasource>/
|
|
sys-user-data
|
|
user-data
|
|
meta-data
|
|
|
|
The 'seed/' directory allows you to seed a specific datasource
|
|
For example, to seed the 'nocloud' datasource you would need to
|
|
populate
|
|
seed/nocloud/user-data
|
|
seed/nocloud/meta-data
|
|
|
|
- instance -> instances/i-abcde
|
|
This is a symlink to the current instance/<instance-id> directory
|
|
created/updated on boot
|
|
- instances/
|
|
i-abcdefgh/
|
|
scripts/ # all scripts in scripts are per-instance
|
|
sem/
|
|
config-puppet
|
|
config-ssh
|
|
set-hostname
|
|
cloud-config.txt
|
|
user-data.txt
|
|
user-data.txt.i
|
|
obj.pkl
|
|
handlers/
|
|
data/ # just a per-instance data location to be used
|
|
boot-finished
|
|
# this file indicates when "boot" is finished
|
|
# it is created by the 'final_message' cloud-config
|
|
datasource # a file containing the class and string of datasource
|
|
|
|
- sem/
|
|
scripts.once
|
|
These are the cloud-specific semaphores. The only thing that
|
|
would go here are files to mark that a "per-once" script
|
|
has run.
|
|
|
|
- handlers/
|
|
"persistent" handlers (not per-instance). Same as handlers
|
|
from user-data, just will be cross-instance id
|
|
|
|
- data/
|
|
this is a persistent data location. cloud-init won't really
|
|
use it, but something else (a handler or script could)
|
|
previous-datasource
|
|
previous-instance-id
|
|
previous-hostname
|
|
|
|
to clear out the current instance's data as if to force a "new run" on reboot
|
|
do:
|
|
( cd /var/lib/cloud/instance && sudo rm -Rf * )
|
|
|