This section describes important files and directories you will find on a machine set up by Autostrap. While the machine is still bootstrapping, some of them will not be present, yet. If anything is missing, check /var/log/initialize_instance.log first: only if it contains the line

finished /opt/scripts/autostrap/initialize_instance

bootstrapping is finished. If bootstrapping is finished but you are missing something nonetheless, the problem may among other things be a bad or missing deploy key, or incorrect repository URLs. Check the rest of /var/log/initialize_instance.log (and the other logfiles mentioned below) to investigate.

Repository Checkouts

You will find checkouts of the Git repositories that make up Autostrap in the following locations:

Autostrap repositories

/opt/scripts/autostrap/

This directory contains a checkout of the bootstrap-scripts repository. This directory contains the most of the code running during bootstrapping. An alternative URL and revision (e.g. for testing a topic branch) can be specified through the scripts_repo and scripts_branch parameters.

/opt/config/additional/

This directory contains working copies of the repositories specified through the additional_config parameter (if any).

/opt/config/global/

This directory contains a checkout of the global-config repository. This repository's URL and revision are specified through the global_config_repo and global_config_branch parameters. By default Autostrap's sample global-config is used.

/opt/config/project/

This directory contains a checkout of the project-config repository you specified through the config_repo and config_branch parameters.

Puppet modules

All puppet modules included in Autostrap's puppet-repodeploy configuration are cloned to /opt/puppet-modules. We suggest you follow this convention for your own modules as well, since this directory is in Puppet's module search path on Autostrap configured machines.

Bootstrapping scripts

The directory /opt/scripts/stages holds symlinks to all bootstrapping scripts, both from bootstrap-scripts and project-config. It is the authoritative source for bootstrapping scripts on this machine, i.e. they are run from this directory.

Log Files

/var/log/autostrap/stage0.log

If you are using autostrap.standalone to start the bootstrapping process, the first bootstrapping stage's output will go to this file. Once it launches initialize_instance, logging will switch to the second stage log file, /var/log/initialize_instance.log (see below).

/var/log/script_user_data.log

If you are using the AS::autostrap Heat resource to start the bootstrapping process, the first bootstrapping stage's output will go to this file. Once the user-data script launches initialize_instance, logging will switch to the second stage log file /var/log/initialize_instance.log (see below).

/var/log/initialize_instance.log

This file contains all logging output from the second bootstrapping stage. This is your most useful tool in investigating what went wrong if a machine fails to bootstrap.