(CommandList
  children: [
    (C {(set)} {(-o)} {(errexit)})
    (C {(set)} {(-o)} {(nounset)})
    (C {(set)} {(-o)} {(pipefail)})
    (C {(hostnamectl)} {(set-hostname)} {(${ VSub_Name NODE_NAME)})
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:if_to_edit) op:Equal rhs:{(DQ )} spids:[77])]
      spids: [77]
    )
    (If
      arms: [
        (if_arm
          cond: [
            (Sentence
              child: 
                (DBracket
                  expr: 
                    (BoolBinary
                      op_id: BoolBinary_EqualTilde
                      left: 
                        {
                          (DQ 
                            (CommandSubPart
                              command_list: 
                                (CommandList
                                  children: [(C {(grep)} {(SQ <VERSION_ID>)} {(/etc/os-release)})]
                                )
                              left_token: <Left_CommandSub '$('>
                              spids: [87 95]
                            )
                          )
                        }
                      right: {(Lit_Other '^') (Lit_VarLike 'VERSION_ID=') (23)}
                    )
                )
              terminator: <Op_Semi ';'>
            )
          ]
          action: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:NETWORK_CONF_PATH)
                  op: Equal
                  rhs: {(/etc/sysconfig/network-scripts/)}
                  spids: [114]
                )
              ]
              spids: [114]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:if_to_edit)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (Pipeline
                                children: [
                                  (C {(find)} 
                                    {(${ VSub_Name NETWORK_CONF_PATH) (ifcfg-) (Lit_Other '*')}
                                  )
                                  (C {(xargs)} {(grep)} {(-l)} {(VAGRANT-BEGIN)})
                                ]
                                negated: False
                              )
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [119 139]
                      )
                    }
                  spids: [118]
                )
              ]
              spids: [118]
            )
            (Sentence
              child: 
                (ForEach
                  iter_name: if_conf
                  iter_words: [{(${ VSub_Name if_to_edit)}]
                  do_arg_iter: False
                  body: 
                    (DoGroup
                      children: [
                        (AndOr
                          children: [
                            (C {(grep)} {(-q)} {(Lit_Other '^') (Lit_VarLike 'NM_CONTROLLED=')} 
                              {(${ VSub_Name if_conf)}
                            )
                            (SimpleCommand
                              words: [{(echo)} {(SQ <'NM_CONTROLLED=no'>)}]
                              redirects: [
                                (Redir
                                  op_id: Redir_DGreat
                                  fd: 16777215
                                  arg_word: {(${ VSub_Name if_conf)}
                                  spids: [175]
                                )
                              ]
                            )
                          ]
                          op_id: Op_DPipe
                        )
                        (C {(sed)} {(-i)} {(SQ <'s/#^NM_CONTROLLED=.*/NM_CONTROLLED=no/'>)} 
                          {(${ VSub_Name if_conf)}
                        )
                      ]
                      spids: [153 195]
                    )
                  spids: [147 151]
                )
              terminator: <Op_Semi ';'>
            )
            (C {(systemctl)} {(restart)} {(network)})
          ]
          spids: [16777215 107]
        )
      ]
      spids: [16777215 205]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:NETWORK_IF_NAME)
          op: Equal
          rhs: 
            {
              (CommandSubPart
                command_list: 
                  (CommandList
                    children: [
                      (Pipeline
                        children: [
                          (C {(echo)} {(${ VSub_Name if_to_edit)})
                          (C {(awk)} {(-F-)} {(SQ <'{ print $3 }'>)})
                        ]
                        negated: False
                      )
                    ]
                  )
                left_token: <Left_Backtick '`'>
                spids: [218 234]
              )
            }
          spids: [217]
        )
      ]
      spids: [217]
    )
    (If
      arms: [
        (if_arm
          cond: [
            (Sentence
              child: 
                (DBracket
                  expr: (BoolUnary op_id:BoolUnary_z child:{(DQ ($ VSub_Name '$NETWORK_IF_NAME'))})
                )
              terminator: <Op_Semi ';'>
            )
          ]
          action: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:NETWORK_IF_NAME)
                  op: Equal
                  rhs: {(${ VSub_Name DEFAULT_NETWORK_IF_NAME)}
                  spids: [252]
                )
              ]
              spids: [252]
            )
          ]
          spids: [16777215 249]
        )
      ]
      spids: [16777215 257]
    )
    (If
      arms: [
        (if_arm
          cond: [
            (Sentence
              child: 
                (C {(Lit_Other '[')} {(KW_Bang '!')} 
                  {
                    (DQ 
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (Pipeline
                                children: [
                                  (C {(cat)} {(/etc/hosts)})
                                  (C {(grep)} {($ VSub_Name '$MASTER_NAME')})
                                ]
                                negated: False
                              )
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [270 280]
                      )
                    )
                  } {(Lit_Other ']')}
                )
              terminator: <Op_Semi ';'>
            )
          ]
          action: [
            (C {(echo)} {(DQ ('Adding ') ($ VSub_Name '$MASTER_NAME') (' to hosts file'))})
            (SimpleCommand
              words: [{(echo)} {(DQ ($ VSub_Name '$MASTER_IP') (' ') ($ VSub_Name '$MASTER_NAME'))}]
              redirects: [(Redir op_id:Redir_DGreat fd:16777215 arg_word:{(/etc/hosts)} spids:[306])]
            )
          ]
          spids: [16777215 286]
        )
      ]
      spids: [16777215 310]
    )
    (SimpleCommand
      words: [{(echo)} {(DQ ($ VSub_Name '$NODE_IP') (' ') ($ VSub_Name '$NODE_NAME'))}]
      redirects: [(Redir op_id:Redir_DGreat fd:16777215 arg_word:{(/etc/hosts)} spids:[320])]
    )
    (ForExpr
      init: (BinaryAssign op_id:Arith_Equal left:(LhsName name:i) right:(ArithWord w:{(Lit_Digits 0)}))
      cond: 
        (ArithBinary
          op_id: Arith_Less
          left: (ArithVarRef name:i)
          right: 
            (ArithWord
              w: 
                {
                  (BracedVarSub
                    token: <VSub_Name NODE_NAMES>
                    prefix_op: VSub_Pound
                    bracket_op: (WholeArray op_id:Lit_At)
                    spids: [339 345]
                  )
                }
            )
        )
      update: (UnaryAssign op_id:Node_PostDPlus child:(LhsName name:i))
      body: 
        (DoGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:node)
                  op: Equal
                  rhs: 
                    {
                      (BracedVarSub
                        token: <VSub_Name NODE_NAMES>
                        bracket_op: (ArrayIndex expr:(ArithWord w:{($ VSub_Name '$i')}))
                        spids: [358 363]
                      )
                    }
                  spids: [357]
                )
              ]
              spids: [357]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:ip)
                  op: Equal
                  rhs: 
                    {
                      (BracedVarSub
                        token: <VSub_Name NODE_IPS>
                        bracket_op: (ArrayIndex expr:(ArithWord w:{($ VSub_Name '$i')}))
                        spids: [367 372]
                      )
                    }
                  spids: [366]
                )
              ]
              spids: [366]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(Lit_Other '[')} {(KW_Bang '!')} 
                          {
                            (DQ 
                              (CommandSubPart
                                command_list: 
                                  (CommandList
                                    children: [
                                      (Pipeline
                                        children: [
                                          (C {(cat)} {(/etc/hosts)})
                                          (C {(grep)} {($ VSub_Name '$node')})
                                        ]
                                        negated: False
                                      )
                                    ]
                                  )
                                left_token: <Left_CommandSub '$('>
                                spids: [382 392]
                              )
                            )
                          } {(Lit_Other ']')}
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (C {(echo)} {(DQ ('Adding ') ($ VSub_Name '$node') (' to hosts file'))})
                    (SimpleCommand
                      words: [{(echo)} {(DQ ($ VSub_Name '$ip') (' ') ($ VSub_Name '$node'))}]
                      redirects: [
                        (Redir
                          op_id: Redir_DGreat
                          fd: 16777215
                          arg_word: {(/etc/hosts)}
                          spids: [418]
                        )
                      ]
                    )
                  ]
                  spids: [16777215 398]
                )
              ]
              spids: [16777215 423]
            )
          ]
          spids: [354 425]
        )
    )
    (C {(enable-accounting)})
    (C {(prepare-package-manager)})
    (If
      arms: [
        (if_arm
          cond: [
            (Sentence
              child: 
                (C {(Lit_Other '[')} {(DQ (${ VSub_Name NETWORK_PROVIDER))} 
                  {(KW_Bang '!') (Lit_Other '=')} {(DQ (kubenet))} {(Lit_Other ']')}
                )
              terminator: <Op_Semi ';'>
            )
          ]
          action: [(C {(provision-network-node)})]
          spids: [16777215 456]
        )
      ]
      spids: [16777215 461]
    )
    (C {(write-salt-config)} {(kubernetes-pool)})
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:known_kubeconfig_file)
          op: Equal
          rhs: {(DQ (/srv/salt-overlay/salt/kubelet/kubeconfig))}
          spids: [472]
        )
      ]
      spids: [472]
    )
    (If
      arms: [
        (if_arm
          cond: [
            (Sentence
              child: 
                (DBracket
                  expr: 
                    (LogicalNot
                      child: 
                        (BoolUnary
                          op_id: BoolUnary_f
                          child: {(DQ (${ VSub_Name known_kubeconfig_file))}
                        )
                    )
                )
              terminator: <Op_Semi ';'>
            )
          ]
          action: [(C {(create-salt-kubelet-auth)}) (C {(create-salt-kubeproxy-auth)})]
          spids: [16777215 494]
        )
      ]
      else_action: [(C {(systemctl)} {(stop)} {(kubelet)})]
      spids: [502 515]
    )
    (C {(install-salt)})
    (C {(add-volume-support)})
    (C {(run-salt)})
    (C {(dnf)} {(install)} {(-y)} {(socat)} {(ethtool)})
    (C {(dnf)} {(update)} {(-y)} {(docker)})
  ]
)