LocationObjectStorage class

Manages a Object Storage Location within AWS DataSync.

> NOTE: The DataSync Agents must be available before creating this resource.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";

const example = new aws.datasync.LocationObjectStorage("example", {
    agentArns: [exampleAwsDatasyncAgent.arn],
    serverHostname: "example",
    bucketName: "example",
});
import pulumi
import pulumi_aws as aws

example = aws.datasync.LocationObjectStorage("example",
    agent_arns=[example_aws_datasync_agent["arn"]],
    server_hostname="example",
    bucket_name="example")
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;

return await Deployment.RunAsync(() =>
{
    var example = new Aws.DataSync.LocationObjectStorage("example", new()
    {
        AgentArns = new[]
        {
            exampleAwsDatasyncAgent.Arn,
        },
        ServerHostname = "example",
        BucketName = "example",
    });

});
package main

import (
	"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/datasync"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := datasync.NewLocationObjectStorage(ctx, "example", &datasync.LocationObjectStorageArgs{
			AgentArns: pulumi.StringArray{
				exampleAwsDatasyncAgent.Arn,
			},
			ServerHostname: pulumi.String("example"),
			BucketName:     pulumi.String("example"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}
pulumi {
  required_providers {
    aws = {
      source = "pulumi/aws"
    }
  }
}

resource "aws_datasync_locationobjectstorage" "example" {
  agent_arns      = [exampleAwsDatasyncAgent.arn]
  server_hostname = "example"
  bucket_name     = "example"
}
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.datasync.LocationObjectStorage;
import com.pulumi.aws.datasync.LocationObjectStorageArgs;
import java.util.ArrayList;
import java.util.Arrays;
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 example = new LocationObjectStorage("example", LocationObjectStorageArgs.builder()
            .agentArns(exampleAwsDatasyncAgent.arn())
            .serverHostname("example")
            .bucketName("example")
            .build());

    }
}
resources:
  example:
    type: aws:datasync:LocationObjectStorage
    properties:
      agentArns:
        - ${exampleAwsDatasyncAgent.arn}
      serverHostname: example
      bucketName: example

Import

Identity Schema

Required

  • arn (String) ARN of the DataSync object storage location.

Using pulumi import, import aws.datasync.LocationObjectStorage using the ARN. For example:

$ pulumi import aws:datasync/locationObjectStorage:LocationObjectStorage example arn:aws:datasync:us-east-1:123456789012:location/loc-12345678901234567

Constructors

LocationObjectStorage(String name, {LocationObjectStorageArgs? args, CustomResourceOptions? options})
Creates a new LocationObjectStorage. name The Pulumi resource name. args Arguments used to configure this LocationObjectStorage. The set of arguments for LocationObjectStorage. options Resource options controlling this resource's behavior.
LocationObjectStorage.reference(String urn)
Creates a typed reference to an existing LocationObjectStorage resource.

Properties

accessKey ↔ Output<String?>
The access key is used if credentials are required to access the self-managed object storage server. If your object storage requires a user name and password to authenticate, use accessKey and secretKey to provide the user name and password, respectively.
latefinal
agentArns ↔ Output<List<String>?>
A list of DataSync Agent ARNs with which this location will be associated. For agentless cross-cloud transfers, this parameter does not need to be specified.
latefinal
arn ↔ Output<String>
ARN of the DataSync Location.
latefinal
bucketName ↔ Output<String>
The bucket on the self-managed object storage server that is used to read data from.
latefinal
childResources Set<Resource>
finalinherited
completionSources Map<String, IOutputCompletionSource>
latefinalinherited
hashCode int
The hash code for this object.
no setterinherited
id ↔ Output<String>
getter/setter pairinherited
isCustom bool
Returns whether this resource is provider-managed.
no setterinherited
isProtected bool
Returns whether this resource is protected from deletion.
no setterinherited
isRemote bool
Whether this resource is registered as remote.
no setterinherited
isResourceReference bool
Whether this instance represents a resource value returned over RPC.
finalinherited
region ↔ Output<String>
Region where this resource will be managed. Defaults to the Region set in the provider configuration.
latefinal
resourceTransforms List<ResourceTransform>
Inherited/explicit async transforms.
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
secretKey ↔ Output<String?>
The secret key is used if credentials are required to access the self-managed object storage server. If your object storage requires a user name and password to authenticate, use accessKey and secretKey to provide the user name and password, respectively.
latefinal
serverCertificate ↔ Output<String?>
Specifies a certificate to authenticate with an object storage system that uses a private or self-signed certificate authority (CA). You must specify a Base64-encoded .pem string. The certificate can be up to 32768 bytes (before Base64 encoding).
latefinal
serverHostname ↔ Output<String>
The name of the self-managed object storage server. This value is the IP address or Domain Name Service (DNS) name of the object storage server. An agent uses this host name to mount the object storage server in a network.
latefinal
serverPort ↔ Output<int?>
The port that your self-managed object storage server accepts inbound network traffic on. The server port is set by default to TCP 80 (HTTP) or TCP 443 (HTTPS). You can specify a custom port if your self-managed object storage server requires one.
latefinal
serverProtocol ↔ Output<String?>
The protocol that the object storage server uses to communicate. Valid values are HTTP or HTTPS.
latefinal
subdirectory ↔ Output<String>
A subdirectory in the HDFS cluster. This subdirectory is used to read data from or write data to the HDFS cluster. If the subdirectory isn't specified, it will default to /.
latefinal
tags ↔ Output<Map<String, String>?>
Key-value pairs of resource tags to assign to the DataSync Location. If configured with a provider defaultTags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
latefinal
tagsAll ↔ Output<Map<String, String>>
A map of tags assigned to the resource, including those inherited from the provider defaultTags configuration block.
latefinal
transformations List<ResourceTransformation>
Inherited/explicit legacy transformations.
no setterinherited
uri ↔ Output<String>
The URL of the Object Storage location that was described.
latefinal
urn ↔ Output<String>
latefinalinherited

Methods

failId(Object error) → void
Completes this resource ID with an error when registration fails.
inherited
failOutputs(Object error) → void
Completes all output properties with error.
inherited
failUrn(Object error) → void
Completes this resource URN with an error when registration fails.
inherited
getProvider(String moduleMember) → ProviderResource?
Returns provider for moduleMember's package, if configured.
inherited
getResourceName() String
Returns this resource's logical name.
inherited
getResourceType() String
Returns this resource's Pulumi type token.
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
registerOutput<T>(String propertyName, {Object? decoder(Object?)?, bool isSecret = false}) → Output<T>
Registers a dynamic output property for this resource.
inherited
resolveId(String? value, {required bool isKnown}) → void
Resolves the provider-assigned ID for this resource.
inherited
resolveOutputs(Struct outputs) → void
Resolves all output properties from a monitor response payload.
inherited
resolveUrn(String value) → void
Resolves this resource's URN once assigned by the engine.
inherited
serializeProperties(Map<String, dynamic> properties) Future<Struct>
Serializes resource properties for RPC transmission.
inherited
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited

Static Methods

get(String name, Input<String> id, {LocationObjectStorageState? state, CustomResourceOptions? options}) LocationObjectStorage
Gets an existing LocationObjectStorage resource's state with the given name and id.