mongodbatlas.getCloudBackupSnapshotRestoreJobs

Explore with Pulumi AI

mongodbatlas.getCloudBackupSnapshotRestoreJobs 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.

using System.Collections.Generic;
using Pulumi;
using Mongodbatlas = Pulumi.Mongodbatlas;

return await Deployment.RunAsync(() => 
{
    var testCloudBackupSnapshot = new Mongodbatlas.CloudBackupSnapshot("testCloudBackupSnapshot", new()
    {
        ProjectId = "5cf5a45a9ccf6400e60981b6",
        ClusterName = "MyCluster",
        Description = "MyDescription",
        RetentionInDays = 1,
    });

    var testCloudBackupSnapshotRestoreJob = new Mongodbatlas.CloudBackupSnapshotRestoreJob("testCloudBackupSnapshotRestoreJob", new()
    {
        ProjectId = "5cf5a45a9ccf6400e60981b6",
        ClusterName = "MyCluster",
        SnapshotId = testCloudBackupSnapshot.Id,
        DeliveryTypeConfig = new Mongodbatlas.Inputs.CloudBackupSnapshotRestoreJobDeliveryTypeConfigArgs
        {
            Automated = true,
            TargetClusterName = "MyCluster",
            TargetProjectId = "5cf5a45a9ccf6400e60981b6",
        },
    });

    var testCloudBackupSnapshotRestoreJobs = Mongodbatlas.GetCloudBackupSnapshotRestoreJobs.Invoke(new()
    {
        ProjectId = testCloudBackupSnapshotRestoreJob.ProjectId,
        ClusterName = testCloudBackupSnapshotRestoreJob.ClusterName,
        PageNum = 1,
        ItemsPerPage = 5,
    });

});
package main

import (
	"github.com/pulumi/pulumi-mongodbatlas/sdk/v3/go/mongodbatlas"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		testCloudBackupSnapshot, err := mongodbatlas.NewCloudBackupSnapshot(ctx, "testCloudBackupSnapshot", &mongodbatlas.CloudBackupSnapshotArgs{
			ProjectId:       pulumi.String("5cf5a45a9ccf6400e60981b6"),
			ClusterName:     pulumi.String("MyCluster"),
			Description:     pulumi.String("MyDescription"),
			RetentionInDays: pulumi.Int(1),
		})
		if err != nil {
			return err
		}
		testCloudBackupSnapshotRestoreJob, err := mongodbatlas.NewCloudBackupSnapshotRestoreJob(ctx, "testCloudBackupSnapshotRestoreJob", &mongodbatlas.CloudBackupSnapshotRestoreJobArgs{
			ProjectId:   pulumi.String("5cf5a45a9ccf6400e60981b6"),
			ClusterName: pulumi.String("MyCluster"),
			SnapshotId:  testCloudBackupSnapshot.ID(),
			DeliveryTypeConfig: &mongodbatlas.CloudBackupSnapshotRestoreJobDeliveryTypeConfigArgs{
				Automated:         pulumi.Bool(true),
				TargetClusterName: pulumi.String("MyCluster"),
				TargetProjectId:   pulumi.String("5cf5a45a9ccf6400e60981b6"),
			},
		})
		if err != nil {
			return err
		}
		_ = pulumi.All(testCloudBackupSnapshotRestoreJob.ProjectId, testCloudBackupSnapshotRestoreJob.ClusterName).ApplyT(func(_args []interface{}) (mongodbatlas.GetCloudBackupSnapshotRestoreJobsResult, error) {
			projectId := _args[0].(string)
			clusterName := _args[1].(string)
			return mongodbatlas.LookupCloudBackupSnapshotRestoreJobsOutput(ctx, mongodbatlas.GetCloudBackupSnapshotRestoreJobsOutputArgs{
				ProjectId:    projectId,
				ClusterName:  clusterName,
				PageNum:      1,
				ItemsPerPage: 5,
			}, nil), nil
		}).(mongodbatlas.GetCloudBackupSnapshotRestoreJobsResultOutput)
		return nil
	})
}
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.mongodbatlas.CloudBackupSnapshot;
import com.pulumi.mongodbatlas.CloudBackupSnapshotArgs;
import com.pulumi.mongodbatlas.CloudBackupSnapshotRestoreJob;
import com.pulumi.mongodbatlas.CloudBackupSnapshotRestoreJobArgs;
import com.pulumi.mongodbatlas.inputs.CloudBackupSnapshotRestoreJobDeliveryTypeConfigArgs;
import com.pulumi.mongodbatlas.MongodbatlasFunctions;
import com.pulumi.mongodbatlas.inputs.GetCloudBackupSnapshotRestoreJobsArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;

