Help us shape the future of Go! Take the 2026 Go Developer Survey

fakegcsserver

package module
v0.44.0 Latest Latest
Warning

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

Go to latest
Published: Aug 7, 2026 License: MIT Imports: 4 Imported by: 0

Documentation

Overview

Package fakegcsserver provides a Testcontainers module for the Fake GCS Server (https://github.com/fsouza/fake-gcs-server), a Google Cloud Storage API emulator for local development and testing. It exposes the GCS JSON API on port 4443 with an in-memory storage backend.

Package fakegcsserver — see package documentation in fakegcsserver.go.

Index

Examples

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Container

type Container struct {
	testcontainers.Container
	// contains filtered or unexported fields
}

Container represents the FakeGCSServer container type used in the module.

func Run

Run creates an instance of the FakeGCSServer container type.

Example

ExampleRun demonstrates how to start a FakeGCSServer container and retrieve its GCS-compatible storage URL.

package main

import (
	"context"
	"fmt"
	"log"

	"github.com/testcontainers/testcontainers-go"
	"github.com/testcontainers/testcontainers-go/modules/fakegcsserver"
)

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

	fakegcsserverContainer, err := fakegcsserver.Run(ctx, "fsouza/fake-gcs-server:1.47")
	defer func() {
		if err := testcontainers.TerminateContainer(fakegcsserverContainer); err != nil {
			log.Printf("failed to terminate container: %s", err)
		}
	}()
	if err != nil {
		log.Printf("failed to start container: %s", err)
		return
	}
	// }

	storageURL, err := fakegcsserverContainer.StorageURL(ctx)
	if err != nil {
		log.Printf("failed to get storage URL: %s", err)
		return
	}

	fmt.Println(storageURL != "")

}
Output:
true

func (*Container) StorageURL

func (c *Container) StorageURL(ctx context.Context) (string, error)

StorageURL returns the GCS-compatible storage URL for the container. The URL is in the form: <scheme>://<host>:<port>/storage/v1 where scheme matches the value passed to WithScheme (default "http").

type Option

type Option func(*options) error

Option is an option for the FakeGCSServer container.

func WithScheme

func WithScheme(scheme string) Option

WithScheme sets the scheme used by the fake-gcs-server. Valid values are "http" (default) and "https".

Note: "-scheme both" is not supported because it requires a second port (default 8000) for HTTP in addition to the HTTPS port (4443) and this module only exposes 4443/tcp.

func (Option) Customize

Customize is a NOOP. It's defined to satisfy the testcontainers.ContainerCustomizer interface.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL