(command.CommandList children: [ (C {(Id.KW_Set set)} {(-e)}) (C {(export)} {(Id.Lit_VarLike 'BOOTSTRAP_METHOD=') (vagrant)}) (C {(echo)} {(DQ (' ____ ____ ____ ____ '))}) (C {(echo)} {(DQ ('| __ ) / ___| _ ') (Id.Lit_Other '\\') (' / ___|'))}) (C {(echo)} {(DQ ('| _ ') (Id.Lit_Other '\\') ('| | | |_) | | '))}) (C {(echo)} {(DQ ('| |_) | |___| __/| |___ '))}) (C {(echo)} {(DQ ('|____/ ') (Id.Lit_Other '\\') ('____|_| ') (Id.Lit_Other '\\') ('____|'))}) (C {(echo)}) (C {(echo)} {(DQ ('BCPC Vagrant BootstrapV2 0.2'))}) (C {(echo)} {(DQ (--------------------------------------------))}) (C {(echo)} {(DQ ('Bootstrapping local Vagrant environment...'))}) (command.WhileUntil keyword: (Token id:Id.KW_While val:while span_id:79) cond: [ (command.Sentence child: (C {(getopts)} {(DQ (v))} {(opt)}) terminator: (Token id:Id.Op_Semi val:';' span_id:88) ) ] body: (command.DoGroup children: [ (command.Case to_match: {($ Id.VSub_DollarName '$opt')} arms: [ (case_arm pat_list: [{(v)}] action: [(C {(Id.KW_Set set)} {(-x)})] spids: [104 105 113 -1] ) ] ) ] ) ) (C {(source)} {(../shared/shared_functions.sh)}) (C {(export)} {(Id.Lit_VarLike 'REPO_ROOT=') ($ Id.VSub_DollarName '$REPO_ROOT')}) (C {(load_configs)}) (C {(echo)} {(DQ ('Performing preflight environment validation...'))}) (C {(source)} {($ Id.VSub_DollarName '$REPO_ROOT') (/bootstrap/shared/shared_validate_env.sh)}) (C {(echo)} {(DQ ('Checking VirtualBox and Vagrant...'))}) (C {(source)} {($ Id.VSub_DollarName '$REPO_ROOT') (/bootstrap/vagrant_scripts/vagrant_test.sh)}) (C {(echo)} {(DQ ('Downloading necessary files to local cache...'))}) (C {(source)} {($ Id.VSub_DollarName '$REPO_ROOT') (/bootstrap/shared/shared_prereqs.sh)}) (C {(echo)} {(DQ ('Shutting down and unregistering VMs from VirtualBox...'))}) (C {($ Id.VSub_DollarName '$REPO_ROOT') (/bootstrap/vagrant_scripts/vagrant_clean.sh)}) (C {(echo)} {(DQ ('Starting local Vagrant cluster...'))}) (C {($ Id.VSub_DollarName '$REPO_ROOT') (/bootstrap/vagrant_scripts/vagrant_create.sh)}) (C {(echo)} {(DQ ('Installing and configuring Chef on all nodes...'))}) (C {($ Id.VSub_DollarName '$REPO_ROOT') (/bootstrap/shared/shared_configure_chef.sh)}) (C {($ Id.VSub_DollarName '$REPO_ROOT') (/bootstrap/vagrant_scripts/vagrant_print_useful_info.sh)}) (C {(echo)} {(DQ ('Finished in ') ($ Id.VSub_DollarName '$SECONDS') (' seconds'))}) ] )