updateTemplateSyncConfig method

Future<UpdateTemplateSyncConfigOutput> updateTemplateSyncConfig({
  1. required String branch,
  2. required String repositoryName,
  3. required RepositoryProvider repositoryProvider,
  4. required String templateName,
  5. required TemplateType templateType,
  6. String? subdirectory,
})

Update template sync configuration parameters, except for the templateName and templateType. Repository details (branch, name, and provider) should be of a linked repository. A linked repository is a repository that has been registered with Proton. For more information, see CreateRepository.

May throw AccessDeniedException. May throw ConflictException. May throw InternalServerException. May throw ResourceNotFoundException. May throw ThrottlingException. May throw ValidationException.

Parameter branch : The repository branch for your template.

Parameter repositoryName : The repository name (for example, myrepos/myrepo).

Parameter repositoryProvider : The repository provider.

Parameter templateName : The synced template name.

Parameter templateType : The synced template type.

Parameter subdirectory : A subdirectory path to your template bundle version. When included, limits the template bundle search to this repository directory.

Implementation

Future<UpdateTemplateSyncConfigOutput> updateTemplateSyncConfig({
  required String branch,
  required String repositoryName,
  required RepositoryProvider repositoryProvider,
  required String templateName,
  required TemplateType templateType,
  String? subdirectory,
}) async {
  final headers = <String, String>{
    'Content-Type': 'application/x-amz-json-1.0',
    'X-Amz-Target': 'AwsProton20200720.UpdateTemplateSyncConfig'
  };
  final jsonResponse = await _protocol.send(
    method: 'POST',
    requestUri: '/',
    exceptionFnMap: _exceptionFns,
    // TODO queryParams
    headers: headers,
    payload: {
      'branch': branch,
      'repositoryName': repositoryName,
      'repositoryProvider': repositoryProvider.value,
      'templateName': templateName,
      'templateType': templateType.value,
      if (subdirectory != null) 'subdirectory': subdirectory,
    },
  );

  return UpdateTemplateSyncConfigOutput.fromJson(jsonResponse.body);
}