public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }

    public static void stack(Context ctx) {
        var testCloudBackupSnapshot = new CloudBackupSnapshot("testCloudBackupSnapshot", CloudBackupSnapshotArgs.builder()        
            .projectId("5cf5a45a9ccf6400e60981b6")
            .clusterName("MyCluster")
            .description("MyDescription")
            .retentionInDays(1)
            .build());

        var testCloudBackupSnapshotRestoreJob = new CloudBackupSnapshotRestoreJob("testCloudBackupSnapshotRestoreJob", CloudBackupSnapshotRestoreJobArgs.builder()        
            .projectId("5cf5a45a9ccf6400e60981b6")
            .clusterName("MyCluster")
            .snapshotId(testCloudBackupSnapshot.id())
            .deliveryTypeConfig(CloudBackupSnapshotRestoreJobDeliveryTypeConfigArgs.builder()
                .automated(true)
                .targetClusterName("MyCluster")
                .targetProjectId("5cf5a45a9ccf6400e60981b6")
                .build())
            .build());

        final var testCloudBackupSnapshotRestoreJobs = MongodbatlasFunctions.getCloudBackupSnapshotRestoreJobs(GetCloudBackupSnapshotRestoreJobsArgs.builder()
            .projectId(testCloudBackupSnapshotRestoreJob.projectId())
            .clusterName(testCloudBackupSnapshotRestoreJob.clusterName())
            .pageNum(1)
            .itemsPerPage(5)
            .build());

    }
}
import pulumi
import pulumi_mongodbatlas as mongodbatlas

test_cloud_backup_snapshot = mongodbatlas.CloudBackupSnapshot("testCloudBackupSnapshot",
    project_id="5cf5a45a9ccf6400e60981b6",
    cluster_name="MyCluster",
    description="MyDescription",
    retention_in_days=1)
test_cloud_backup_snapshot_restore_job = mongodbatlas.CloudBackupSnapshotRestoreJob("testCloudBackupSnapshotRestoreJob",
    project_id="5cf5a45a9ccf6400e60981b6",
    cluster_name="MyCluster",
    snapshot_id=test_cloud_backup_snapshot.id,
    delivery_type_config=mongodbatlas.CloudBackupSnapshotRestoreJobDeliveryTypeConfigArgs(
        automated=True,
        target_cluster_name="MyCluster",
        target_project_id="5cf5a45a9ccf6400e60981b6",
    ))
test_cloud_backup_snapshot_restore_jobs = pulumi.Output.all(test_cloud_backup_snapshot_restore_job.project_id, test_cloud_backup_snapshot_restore_job.cluster_name).apply(lambda project_id, cluster_name: mongodbatlas.get_cloud_backup_snapshot_restore_jobs_output(project_id=project_id,
    cluster_name=cluster_name,
    page_num=1,
    items_per_page=5))
import * as pulumi from "@pulumi/pulumi";
import * as mongodbatlas from "@pulumi/mongodbatlas";

