/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include
#include
#include
#include
#include
#include
namespace Aws
{
namespace CodeBuild
{
/**
* CodeBuild CodeBuild is a fully managed build service in
* the cloud. CodeBuild compiles your source code, runs unit tests, and produces
* artifacts that are ready to deploy. CodeBuild eliminates the need to provision,
* manage, and scale your own build servers. It provides prepackaged build
* environments for the most popular programming languages and build tools, such as
* Apache Maven, Gradle, and more. You can also fully customize build environments
* in CodeBuild to use your own build tools. CodeBuild scales automatically to meet
* peak build requests. You pay only for the build time you consume. For more
* information about CodeBuild, see the CodeBuild
* User Guide.
*/
class AWS_CODEBUILD_API CodeBuildClient : public Aws::Client::AWSJsonClient, public Aws::Client::ClientWithAsyncTemplateMethods
{
public:
typedef Aws::Client::AWSJsonClient BASECLASS;
static const char* SERVICE_NAME;
static const char* ALLOCATION_TAG;
typedef CodeBuildClientConfiguration ClientConfigurationType;
typedef CodeBuildEndpointProvider EndpointProviderType;
/**
* Initializes client to use DefaultCredentialProviderChain, with default http client factory, and optional client config. If client config
* is not specified, it will be initialized to default values.
*/
CodeBuildClient(const Aws::CodeBuild::CodeBuildClientConfiguration& clientConfiguration = Aws::CodeBuild::CodeBuildClientConfiguration(),
std::shared_ptr endpointProvider = Aws::MakeShared(ALLOCATION_TAG));
/**
* Initializes client to use SimpleAWSCredentialsProvider, with default http client factory, and optional client config. If client config
* is not specified, it will be initialized to default values.
*/
CodeBuildClient(const Aws::Auth::AWSCredentials& credentials,
std::shared_ptr endpointProvider = Aws::MakeShared(ALLOCATION_TAG),
const Aws::CodeBuild::CodeBuildClientConfiguration& clientConfiguration = Aws::CodeBuild::CodeBuildClientConfiguration());
/**
* Initializes client to use specified credentials provider with specified client config. If http client factory is not supplied,
* the default http client factory will be used
*/
CodeBuildClient(const std::shared_ptr& credentialsProvider,
std::shared_ptr endpointProvider = Aws::MakeShared(ALLOCATION_TAG),
const Aws::CodeBuild::CodeBuildClientConfiguration& clientConfiguration = Aws::CodeBuild::CodeBuildClientConfiguration());
/* Legacy constructors due deprecation */
/**
* Initializes client to use DefaultCredentialProviderChain, with default http client factory, and optional client config. If client config
* is not specified, it will be initialized to default values.
*/
CodeBuildClient(const Aws::Client::ClientConfiguration& clientConfiguration);
/**
* Initializes client to use SimpleAWSCredentialsProvider, with default http client factory, and optional client config. If client config
* is not specified, it will be initialized to default values.
*/
CodeBuildClient(const Aws::Auth::AWSCredentials& credentials,
const Aws::Client::ClientConfiguration& clientConfiguration);
/**
* Initializes client to use specified credentials provider with specified client config. If http client factory is not supplied,
* the default http client factory will be used
*/
CodeBuildClient(const std::shared_ptr& credentialsProvider,
const Aws::Client::ClientConfiguration& clientConfiguration);
/* End of legacy constructors due deprecation */
virtual ~CodeBuildClient();
/**
* Deletes one or more builds.
See Also:
AWS
* API Reference
*/
virtual Model::BatchDeleteBuildsOutcome BatchDeleteBuilds(const Model::BatchDeleteBuildsRequest& request) const;
/**
* A Callable wrapper for BatchDeleteBuilds that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::BatchDeleteBuildsOutcomeCallable BatchDeleteBuildsCallable(const BatchDeleteBuildsRequestT& request) const
{
return SubmitCallable(&CodeBuildClient::BatchDeleteBuilds, request);
}
/**
* An Async wrapper for BatchDeleteBuilds that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void BatchDeleteBuildsAsync(const BatchDeleteBuildsRequestT& request, const BatchDeleteBuildsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CodeBuildClient::BatchDeleteBuilds, request, handler, context);
}
/**
* Retrieves information about one or more batch builds.
See
* Also:
AWS
* API Reference
*/
virtual Model::BatchGetBuildBatchesOutcome BatchGetBuildBatches(const Model::BatchGetBuildBatchesRequest& request) const;
/**
* A Callable wrapper for BatchGetBuildBatches that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::BatchGetBuildBatchesOutcomeCallable BatchGetBuildBatchesCallable(const BatchGetBuildBatchesRequestT& request) const
{
return SubmitCallable(&CodeBuildClient::BatchGetBuildBatches, request);
}
/**
* An Async wrapper for BatchGetBuildBatches that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void BatchGetBuildBatchesAsync(const BatchGetBuildBatchesRequestT& request, const BatchGetBuildBatchesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CodeBuildClient::BatchGetBuildBatches, request, handler, context);
}
/**
* Gets information about one or more builds.
See Also:
AWS
* API Reference
*/
virtual Model::BatchGetBuildsOutcome BatchGetBuilds(const Model::BatchGetBuildsRequest& request) const;
/**
* A Callable wrapper for BatchGetBuilds that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::BatchGetBuildsOutcomeCallable BatchGetBuildsCallable(const BatchGetBuildsRequestT& request) const
{
return SubmitCallable(&CodeBuildClient::BatchGetBuilds, request);
}
/**
* An Async wrapper for BatchGetBuilds that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void BatchGetBuildsAsync(const BatchGetBuildsRequestT& request, const BatchGetBuildsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CodeBuildClient::BatchGetBuilds, request, handler, context);
}
/**
* Gets information about one or more build projects.
See Also:
* AWS
* API Reference
*/
virtual Model::BatchGetProjectsOutcome BatchGetProjects(const Model::BatchGetProjectsRequest& request) const;
/**
* A Callable wrapper for BatchGetProjects that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::BatchGetProjectsOutcomeCallable BatchGetProjectsCallable(const BatchGetProjectsRequestT& request) const
{
return SubmitCallable(&CodeBuildClient::BatchGetProjects, request);
}
/**
* An Async wrapper for BatchGetProjects that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void BatchGetProjectsAsync(const BatchGetProjectsRequestT& request, const BatchGetProjectsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CodeBuildClient::BatchGetProjects, request, handler, context);
}
/**
* Returns an array of report groups.
See Also:
AWS
* API Reference
*/
virtual Model::BatchGetReportGroupsOutcome BatchGetReportGroups(const Model::BatchGetReportGroupsRequest& request) const;
/**
* A Callable wrapper for BatchGetReportGroups that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::BatchGetReportGroupsOutcomeCallable BatchGetReportGroupsCallable(const BatchGetReportGroupsRequestT& request) const
{
return SubmitCallable(&CodeBuildClient::BatchGetReportGroups, request);
}
/**
* An Async wrapper for BatchGetReportGroups that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void BatchGetReportGroupsAsync(const BatchGetReportGroupsRequestT& request, const BatchGetReportGroupsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CodeBuildClient::BatchGetReportGroups, request, handler, context);
}
/**
* Returns an array of reports.
See Also:
AWS
* API Reference
*/
virtual Model::BatchGetReportsOutcome BatchGetReports(const Model::BatchGetReportsRequest& request) const;
/**
* A Callable wrapper for BatchGetReports that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::BatchGetReportsOutcomeCallable BatchGetReportsCallable(const BatchGetReportsRequestT& request) const
{
return SubmitCallable(&CodeBuildClient::BatchGetReports, request);
}
/**
* An Async wrapper for BatchGetReports that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void BatchGetReportsAsync(const BatchGetReportsRequestT& request, const BatchGetReportsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CodeBuildClient::BatchGetReports, request, handler, context);
}
/**
* Creates a build project.
See Also:
AWS
* API Reference
*/
virtual Model::CreateProjectOutcome CreateProject(const Model::CreateProjectRequest& request) const;
/**
* A Callable wrapper for CreateProject that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::CreateProjectOutcomeCallable CreateProjectCallable(const CreateProjectRequestT& request) const
{
return SubmitCallable(&CodeBuildClient::CreateProject, request);
}
/**
* An Async wrapper for CreateProject that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void CreateProjectAsync(const CreateProjectRequestT& request, const CreateProjectResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CodeBuildClient::CreateProject, request, handler, context);
}
/**
* Creates a report group. A report group contains a collection of reports.
*
See Also:
AWS
* API Reference
*/
virtual Model::CreateReportGroupOutcome CreateReportGroup(const Model::CreateReportGroupRequest& request) const;
/**
* A Callable wrapper for CreateReportGroup that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::CreateReportGroupOutcomeCallable CreateReportGroupCallable(const CreateReportGroupRequestT& request) const
{
return SubmitCallable(&CodeBuildClient::CreateReportGroup, request);
}
/**
* An Async wrapper for CreateReportGroup that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void CreateReportGroupAsync(const CreateReportGroupRequestT& request, const CreateReportGroupResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CodeBuildClient::CreateReportGroup, request, handler, context);
}
/**
* For an existing CodeBuild build project that has its source code stored in a
* GitHub or Bitbucket repository, enables CodeBuild to start rebuilding the source
* code every time a code change is pushed to the repository.
If
* you enable webhooks for an CodeBuild project, and the project is used as a build
* step in CodePipeline, then two identical builds are created for each commit. One
* build is triggered through webhooks, and one through CodePipeline. Because
* billing is on a per-build basis, you are billed for both builds. Therefore, if
* you are using CodePipeline, we recommend that you disable webhooks in CodeBuild.
* In the CodeBuild console, clear the Webhook box. For more information, see step
* 5 in Change
* a Build Project's Settings.
See Also:
AWS
* API Reference
*/
virtual Model::CreateWebhookOutcome CreateWebhook(const Model::CreateWebhookRequest& request) const;
/**
* A Callable wrapper for CreateWebhook that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::CreateWebhookOutcomeCallable CreateWebhookCallable(const CreateWebhookRequestT& request) const
{
return SubmitCallable(&CodeBuildClient::CreateWebhook, request);
}
/**
* An Async wrapper for CreateWebhook that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void CreateWebhookAsync(const CreateWebhookRequestT& request, const CreateWebhookResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CodeBuildClient::CreateWebhook, request, handler, context);
}
/**
* Deletes a batch build.
See Also:
AWS
* API Reference
*/
virtual Model::DeleteBuildBatchOutcome DeleteBuildBatch(const Model::DeleteBuildBatchRequest& request) const;
/**
* A Callable wrapper for DeleteBuildBatch that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DeleteBuildBatchOutcomeCallable DeleteBuildBatchCallable(const DeleteBuildBatchRequestT& request) const
{
return SubmitCallable(&CodeBuildClient::DeleteBuildBatch, request);
}
/**
* An Async wrapper for DeleteBuildBatch that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DeleteBuildBatchAsync(const DeleteBuildBatchRequestT& request, const DeleteBuildBatchResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CodeBuildClient::DeleteBuildBatch, request, handler, context);
}
/**
* Deletes a build project. When you delete a project, its builds are not
* deleted.
See Also:
AWS
* API Reference
*/
virtual Model::DeleteProjectOutcome DeleteProject(const Model::DeleteProjectRequest& request) const;
/**
* A Callable wrapper for DeleteProject that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DeleteProjectOutcomeCallable DeleteProjectCallable(const DeleteProjectRequestT& request) const
{
return SubmitCallable(&CodeBuildClient::DeleteProject, request);
}
/**
* An Async wrapper for DeleteProject that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DeleteProjectAsync(const DeleteProjectRequestT& request, const DeleteProjectResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CodeBuildClient::DeleteProject, request, handler, context);
}
/**
* Deletes a report.
See Also:
AWS
* API Reference
*/
virtual Model::DeleteReportOutcome DeleteReport(const Model::DeleteReportRequest& request) const;
/**
* A Callable wrapper for DeleteReport that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DeleteReportOutcomeCallable DeleteReportCallable(const DeleteReportRequestT& request) const
{
return SubmitCallable(&CodeBuildClient::DeleteReport, request);
}
/**
* An Async wrapper for DeleteReport that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DeleteReportAsync(const DeleteReportRequestT& request, const DeleteReportResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CodeBuildClient::DeleteReport, request, handler, context);
}
/**
* Deletes a report group. Before you delete a report group, you must delete its
* reports.
See Also:
AWS
* API Reference
*/
virtual Model::DeleteReportGroupOutcome DeleteReportGroup(const Model::DeleteReportGroupRequest& request) const;
/**
* A Callable wrapper for DeleteReportGroup that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DeleteReportGroupOutcomeCallable DeleteReportGroupCallable(const DeleteReportGroupRequestT& request) const
{
return SubmitCallable(&CodeBuildClient::DeleteReportGroup, request);
}
/**
* An Async wrapper for DeleteReportGroup that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DeleteReportGroupAsync(const DeleteReportGroupRequestT& request, const DeleteReportGroupResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CodeBuildClient::DeleteReportGroup, request, handler, context);
}
/**
* Deletes a resource policy that is identified by its resource ARN.
*
See Also:
AWS
* API Reference
*/
virtual Model::DeleteResourcePolicyOutcome DeleteResourcePolicy(const Model::DeleteResourcePolicyRequest& request) const;
/**
* A Callable wrapper for DeleteResourcePolicy that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DeleteResourcePolicyOutcomeCallable DeleteResourcePolicyCallable(const DeleteResourcePolicyRequestT& request) const
{
return SubmitCallable(&CodeBuildClient::DeleteResourcePolicy, request);
}
/**
* An Async wrapper for DeleteResourcePolicy that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DeleteResourcePolicyAsync(const DeleteResourcePolicyRequestT& request, const DeleteResourcePolicyResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CodeBuildClient::DeleteResourcePolicy, request, handler, context);
}
/**
* Deletes a set of GitHub, GitHub Enterprise, or Bitbucket source credentials.
*
See Also:
AWS
* API Reference
*/
virtual Model::DeleteSourceCredentialsOutcome DeleteSourceCredentials(const Model::DeleteSourceCredentialsRequest& request) const;
/**
* A Callable wrapper for DeleteSourceCredentials that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DeleteSourceCredentialsOutcomeCallable DeleteSourceCredentialsCallable(const DeleteSourceCredentialsRequestT& request) const
{
return SubmitCallable(&CodeBuildClient::DeleteSourceCredentials, request);
}
/**
* An Async wrapper for DeleteSourceCredentials that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DeleteSourceCredentialsAsync(const DeleteSourceCredentialsRequestT& request, const DeleteSourceCredentialsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CodeBuildClient::DeleteSourceCredentials, request, handler, context);
}
/**
* For an existing CodeBuild build project that has its source code stored in a
* GitHub or Bitbucket repository, stops CodeBuild from rebuilding the source code
* every time a code change is pushed to the repository.
See Also:
* AWS
* API Reference
*/
virtual Model::DeleteWebhookOutcome DeleteWebhook(const Model::DeleteWebhookRequest& request) const;
/**
* A Callable wrapper for DeleteWebhook that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DeleteWebhookOutcomeCallable DeleteWebhookCallable(const DeleteWebhookRequestT& request) const
{
return SubmitCallable(&CodeBuildClient::DeleteWebhook, request);
}
/**
* An Async wrapper for DeleteWebhook that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DeleteWebhookAsync(const DeleteWebhookRequestT& request, const DeleteWebhookResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CodeBuildClient::DeleteWebhook, request, handler, context);
}
/**
* Retrieves one or more code coverage reports.
See Also:
AWS
* API Reference
*/
virtual Model::DescribeCodeCoveragesOutcome DescribeCodeCoverages(const Model::DescribeCodeCoveragesRequest& request) const;
/**
* A Callable wrapper for DescribeCodeCoverages that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DescribeCodeCoveragesOutcomeCallable DescribeCodeCoveragesCallable(const DescribeCodeCoveragesRequestT& request) const
{
return SubmitCallable(&CodeBuildClient::DescribeCodeCoverages, request);
}
/**
* An Async wrapper for DescribeCodeCoverages that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DescribeCodeCoveragesAsync(const DescribeCodeCoveragesRequestT& request, const DescribeCodeCoveragesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CodeBuildClient::DescribeCodeCoverages, request, handler, context);
}
/**
* Returns a list of details about test cases for a report.
See
* Also:
AWS
* API Reference
*/
virtual Model::DescribeTestCasesOutcome DescribeTestCases(const Model::DescribeTestCasesRequest& request) const;
/**
* A Callable wrapper for DescribeTestCases that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DescribeTestCasesOutcomeCallable DescribeTestCasesCallable(const DescribeTestCasesRequestT& request) const
{
return SubmitCallable(&CodeBuildClient::DescribeTestCases, request);
}
/**
* An Async wrapper for DescribeTestCases that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DescribeTestCasesAsync(const DescribeTestCasesRequestT& request, const DescribeTestCasesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CodeBuildClient::DescribeTestCases, request, handler, context);
}
/**
* Analyzes and accumulates test report values for the specified test
* reports.
See Also:
AWS
* API Reference
*/
virtual Model::GetReportGroupTrendOutcome GetReportGroupTrend(const Model::GetReportGroupTrendRequest& request) const;
/**
* A Callable wrapper for GetReportGroupTrend that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::GetReportGroupTrendOutcomeCallable GetReportGroupTrendCallable(const GetReportGroupTrendRequestT& request) const
{
return SubmitCallable(&CodeBuildClient::GetReportGroupTrend, request);
}
/**
* An Async wrapper for GetReportGroupTrend that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void GetReportGroupTrendAsync(const GetReportGroupTrendRequestT& request, const GetReportGroupTrendResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CodeBuildClient::GetReportGroupTrend, request, handler, context);
}
/**
* Gets a resource policy that is identified by its resource ARN.
*
See Also:
AWS
* API Reference
*/
virtual Model::GetResourcePolicyOutcome GetResourcePolicy(const Model::GetResourcePolicyRequest& request) const;
/**
* A Callable wrapper for GetResourcePolicy that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::GetResourcePolicyOutcomeCallable GetResourcePolicyCallable(const GetResourcePolicyRequestT& request) const
{
return SubmitCallable(&CodeBuildClient::GetResourcePolicy, request);
}
/**
* An Async wrapper for GetResourcePolicy that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void GetResourcePolicyAsync(const GetResourcePolicyRequestT& request, const GetResourcePolicyResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CodeBuildClient::GetResourcePolicy, request, handler, context);
}
/**
* Imports the source repository credentials for an CodeBuild project that has
* its source code stored in a GitHub, GitHub Enterprise, or Bitbucket repository.
*
See Also:
AWS
* API Reference
*/
virtual Model::ImportSourceCredentialsOutcome ImportSourceCredentials(const Model::ImportSourceCredentialsRequest& request) const;
/**
* A Callable wrapper for ImportSourceCredentials that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::ImportSourceCredentialsOutcomeCallable ImportSourceCredentialsCallable(const ImportSourceCredentialsRequestT& request) const
{
return SubmitCallable(&CodeBuildClient::ImportSourceCredentials, request);
}
/**
* An Async wrapper for ImportSourceCredentials that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void ImportSourceCredentialsAsync(const ImportSourceCredentialsRequestT& request, const ImportSourceCredentialsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CodeBuildClient::ImportSourceCredentials, request, handler, context);
}
/**
* Resets the cache for a project.
See Also:
AWS
* API Reference
*/
virtual Model::InvalidateProjectCacheOutcome InvalidateProjectCache(const Model::InvalidateProjectCacheRequest& request) const;
/**
* A Callable wrapper for InvalidateProjectCache that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::InvalidateProjectCacheOutcomeCallable InvalidateProjectCacheCallable(const InvalidateProjectCacheRequestT& request) const
{
return SubmitCallable(&CodeBuildClient::InvalidateProjectCache, request);
}
/**
* An Async wrapper for InvalidateProjectCache that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void InvalidateProjectCacheAsync(const InvalidateProjectCacheRequestT& request, const InvalidateProjectCacheResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CodeBuildClient::InvalidateProjectCache, request, handler, context);
}
/**
* Retrieves the identifiers of your build batches in the current
* region.
See Also:
AWS
* API Reference
*/
virtual Model::ListBuildBatchesOutcome ListBuildBatches(const Model::ListBuildBatchesRequest& request) const;
/**
* A Callable wrapper for ListBuildBatches that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::ListBuildBatchesOutcomeCallable ListBuildBatchesCallable(const ListBuildBatchesRequestT& request) const
{
return SubmitCallable(&CodeBuildClient::ListBuildBatches, request);
}
/**
* An Async wrapper for ListBuildBatches that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void ListBuildBatchesAsync(const ListBuildBatchesRequestT& request, const ListBuildBatchesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CodeBuildClient::ListBuildBatches, request, handler, context);
}
/**
* Retrieves the identifiers of the build batches for a specific
* project.
See Also:
AWS
* API Reference
*/
virtual Model::ListBuildBatchesForProjectOutcome ListBuildBatchesForProject(const Model::ListBuildBatchesForProjectRequest& request) const;
/**
* A Callable wrapper for ListBuildBatchesForProject that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::ListBuildBatchesForProjectOutcomeCallable ListBuildBatchesForProjectCallable(const ListBuildBatchesForProjectRequestT& request) const
{
return SubmitCallable(&CodeBuildClient::ListBuildBatchesForProject, request);
}
/**
* An Async wrapper for ListBuildBatchesForProject that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void ListBuildBatchesForProjectAsync(const ListBuildBatchesForProjectRequestT& request, const ListBuildBatchesForProjectResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CodeBuildClient::ListBuildBatchesForProject, request, handler, context);
}
/**
* Gets a list of build IDs, with each build ID representing a single
* build.
See Also:
AWS
* API Reference
*/
virtual Model::ListBuildsOutcome ListBuilds(const Model::ListBuildsRequest& request) const;
/**
* A Callable wrapper for ListBuilds that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::ListBuildsOutcomeCallable ListBuildsCallable(const ListBuildsRequestT& request) const
{
return SubmitCallable(&CodeBuildClient::ListBuilds, request);
}
/**
* An Async wrapper for ListBuilds that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void ListBuildsAsync(const ListBuildsRequestT& request, const ListBuildsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CodeBuildClient::ListBuilds, request, handler, context);
}
/**
* Gets a list of build identifiers for the specified build project, with each
* build identifier representing a single build.
See Also:
AWS
* API Reference
*/
virtual Model::ListBuildsForProjectOutcome ListBuildsForProject(const Model::ListBuildsForProjectRequest& request) const;
/**
* A Callable wrapper for ListBuildsForProject that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::ListBuildsForProjectOutcomeCallable ListBuildsForProjectCallable(const ListBuildsForProjectRequestT& request) const
{
return SubmitCallable(&CodeBuildClient::ListBuildsForProject, request);
}
/**
* An Async wrapper for ListBuildsForProject that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void ListBuildsForProjectAsync(const ListBuildsForProjectRequestT& request, const ListBuildsForProjectResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CodeBuildClient::ListBuildsForProject, request, handler, context);
}
/**
* Gets information about Docker images that are managed by
* CodeBuild.
See Also:
AWS
* API Reference
*/
virtual Model::ListCuratedEnvironmentImagesOutcome ListCuratedEnvironmentImages(const Model::ListCuratedEnvironmentImagesRequest& request) const;
/**
* A Callable wrapper for ListCuratedEnvironmentImages that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::ListCuratedEnvironmentImagesOutcomeCallable ListCuratedEnvironmentImagesCallable(const ListCuratedEnvironmentImagesRequestT& request) const
{
return SubmitCallable(&CodeBuildClient::ListCuratedEnvironmentImages, request);
}
/**
* An Async wrapper for ListCuratedEnvironmentImages that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void ListCuratedEnvironmentImagesAsync(const ListCuratedEnvironmentImagesRequestT& request, const ListCuratedEnvironmentImagesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CodeBuildClient::ListCuratedEnvironmentImages, request, handler, context);
}
/**
* Gets a list of build project names, with each build project name representing
* a single build project.
See Also:
AWS
* API Reference
*/
virtual Model::ListProjectsOutcome ListProjects(const Model::ListProjectsRequest& request) const;
/**
* A Callable wrapper for ListProjects that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::ListProjectsOutcomeCallable ListProjectsCallable(const ListProjectsRequestT& request) const
{
return SubmitCallable(&CodeBuildClient::ListProjects, request);
}
/**
* An Async wrapper for ListProjects that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void ListProjectsAsync(const ListProjectsRequestT& request, const ListProjectsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CodeBuildClient::ListProjects, request, handler, context);
}
/**
* Gets a list ARNs for the report groups in the current Amazon Web Services
* account.
See Also:
AWS
* API Reference
*/
virtual Model::ListReportGroupsOutcome ListReportGroups(const Model::ListReportGroupsRequest& request) const;
/**
* A Callable wrapper for ListReportGroups that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::ListReportGroupsOutcomeCallable ListReportGroupsCallable(const ListReportGroupsRequestT& request) const
{
return SubmitCallable(&CodeBuildClient::ListReportGroups, request);
}
/**
* An Async wrapper for ListReportGroups that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void ListReportGroupsAsync(const ListReportGroupsRequestT& request, const ListReportGroupsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CodeBuildClient::ListReportGroups, request, handler, context);
}
/**
* Returns a list of ARNs for the reports in the current Amazon Web Services
* account.
See Also:
AWS
* API Reference
*/
virtual Model::ListReportsOutcome ListReports(const Model::ListReportsRequest& request) const;
/**
* A Callable wrapper for ListReports that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::ListReportsOutcomeCallable ListReportsCallable(const ListReportsRequestT& request) const
{
return SubmitCallable(&CodeBuildClient::ListReports, request);
}
/**
* An Async wrapper for ListReports that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void ListReportsAsync(const ListReportsRequestT& request, const ListReportsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CodeBuildClient::ListReports, request, handler, context);
}
/**
* Returns a list of ARNs for the reports that belong to a
* ReportGroup
.
See Also:
AWS
* API Reference
*/
virtual Model::ListReportsForReportGroupOutcome ListReportsForReportGroup(const Model::ListReportsForReportGroupRequest& request) const;
/**
* A Callable wrapper for ListReportsForReportGroup that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::ListReportsForReportGroupOutcomeCallable ListReportsForReportGroupCallable(const ListReportsForReportGroupRequestT& request) const
{
return SubmitCallable(&CodeBuildClient::ListReportsForReportGroup, request);
}
/**
* An Async wrapper for ListReportsForReportGroup that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void ListReportsForReportGroupAsync(const ListReportsForReportGroupRequestT& request, const ListReportsForReportGroupResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CodeBuildClient::ListReportsForReportGroup, request, handler, context);
}
/**
* Gets a list of projects that are shared with other Amazon Web Services
* accounts or users.
See Also:
AWS
* API Reference
*/
virtual Model::ListSharedProjectsOutcome ListSharedProjects(const Model::ListSharedProjectsRequest& request) const;
/**
* A Callable wrapper for ListSharedProjects that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::ListSharedProjectsOutcomeCallable ListSharedProjectsCallable(const ListSharedProjectsRequestT& request) const
{
return SubmitCallable(&CodeBuildClient::ListSharedProjects, request);
}
/**
* An Async wrapper for ListSharedProjects that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void ListSharedProjectsAsync(const ListSharedProjectsRequestT& request, const ListSharedProjectsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CodeBuildClient::ListSharedProjects, request, handler, context);
}
/**
* Gets a list of report groups that are shared with other Amazon Web Services
* accounts or users.
See Also:
AWS
* API Reference
*/
virtual Model::ListSharedReportGroupsOutcome ListSharedReportGroups(const Model::ListSharedReportGroupsRequest& request) const;
/**
* A Callable wrapper for ListSharedReportGroups that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::ListSharedReportGroupsOutcomeCallable ListSharedReportGroupsCallable(const ListSharedReportGroupsRequestT& request) const
{
return SubmitCallable(&CodeBuildClient::ListSharedReportGroups, request);
}
/**
* An Async wrapper for ListSharedReportGroups that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void ListSharedReportGroupsAsync(const ListSharedReportGroupsRequestT& request, const ListSharedReportGroupsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CodeBuildClient::ListSharedReportGroups, request, handler, context);
}
/**
* Returns a list of SourceCredentialsInfo
objects.
See
* Also:
AWS
* API Reference
*/
virtual Model::ListSourceCredentialsOutcome ListSourceCredentials(const Model::ListSourceCredentialsRequest& request) const;
/**
* A Callable wrapper for ListSourceCredentials that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::ListSourceCredentialsOutcomeCallable ListSourceCredentialsCallable(const ListSourceCredentialsRequestT& request) const
{
return SubmitCallable(&CodeBuildClient::ListSourceCredentials, request);
}
/**
* An Async wrapper for ListSourceCredentials that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void ListSourceCredentialsAsync(const ListSourceCredentialsRequestT& request, const ListSourceCredentialsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CodeBuildClient::ListSourceCredentials, request, handler, context);
}
/**
* Stores a resource policy for the ARN of a Project
or
* ReportGroup
object.
See Also:
AWS
* API Reference
*/
virtual Model::PutResourcePolicyOutcome PutResourcePolicy(const Model::PutResourcePolicyRequest& request) const;
/**
* A Callable wrapper for PutResourcePolicy that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::PutResourcePolicyOutcomeCallable PutResourcePolicyCallable(const PutResourcePolicyRequestT& request) const
{
return SubmitCallable(&CodeBuildClient::PutResourcePolicy, request);
}
/**
* An Async wrapper for PutResourcePolicy that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void PutResourcePolicyAsync(const PutResourcePolicyRequestT& request, const PutResourcePolicyResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CodeBuildClient::PutResourcePolicy, request, handler, context);
}
/**
* Restarts a build.
See Also:
AWS
* API Reference
*/
virtual Model::RetryBuildOutcome RetryBuild(const Model::RetryBuildRequest& request) const;
/**
* A Callable wrapper for RetryBuild that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::RetryBuildOutcomeCallable RetryBuildCallable(const RetryBuildRequestT& request) const
{
return SubmitCallable(&CodeBuildClient::RetryBuild, request);
}
/**
* An Async wrapper for RetryBuild that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void RetryBuildAsync(const RetryBuildRequestT& request, const RetryBuildResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CodeBuildClient::RetryBuild, request, handler, context);
}
/**
* Restarts a failed batch build. Only batch builds that have failed can be
* retried.
See Also:
AWS
* API Reference
*/
virtual Model::RetryBuildBatchOutcome RetryBuildBatch(const Model::RetryBuildBatchRequest& request) const;
/**
* A Callable wrapper for RetryBuildBatch that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::RetryBuildBatchOutcomeCallable RetryBuildBatchCallable(const RetryBuildBatchRequestT& request) const
{
return SubmitCallable(&CodeBuildClient::RetryBuildBatch, request);
}
/**
* An Async wrapper for RetryBuildBatch that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void RetryBuildBatchAsync(const RetryBuildBatchRequestT& request, const RetryBuildBatchResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CodeBuildClient::RetryBuildBatch, request, handler, context);
}
/**
* Starts running a build.
See Also:
AWS
* API Reference
*/
virtual Model::StartBuildOutcome StartBuild(const Model::StartBuildRequest& request) const;
/**
* A Callable wrapper for StartBuild that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::StartBuildOutcomeCallable StartBuildCallable(const StartBuildRequestT& request) const
{
return SubmitCallable(&CodeBuildClient::StartBuild, request);
}
/**
* An Async wrapper for StartBuild that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void StartBuildAsync(const StartBuildRequestT& request, const StartBuildResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CodeBuildClient::StartBuild, request, handler, context);
}
/**
* Starts a batch build for a project.
See Also:
AWS
* API Reference
*/
virtual Model::StartBuildBatchOutcome StartBuildBatch(const Model::StartBuildBatchRequest& request) const;
/**
* A Callable wrapper for StartBuildBatch that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::StartBuildBatchOutcomeCallable StartBuildBatchCallable(const StartBuildBatchRequestT& request) const
{
return SubmitCallable(&CodeBuildClient::StartBuildBatch, request);
}
/**
* An Async wrapper for StartBuildBatch that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void StartBuildBatchAsync(const StartBuildBatchRequestT& request, const StartBuildBatchResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CodeBuildClient::StartBuildBatch, request, handler, context);
}
/**
* Attempts to stop running a build.
See Also:
AWS
* API Reference
*/
virtual Model::StopBuildOutcome StopBuild(const Model::StopBuildRequest& request) const;
/**
* A Callable wrapper for StopBuild that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::StopBuildOutcomeCallable StopBuildCallable(const StopBuildRequestT& request) const
{
return SubmitCallable(&CodeBuildClient::StopBuild, request);
}
/**
* An Async wrapper for StopBuild that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void StopBuildAsync(const StopBuildRequestT& request, const StopBuildResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CodeBuildClient::StopBuild, request, handler, context);
}
/**
* Stops a running batch build.
See Also:
AWS
* API Reference
*/
virtual Model::StopBuildBatchOutcome StopBuildBatch(const Model::StopBuildBatchRequest& request) const;
/**
* A Callable wrapper for StopBuildBatch that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::StopBuildBatchOutcomeCallable StopBuildBatchCallable(const StopBuildBatchRequestT& request) const
{
return SubmitCallable(&CodeBuildClient::StopBuildBatch, request);
}
/**
* An Async wrapper for StopBuildBatch that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void StopBuildBatchAsync(const StopBuildBatchRequestT& request, const StopBuildBatchResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CodeBuildClient::StopBuildBatch, request, handler, context);
}
/**
* Changes the settings of a build project.
See Also:
AWS
* API Reference
*/
virtual Model::UpdateProjectOutcome UpdateProject(const Model::UpdateProjectRequest& request) const;
/**
* A Callable wrapper for UpdateProject that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::UpdateProjectOutcomeCallable UpdateProjectCallable(const UpdateProjectRequestT& request) const
{
return SubmitCallable(&CodeBuildClient::UpdateProject, request);
}
/**
* An Async wrapper for UpdateProject that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void UpdateProjectAsync(const UpdateProjectRequestT& request, const UpdateProjectResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CodeBuildClient::UpdateProject, request, handler, context);
}
/**
* Changes the public visibility for a project. The project's build results,
* logs, and artifacts are available to the general public. For more information,
* see Public
* build projects in the CodeBuild User Guide.
The
* following should be kept in mind when making your projects public:
-
*
All of a project's build results, logs, and artifacts, including builds that
* were run when the project was private, are available to the general public.
* -
All build logs and artifacts are available to the public.
* Environment variables, source code, and other sensitive information may have
* been output to the build logs and artifacts. You must be careful about what
* information is output to the build logs. Some best practice are:
-
*
Do not store sensitive values, especially Amazon Web Services access key IDs
* and secret access keys, in environment variables. We recommend that you use an
* Amazon EC2 Systems Manager Parameter Store or Secrets Manager to store sensitive
* values.
-
Follow Best
* practices for using webhooks in the CodeBuild User Guide to limit
* which entities can trigger a build, and do not store the buildspec in the
* project itself, to ensure that your webhooks are as secure as possible.
*
-
A malicious user can use public builds to distribute
* malicious artifacts. We recommend that you review all pull requests to verify
* that the pull request is a legitimate change. We also recommend that you
* validate any artifacts with their checksums to make sure that the correct
* artifacts are being downloaded.
See
* Also:
AWS
* API Reference
*/
virtual Model::UpdateProjectVisibilityOutcome UpdateProjectVisibility(const Model::UpdateProjectVisibilityRequest& request) const;
/**
* A Callable wrapper for UpdateProjectVisibility that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::UpdateProjectVisibilityOutcomeCallable UpdateProjectVisibilityCallable(const UpdateProjectVisibilityRequestT& request) const
{
return SubmitCallable(&CodeBuildClient::UpdateProjectVisibility, request);
}
/**
* An Async wrapper for UpdateProjectVisibility that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void UpdateProjectVisibilityAsync(const UpdateProjectVisibilityRequestT& request, const UpdateProjectVisibilityResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CodeBuildClient::UpdateProjectVisibility, request, handler, context);
}
/**
* Updates a report group.
See Also:
AWS
* API Reference
*/
virtual Model::UpdateReportGroupOutcome UpdateReportGroup(const Model::UpdateReportGroupRequest& request) const;
/**
* A Callable wrapper for UpdateReportGroup that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::UpdateReportGroupOutcomeCallable UpdateReportGroupCallable(const UpdateReportGroupRequestT& request) const
{
return SubmitCallable(&CodeBuildClient::UpdateReportGroup, request);
}
/**
* An Async wrapper for UpdateReportGroup that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void UpdateReportGroupAsync(const UpdateReportGroupRequestT& request, const UpdateReportGroupResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CodeBuildClient::UpdateReportGroup, request, handler, context);
}
/**
* Updates the webhook associated with an CodeBuild build project.
* If you use Bitbucket for your repository, rotateSecret
is
* ignored.
See Also:
AWS
* API Reference
*/
virtual Model::UpdateWebhookOutcome UpdateWebhook(const Model::UpdateWebhookRequest& request) const;
/**
* A Callable wrapper for UpdateWebhook that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::UpdateWebhookOutcomeCallable UpdateWebhookCallable(const UpdateWebhookRequestT& request) const
{
return SubmitCallable(&CodeBuildClient::UpdateWebhook, request);
}
/**
* An Async wrapper for UpdateWebhook that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void UpdateWebhookAsync(const UpdateWebhookRequestT& request, const UpdateWebhookResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&CodeBuildClient::UpdateWebhook, request, handler, context);
}
void OverrideEndpoint(const Aws::String& endpoint);
std::shared_ptr& accessEndpointProvider();
private:
friend class Aws::Client::ClientWithAsyncTemplateMethods;
void init(const CodeBuildClientConfiguration& clientConfiguration);
CodeBuildClientConfiguration m_clientConfiguration;
std::shared_ptr m_executor;
std::shared_ptr m_endpointProvider;
};
} // namespace CodeBuild
} // namespace Aws