gocloud.devgocloud.dev/blob/s3blob Index | Examples | Files

package s3blob

import "gocloud.dev/blob/s3blob"

Package s3blob provides a blob implementation that uses S3. Use OpenBucket to construct a blob.Bucket.

Open URLs

For blob.Open URLs, s3blob registers for the scheme "s3"; URLs start with "s3://".

The URL's Host is used as the bucket name. The AWS session is created as described in https://docs.aws.amazon.com/sdk-for-go/api/aws/session/. The following query options are supported:

Example URL:

s3://mybucket?region=us-east-1

As

s3blob exposes the following types for As:

Example

Code:play 

package main

import (
	"context"

	"github.com/aws/aws-sdk-go/aws/session"
	"gocloud.dev/blob/s3blob"
)

func main() {
	ctx := context.Background()

	// Create an AWS session.
	// This example uses defaults for finding credentials, which region to use,
	// etc.
	// See https://docs.aws.amazon.com/sdk-for-go/api/aws/session/
	// for more info on available options.
	sess, err := session.NewSession()
	if err != nil {
		// Handle errror.
		return
	}

	// Create a *blob.Bucket.
	_, _ = s3blob.OpenBucket(ctx, "my-bucket", sess, nil)

}

Index

Examples

Functions

func OpenBucket

func OpenBucket(ctx context.Context, bucketName string, sess client.ConfigProvider, opts *Options) (*blob.Bucket, error)

OpenBucket returns a *blob.Bucket backed by S3. See the package documentation for an example.

Types

type Options

type Options struct{}

Options sets options for constructing a *blob.Bucket backed by fileblob.

Source Files

s3blob.go

Version
v0.8.0
Published
Dec 13, 2018
Platform
js/wasm
Imports
18 packages
Last checked
5 hours ago

Tools for package owners.