const testCloudBackupSnapshot = new mongodbatlas.CloudBackupSnapshot("testCloudBackupSnapshot", {
    projectId: "5cf5a45a9ccf6400e60981b6",
    clusterName: "MyCluster",
    description: "MyDescription",
    retentionInDays: 1,
});
const testCloudBackupSnapshotRestoreJob = new mongodbatlas.CloudBackupSnapshotRestoreJob("testCloudBackupSnapshotRestoreJob", {
    projectId: "5cf5a45a9ccf6400e60981b6",
    clusterName: "MyCluster",
    snapshotId: testCloudBackupSnapshot.id,
    deliveryTypeConfig: {
        automated: true,
        targetClusterName: "MyCluster",
        targetProjectId: "5cf5a45a9ccf6400e60981b6",
    },
});
const testCloudBackupSnapshotRestoreJobs = pulumi.all([testCloudBackupSnapshotRestoreJob.projectId, testCloudBackupSnapshotRestoreJob.clusterName]).apply(([projectId, clusterName]) => mongodbatlas.getCloudBackupSnapshotRestoreJobsOutput({
    projectId: projectId,
    clusterName: clusterName,
    pageNum: 1,
    itemsPerPage: 5,
}));
resources:
  testCloudBackupSnapshot:
    type: mongodbatlas:CloudBackupSnapshot
    properties:
      projectId: 5cf5a45a9ccf6400e60981b6
      clusterName: MyCluster
      description: MyDescription
      retentionInDays: 1
  testCloudBackupSnapshotRestoreJob:
    type: mongodbatlas:CloudBackupSnapshotRestoreJob
    properties:
      projectId: 5cf5a45a9ccf6400e60981b6
      clusterName: MyCluster
      snapshotId: ${testCloudBackupSnapshot.id}
      deliveryTypeConfig:
        automated: true
        targetClusterName: MyCluster
        targetProjectId: 5cf5a45a9ccf6400e60981b6
variables:
  testCloudBackupSnapshotRestoreJobs:
    fn::invoke:
      Function: mongodbatlas:getCloudBackupSnapshotRestoreJobs
      Arguments:
        projectId: ${testCloudBackupSnapshotRestoreJob.projectId}
        clusterName: ${testCloudBackupSnapshotRestoreJob.clusterName}
        pageNum: 1
        itemsPerPage: 5

Using getCloudBackupSnapshotRestoreJobs

Two invocation forms are available. The direct form accepts plain arguments and either blocks until the result value is available, or returns a Promise-wrapped result. The output form accepts Input-wrapped arguments and returns an Output-wrapped result.

function getCloudBackupSnapshotRestoreJobs(args: GetCloudBackupSnapshotRestoreJobsArgs, opts?: InvokeOptions): Promise<GetCloudBackupSnapshotRestoreJobsResult>
function getCloudBackupSnapshotRestoreJobsOutput(args: GetCloudBackupSnapshotRestoreJobsOutputArgs, opts?: InvokeOptions): Output<GetCloudBackupSnapshotRestoreJobsResult>
def get_cloud_backup_snapshot_restore_jobs(cluster_name: Optional[str] = None,
                                           items_per_page: Optional[int] = None,
                                           page_num: Optional[int] = None,
                                           project_id: Optional[str] = None,
                                           opts: Optional[InvokeOptions] = None) -> GetCloudBackupSnapshotRestoreJobsResult
def get_cloud_backup_snapshot_restore_jobs_output(cluster_name: Optional[pulumi.Input[str]] = None,
                                           items_per_page: Optional[pulumi.Input[int]] = None,
                                           page_num: Optional[pulumi.Input[int]] = None,
                                           project_id: Optional[pulumi.Input[str]] = None,
                                           opts: Optional[InvokeOptions] = None) -> Output[GetCloudBackupSnapshotRestoreJobsResult]
