     @outputView
       .add 'Verifying credentials...'
       .add 'Bootstrap check initiated for credentials...'
+
+    if not credential or credential.provider isnt 'aws'
+      @cancelButton.setTitle 'Close'
+      return failed "
+        Required credentials are not provided yet, we are unable to test the
+        stack template. Stack template content is saved and can be tested once
+        required credentials are provided.
+      "
 
     credential.isBootstrapped (err, state) =>
 

    @setAsDefaultButton.hide()
    @inputTitle.unsetClass 'three-buttons'

    @checkAndBootstrapCredentials (err, credentials) =>
      return @saveButton.hideLoader()  if err

      @outputView
        .add 'Credentials are ready!'
        .add 'Saving current template content...'

      @saveTemplate (err, stackTemplate) =>

        if @outputView.handleError err
          @saveButton.hideLoader()
          return

        @outputView
          .add 'Template content saved.'
          .add 'Setting up custom variables...'

        meta = @variablesView._providedData
        data = { stackTemplate, meta }

        updateCustomVariable data, (err, _stackTemplate) =>

          if @outputView.handleError err
            @saveButton.hideLoader()
            return

          @outputView
            .add 'Custom variables are set.'
            .add 'Starting to process the template...'

          @processTemplate _stackTemplate

    @handleCheckTemplate { stackTemplate }, (err, machines) =>

      @saveButton.hideLoader()
      @emit 'Reload'

      if err
        @outputView.add "Parsing failed, please check your
