/
getCloudProviderSnapshotRestoreJobs.go
86 lines (81 loc) · 3.64 KB
/
getCloudProviderSnapshotRestoreJobs.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
package mongodbatlas
import (
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
// `getCloudProviderSnapshotRestoreJobs` provides a Cloud Backup Snapshot Restore Jobs datasource. Gets all the cloud backup snapshot restore jobs for the specified cluster.
//
// > **NOTE:** Groups and projects are synonymous terms. You may find `groupId` in the official documentation.
//
// ## Example Usage
//
// First create a snapshot of the desired cluster. Then request that snapshot be restored in an automated fashion to the designated cluster and project.
//
// ```go
// package main
//
// import (
// "github.com/pulumi/pulumi-mongodbatlas/sdk/v2/go/mongodbatlas"
// "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
// )
//
// func main() {
// pulumi.Run(func(ctx *pulumi.Context) error {
// testCloudProviderSnapshot, err := mongodbatlas.NewCloudProviderSnapshot(ctx, "testCloudProviderSnapshot", &mongodbatlas.CloudProviderSnapshotArgs{
// ProjectId: pulumi.String("5cf5a45a9ccf6400e60981b6"),
// ClusterName: pulumi.String("MyCluster"),
// Description: pulumi.String("MyDescription"),
// RetentionInDays: pulumi.Int(1),
// })
// if err != nil {
// return err
// }
// testCloudProviderSnapshotRestoreJob, err := mongodbatlas.NewCloudProviderSnapshotRestoreJob(ctx, "testCloudProviderSnapshotRestoreJob", &mongodbatlas.CloudProviderSnapshotRestoreJobArgs{
// ProjectId: pulumi.String("5cf5a45a9ccf6400e60981b6"),
// ClusterName: pulumi.String("MyCluster"),
// SnapshotId: testCloudProviderSnapshot.ID(),
// DeliveryType: &mongodbatlas.CloudProviderSnapshotRestoreJobDeliveryTypeArgs{
// Automated: pulumi.Bool(true),
// Target_cluster_name: pulumi.String("MyCluster"),
// Target_project_id: pulumi.String("5cf5a45a9ccf6400e60981b6"),
// },
// })
// if err != nil {
// return err
// }
// return nil
// })
// }
// ```
func GetCloudProviderSnapshotRestoreJobs(ctx *pulumi.Context, args *GetCloudProviderSnapshotRestoreJobsArgs, opts ...pulumi.InvokeOption) (*GetCloudProviderSnapshotRestoreJobsResult, error) {
var rv GetCloudProviderSnapshotRestoreJobsResult
err := ctx.Invoke("mongodbatlas:index/getCloudProviderSnapshotRestoreJobs:getCloudProviderSnapshotRestoreJobs", args, &rv, opts...)
if err != nil {
return nil, err
}
return &rv, nil
}
// A collection of arguments for invoking getCloudProviderSnapshotRestoreJobs.
type GetCloudProviderSnapshotRestoreJobsArgs struct {
// The name of the Atlas cluster for which you want to retrieve restore jobs.
ClusterName string `pulumi:"clusterName"`
// Number of items to return per page, up to a maximum of 500. Defaults to `100`.
ItemsPerPage *int `pulumi:"itemsPerPage"`
// The page to return. Defaults to `1`.
PageNum *int `pulumi:"pageNum"`
// The unique identifier of the project for the Atlas cluster.
ProjectId string `pulumi:"projectId"`
}
// A collection of values returned by getCloudProviderSnapshotRestoreJobs.
type GetCloudProviderSnapshotRestoreJobsResult struct {
ClusterName string `pulumi:"clusterName"`
// The provider-assigned unique ID for this managed resource.
Id string `pulumi:"id"`
ItemsPerPage *int `pulumi:"itemsPerPage"`
PageNum *int `pulumi:"pageNum"`
ProjectId string `pulumi:"projectId"`
// Includes cloudProviderSnapshotRestoreJob object for each item detailed in the results array section.
Results []GetCloudProviderSnapshotRestoreJobsResultType `pulumi:"results"`
TotalCount int `pulumi:"totalCount"`
}