func LookupCloudBackupSnapshotRestoreJobs(ctx *Context, args *LookupCloudBackupSnapshotRestoreJobsArgs, opts ...InvokeOption) (*LookupCloudBackupSnapshotRestoreJobsResult, error)
func LookupCloudBackupSnapshotRestoreJobsOutput(ctx *Context, args *LookupCloudBackupSnapshotRestoreJobsOutputArgs, opts ...InvokeOption) LookupCloudBackupSnapshotRestoreJobsResultOutput

> Note: This function is named LookupCloudBackupSnapshotRestoreJobs in the Go SDK.

public static class GetCloudBackupSnapshotRestoreJobs 
{
    public static Task<GetCloudBackupSnapshotRestoreJobsResult> InvokeAsync(GetCloudBackupSnapshotRestoreJobsArgs args, InvokeOptions? opts = null)
    public static Output<GetCloudBackupSnapshotRestoreJobsResult> Invoke(GetCloudBackupSnapshotRestoreJobsInvokeArgs args, InvokeOptions? opts = null)
}
public static CompletableFuture<GetCloudBackupSnapshotRestoreJobsResult> getCloudBackupSnapshotRestoreJobs(GetCloudBackupSnapshotRestoreJobsArgs args, InvokeOptions options)
// Output-based functions aren't available in Java yet
fn::invoke:
  function: mongodbatlas:index/getCloudBackupSnapshotRestoreJobs:getCloudBackupSnapshotRestoreJobs
  arguments:
    # arguments dictionary

The following arguments are supported:

ClusterName string

The name of the Atlas cluster for which you want to retrieve restore jobs.

ProjectId string

The unique identifier of the project for the Atlas cluster.

ItemsPerPage int

Number of items to return per page, up to a maximum of 500. Defaults to 100.

PageNum int

The page to return. Defaults to 1.

ClusterName string

The name of the Atlas cluster for which you want to retrieve restore jobs.

ProjectId string

The unique identifier of the project for the Atlas cluster.

ItemsPerPage int

Number of items to return per page, up to a maximum of 500. Defaults to 100.

PageNum int

The page to return. Defaults to 1.

clusterName String

The name of the Atlas cluster for which you want to retrieve restore jobs.

projectId String

The unique identifier of the project for the Atlas cluster.

itemsPerPage Integer

Number of items to return per page, up to a maximum of 500. Defaults to 100.

pageNum Integer

The page to return. Defaults to 1.

clusterName string

The name of the Atlas cluster for which you want to retrieve restore jobs.

projectId string

The unique identifier of the project for the Atlas cluster.

itemsPerPage number

Number of items to return per page, up to a maximum of 500. Defaults to 100.

pageNum number

The page to return. Defaults to 1.

cluster_name str

The name of the Atlas cluster for which you want to retrieve restore jobs.

project_id str

The unique identifier of the project for the Atlas cluster.

items_per_page int

Number of items to return per page, up to a maximum of 500. Defaults to 100.

page_num int

The page to return. Defaults to 1.

clusterName String

The name of the Atlas cluster for which you want to retrieve restore jobs.

projectId String

The unique identifier of the project for the Atlas cluster.

itemsPerPage Number

Number of items to return per page, up to a maximum of 500. Defaults to 100.

pageNum Number

The page to return. Defaults to 1.

getCloudBackupSnapshotRestoreJobs Result

The following output properties are available:

ClusterName string
Id string

The provider-assigned unique ID for this managed resource.

ProjectId string
Results List<GetCloudBackupSnapshotRestoreJobsResult>

Includes cloudProviderSnapshotRestoreJob object for each item detailed in the results array section.

TotalCount int
ItemsPerPage int
PageNum int
ClusterName string
Id string

The provider-assigned unique ID for this managed resource.

ProjectId string
Results []GetCloudBackupSnapshotRestoreJobsResult

Includes cloudProviderSnapshotRestoreJob object for each item detailed in the results array section.

TotalCount int
ItemsPerPage int
PageNum int
clusterName String
id String

The provider-assigned unique ID for this managed resource.

projectId String
results List<GetCloudBackupSnapshotRestoreJobsResult>

