pub struct FunctionService { /* private fields */ }
Expand description
Implements a client for the Cloud Functions API.
§Example
let client = FunctionService::builder().build().await?;
// use `client` to make requests to the Cloud Functions API.
§Service Description
Google Cloud Functions is used to deploy functions that are executed by Google in response to various events. Data connected with that event is passed to a function as the input data.
A function is a resource which describes a function that should be executed and how it is triggered.
§Configuration
To configure FunctionService
use the with_*
methods in the type returned
by builder(). The default configuration should
work for most applications. Common configuration changes include
- with_endpoint(): by default this client uses the global default endpoint
(
https://cloudfunctions.googleapis.com
). Applications using regional endpoints or running in restricted networks (e.g. a network configured override this default. - with_credentials(): by default this client uses Application Default Credentials. Applications using custom authentication may need to override this default.
§Pooling and Cloning
FunctionService
holds a connection pool internally, it is advised to
create one and the reuse it. You do not need to wrap FunctionService
in
an Rc or Arc to reuse it, because it
already uses an Arc
internally.
Implementations§
Source§impl FunctionService
impl FunctionService
Sourcepub fn builder() -> ClientBuilder
pub fn builder() -> ClientBuilder
Returns a builder for FunctionService.
let client = FunctionService::builder().build().await?;
Sourcepub fn from_stub<T>(stub: T) -> Selfwhere
T: FunctionService + 'static,
pub fn from_stub<T>(stub: T) -> Selfwhere
T: FunctionService + 'static,
Creates a new client from the provided stub.
The most common case for calling this function is in tests mocking the client’s behavior.
Sourcepub fn get_function(&self) -> GetFunction
pub fn get_function(&self) -> GetFunction
Returns a function with the given name from the requested project.
Sourcepub fn list_functions(&self) -> ListFunctions
pub fn list_functions(&self) -> ListFunctions
Returns a list of functions that belong to the requested project.
Sourcepub fn create_function(&self) -> CreateFunction
pub fn create_function(&self) -> CreateFunction
Creates a new function. If a function with the given name already exists in
the specified project, the long running operation will return
ALREADY_EXISTS
error.
§Long running operations
This method is used to start, and/or poll a long-running Operation. The Working with long-running operations chapter in the user guide covers these operations in detail.
Sourcepub fn update_function(&self) -> UpdateFunction
pub fn update_function(&self) -> UpdateFunction
Updates existing function.
§Long running operations
This method is used to start, and/or poll a long-running Operation. The Working with long-running operations chapter in the user guide covers these operations in detail.
Sourcepub fn delete_function(&self) -> DeleteFunction
pub fn delete_function(&self) -> DeleteFunction
Deletes a function with the given name from the specified project. If the given function is used by some trigger, the trigger will be updated to remove this function.
§Long running operations
This method is used to start, and/or poll a long-running Operation. The Working with long-running operations chapter in the user guide covers these operations in detail.
Sourcepub fn generate_upload_url(&self) -> GenerateUploadUrl
pub fn generate_upload_url(&self) -> GenerateUploadUrl
Returns a signed URL for uploading a function source code. For more information about the signed URL usage see: https://cloud.google.com/storage/docs/access-control/signed-urls. Once the function source code upload is complete, the used signed URL should be provided in CreateFunction or UpdateFunction request as a reference to the function source code.
When uploading source code to the generated signed URL, please follow these restrictions:
- Source file type should be a zip file.
- No credentials should be attached - the signed URLs provide access to the target bucket using internal service identity; if credentials were attached, the identity from the credentials would be used, but that identity does not have permissions to upload files to the URL.
When making a HTTP PUT request, specify this header:
content-type: application/zip
Do not specify this header:
Authorization: Bearer YOUR_TOKEN
Sourcepub fn generate_download_url(&self) -> GenerateDownloadUrl
pub fn generate_download_url(&self) -> GenerateDownloadUrl
Returns a signed URL for downloading deployed function source code. The URL is only valid for a limited period and should be used within 30 minutes of generation. For more information about the signed URL usage see: https://cloud.google.com/storage/docs/access-control/signed-urls
Sourcepub fn list_runtimes(&self) -> ListRuntimes
pub fn list_runtimes(&self) -> ListRuntimes
Returns a list of runtimes that are supported for the requested project.
Sourcepub fn list_locations(&self) -> ListLocations
pub fn list_locations(&self) -> ListLocations
Lists information about the supported locations for this service.
Sourcepub fn set_iam_policy(&self) -> SetIamPolicy
pub fn set_iam_policy(&self) -> SetIamPolicy
Sets the access control policy on the specified resource. Replaces any existing policy.
Can return NOT_FOUND
, INVALID_ARGUMENT
, and PERMISSION_DENIED
errors.
Sourcepub fn get_iam_policy(&self) -> GetIamPolicy
pub fn get_iam_policy(&self) -> GetIamPolicy
Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.
Sourcepub fn test_iam_permissions(&self) -> TestIamPermissions
pub fn test_iam_permissions(&self) -> TestIamPermissions
Returns permissions that a caller has on the specified resource. If the
resource does not exist, this will return an empty set of
permissions, not a NOT_FOUND
error.
Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may “fail open” without warning.
Sourcepub fn list_operations(&self) -> ListOperations
pub fn list_operations(&self) -> ListOperations
Provides the Operations service functionality in this service.
Sourcepub fn get_operation(&self) -> GetOperation
pub fn get_operation(&self) -> GetOperation
Provides the Operations service functionality in this service.
Trait Implementations§
Source§impl Clone for FunctionService
impl Clone for FunctionService
Source§fn clone(&self) -> FunctionService
fn clone(&self) -> FunctionService
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more