gcs

package
Version: v0.0.0-...-cae149e Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 14, 2020 License: MIT Imports: 17 Imported by: 0

README

Google Cloud Storage

GCS backend for QOR OSS

Usage

Set ENV GOOGLE_APPLICATION_CREDENTIALS to service account

import "github.com/qor/oss/gcs"

func main() {
  storage := gcs.New(gcs.Config{
    Bucket: "bucket",
    Endpoint: "https://storage.googleapis.com/",
  })

  // Save a reader interface into storage
  storage.Put("/sample.txt", reader)

  // Get file with path
  storage.Get("/sample.txt")

  // Get object as io.ReadCloser
  storage.GetStream("/sample.txt")

  // Delete file with path
  storage.Delete("/sample.txt")

  // List all objects under path
  storage.List("/")

  // Get Public Accessible URL (useful if current file saved privately)
  storage.GetURL("/sample.txt")
}

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Client

type Client struct {
	*storage.Client
	Config *Config
}

Client GCS storage

func New

func New(config *Config) *Client

New initialize GCS storage

func (Client) Delete

func (client Client) Delete(path string) error

Delete delete file

func (Client) Get

func (client Client) Get(path string) (file *os.File, err error)

Get receive file with given path

func (Client) GetEndpoint

func (client Client) GetEndpoint() string

GetEndpoint get endpoint, FileSystem's endpoint is /

func (Client) GetStream

func (client Client) GetStream(path string) (io.ReadCloser, error)

GetStream get file as stream

func (Client) GetURL

func (client Client) GetURL(path string) (string, error)

GetURL get public accessible URL

func (Client) List

func (client Client) List(path string) ([]*oss.Object, error)

List list all objects under current path

func (Client) Put

func (client Client) Put(urlPath string, reader io.Reader) (*oss.Object, error)

Put store a reader into given path

func (Client) ToRelativePath

func (client Client) ToRelativePath(urlPath string) string

ToRelativePath process path to relative path

type Config

type Config struct {
	Bucket   string
	Endpoint string
}

Config GCS client config

Source Files

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
t or T : Toggle theme light dark auto
y or Y : Canonical URL