code: def profile_create(self):
          
          if self.args.profile_name in self.profiles:
              self.handle_error('Profile "{}" already exists.'.format(self.args.profile_name))
  
          # load the install.json file defined as a arg (default: install.json)
          ij = self.load_install_json(self.args.ij)
  
          print(
              'Building Profile: {}{}{}'.format(c.Style.BRIGHT, c.Fore.CYAN, self.args.profile_name)
          )
          profile = OrderedDict()
          profile['args'] = {}
          profile['args']['app'] = {}
          profile['args']['app']['optional'] = self.profile_settings_args(ij, False)
          profile['args']['app']['required'] = self.profile_settings_args(ij, True)
          profile['args']['default'] = self.profile_setting_default_args(ij)
          profile['autoclear'] = True
          profile['clear'] = []
          profile['description'] = ''
          profile['data_files'] = []
          profile['exit_codes'] = [0]
          profile['groups'] = [os.environ.get('TCEX_GROUP', 'qa-build')]
          profile['install_json'] = self.args.ij
          profile['profile_name'] = self.args.profile_name
          profile['quiet'] = False
  
          if ij.get('runtimeLevel') == 'Playbook':
              validations = self.profile_settings_validations
              profile['validations'] = validations.get('rules')
              profile['args']['default']['tc_playbook_out_variables'] = '{}'.format(
                  ','.join(validations.get('outputs'))
              )
          return profile
docs: Create a profile.