docs: def deploy(self, config_file, region=None, profile_name=None):
          """
          Deploy the configuration and Lambda functions of a Greengrass group to
          the Greengrass core contained in the group.
  
          :param config_file: config file of the group to deploy
          :param region: the region from which to deploy the group.
          :param profile_name: the name of the `awscli` profile to use.
              [default: None]
          """
          config = GroupConfigFile(config_file=config_file)
          if config.is_fresh():
              raise ValueError("Config not yet tracking a group. Cannot deploy.")
  
          if region is None:
              region = self._region
  
          gg_client = _get_gg_session(region=region, profile_name=profile_name)
  
          dep_req = gg_client.create_deployment(
              GroupId=config['group']['id'],
              GroupVersionId=config['group']['version'],
              DeploymentType="NewDeployment"
          )
          print("Group deploy requested for deployment_id:{0}".format(
              dep_req['DeploymentId'],
          ))