| # lib/infra | 
 | # | 
 | # Functions to install infrastructure projects needed by other projects | 
 | # early in the cycle. We need this so we can do things like gate on | 
 | # requirements as a global list | 
 |  | 
 | # Dependencies: | 
 | # | 
 | # - ``functions`` file | 
 |  | 
 | # ``stack.sh`` calls the entry points in this order: | 
 | # | 
 | # - install_infra | 
 |  | 
 | # Save trace setting | 
 | XTRACE=$(set +o | grep xtrace) | 
 | set +o xtrace | 
 |  | 
 |  | 
 | # Defaults | 
 | # -------- | 
 | PBR_DIR=$DEST/pbr | 
 | REQUIREMENTS_DIR=$DEST/requirements | 
 |  | 
 | # Entry Points | 
 | # ------------ | 
 |  | 
 | # install_infra() - Collect source and prepare | 
 | function install_infra { | 
 |     # bring down global requirements | 
 |     git_clone $REQUIREMENTS_REPO $REQUIREMENTS_DIR $REQUIREMENTS_BRANCH | 
 |  | 
 |     # Install pbr | 
 |     git_clone $PBR_REPO $PBR_DIR $PBR_BRANCH | 
 |     setup_install $PBR_DIR | 
 | } | 
 |  | 
 | # Restore xtrace | 
 | $XTRACE | 
 |  | 
 | # Tell emacs to use shell-script-mode | 
 | ## Local variables: | 
 | ## mode: shell-script | 
 | ## End: |