Includes cloudProviderSnapshotRestoreJob object for each item detailed in the results array section.

totalCount Integer
itemsPerPage Integer
pageNum Integer
clusterName string
id string

The provider-assigned unique ID for this managed resource.

projectId string
results GetCloudBackupSnapshotRestoreJobsResult[]

Includes cloudProviderSnapshotRestoreJob object for each item detailed in the results array section.

totalCount number
itemsPerPage number
pageNum number
cluster_name str
id str

The provider-assigned unique ID for this managed resource.

project_id str
results Sequence[GetCloudBackupSnapshotRestoreJobsResult]

Includes cloudProviderSnapshotRestoreJob object for each item detailed in the results array section.

total_count int
items_per_page int
page_num int
clusterName String
id String

The provider-assigned unique ID for this managed resource.

projectId String
results List<Property Map>

Includes cloudProviderSnapshotRestoreJob object for each item detailed in the results array section.

totalCount Number
itemsPerPage Number
pageNum Number

Supporting Types

GetCloudBackupSnapshotRestoreJobsResult

Cancelled bool

Indicates whether the restore job was canceled.

CreatedAt string

UTC ISO 8601 formatted point in time when Atlas created the restore job.

DeliveryType string

Type of restore job to create. Possible values are: automated and download.

DeliveryUrls List<string>

One or more URLs for the compressed snapshot files for manual download. Only visible if deliveryType is download.

Expired bool

Indicates whether the restore job expired.

ExpiresAt string

UTC ISO 8601 formatted point in time when the restore job expires.

FinishedAt string

UTC ISO 8601 formatted point in time when the restore job completed.

Id string

The unique identifier of the restore job.

OplogInc int
OplogTs int
PointInTimeUtcSeconds int
SnapshotId string

Unique identifier of the source snapshot ID of the restore job.

TargetClusterName string

Name of the target Atlas cluster to which the restore job restores the snapshot. Only visible if deliveryType is automated.

TargetProjectId string

Name of the target Atlas project of the restore job. Only visible if deliveryType is automated.

Timestamp string

Timestamp in ISO 8601 date and time format in UTC when the snapshot associated to snapshotId was taken.

Cancelled bool

Indicates whether the restore job was canceled.

CreatedAt string

UTC ISO 8601 formatted point in time when Atlas created the restore job.

DeliveryType string

Type of restore job to create. Possible values are: automated and download.

DeliveryUrls []string

One or more URLs for the compressed snapshot files for manual download. Only visible if deliveryType is download.

Expired bool

Indicates whether the restore job expired.

ExpiresAt string

UTC ISO 8601 formatted point in time when the restore job expires.

FinishedAt string

UTC ISO 8601 formatted point in time when the restore job completed.

Id string

The unique identifier of the restore job.

OplogInc int
OplogTs int
PointInTimeUtcSeconds int
SnapshotId string

Unique identifier of the source snapshot ID of the restore job.

TargetClusterName string

Name of the target Atlas cluster to which the restore job restores the snapshot. Only visible if deliveryType is automated.

TargetProjectId string

Name of the target Atlas project of the restore job. Only visible if deliveryType is automated.

Timestamp string

Timestamp in ISO 8601 date and time format in UTC when the snapshot associated to snapshotId was taken.

cancelled Boolean

Indicates whether the restore job was canceled.

createdAt String

UTC ISO 8601 formatted point in time when Atlas created the restore job.

deliveryType String

Type of restore job to create. Possible values are: automated and download.

deliveryUrls List<String>

One or more URLs for the compressed snapshot files for manual download. Only visible if deliveryType is download.

expired Boolean

Indicates whether the restore job expired.

expiresAt String

UTC ISO 8601 formatted point in time when the restore job expires.

finishedAt String

UTC ISO 8601 formatted point in time when the restore job completed.

id String

The unique identifier of the restore job.

oplogInc Integer
oplogTs Integer
pointInTimeUtcSeconds Integer
snapshotId String

Unique identifier of the source snapshot ID of the restore job.

targetClusterName String

Name of the target Atlas cluster to which the restore job restores the snapshot. Only visible if deliveryType is automated.

targetProjectId String

Name of the target Atlas project of the restore job. Only visible if deliveryType is automated.

timestamp String

Timestamp in ISO 8601 date and time format in UTC when the snapshot associated to snapshotId was taken.

cancelled boolean

Indicates whether the restore job was canceled.

createdAt string

UTC ISO 8601 formatted point in time when Atlas created the restore job.

deliveryType string

Type of restore job to create. Possible values are: automated and download.

deliveryUrls string[]

One or more URLs for the compressed snapshot files for manual download. Only visible if deliveryType is download.

expired boolean

Indicates whether the restore job expired.

expiresAt string

UTC ISO 8601 formatted point in time when the restore job expires.

finishedAt string

UTC ISO 8601 formatted point in time when the restore job completed.

id string

The unique identifier of the restore job.

oplogInc number
oplogTs number
pointInTimeUtcSeconds number
snapshotId string

Unique identifier of the source snapshot ID of the restore job.

targetClusterName string

Name of the target Atlas cluster to which the restore job restores the snapshot. Only visible if deliveryType is automated.

targetProjectId string

Name of the target Atlas project of the restore job. Only visible if deliveryType is automated.

timestamp string

Timestamp in ISO 8601 date and time format in UTC when the snapshot associated to snapshotId was taken.

cancelled bool

Indicates whether the restore job was canceled.

created_at str

UTC ISO 8601 formatted point in time when Atlas created the restore job.

delivery_type str

Type of restore job to create. Possible values are: automated and download.

delivery_urls Sequence[str]

One or more URLs for the compressed snapshot files for manual download. Only visible if deliveryType is download.

expired bool

Indicates whether the restore job expired.

expires_at str

UTC ISO 8601 formatted point in time when the restore job expires.

finished_at str

UTC ISO 8601 formatted point in time when the restore job completed.

id str

The unique identifier of the restore job.

oplog_inc int
oplog_ts int
point_in_time_utc_seconds int
snapshot_id str

Unique identifier of the source snapshot ID of the restore job.

target_cluster_name str

Name of the target Atlas cluster to which the restore job restores the snapshot. Only visible if deliveryType is automated.

target_project_id str

Name of the target Atlas project of the restore job. Only visible if deliveryType is automated.

timestamp str

Timestamp in ISO 8601 date and time format in UTC when the snapshot associated to snapshotId was taken.

cancelled Boolean

Indicates whether the restore job was canceled.

createdAt String

UTC ISO 8601 formatted point in time when Atlas created the restore job.

deliveryType String

Type of restore job to create. Possible values are: automated and download.

deliveryUrls List<String>

One or more URLs for the compressed snapshot files for manual download. Only visible if deliveryType is download.

expired Boolean

Indicates whether the restore job expired.

expiresAt String

UTC ISO 8601 formatted point in time when the restore job expires.

finishedAt String

UTC ISO 8601 formatted point in time when the restore job completed.

id String

The unique identifier of the restore job.

oplogInc Number
oplogTs Number
pointInTimeUtcSeconds Number
snapshotId String

Unique identifier of the source snapshot ID of the restore job.

targetClusterName String

Name of the target Atlas cluster to which the restore job restores the snapshot. Only visible if deliveryType is automated.

targetProjectId String

Name of the target Atlas project of the restore job. Only visible if deliveryType is automated.

timestamp String

Timestamp in ISO 8601 date and time format in UTC when the snapshot associated to snapshotId was taken.

Package Details

Repository
MongoDB Atlas pulumi/pulumi-mongodbatlas
License
Apache-2.0
Notes

This Pulumi package is based on the mongodbatlas Terraform Provider.