racerobject

package
v0.23.0 Latest Latest
Warning

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

Go to latest
Published: Nov 9, 2026 License: Apache-2.0 Imports: 13 Imported by: 0

Documentation

Overview

Package racerobject serves cached objects to pods through a racersdk client with an S3 or Azure Blob compatible sidecar HTTP handler. The Racer dataplane reads the upstream Azure Blob container itself.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewRequest

func NewRequest(bucket, key, versionID string) (racersdk.Request, error)

NewRequest hashes canonical schema-1 JSON and carries it as origin metadata. Keys and version IDs are never cleaned, decoded, or normalized.

func NewSidecar

func NewSidecar(client *racersdk.Client, config SidecarConfig) (http.Handler, error)

NewSidecar serves a read-only, trusted pod endpoint. The caller owns the client and must bind the server to loopback. Authorization is ignored, not verified or forwarded. Signed query parameters and unsupported operations are rejected. Only known auth/plumbing provider headers and supported read headers are accepted. Install this handler directly: a path-cleaning mux changes object identities.

func ParseAzureContainerURL added in v0.17.0

func ParseAzureContainerURL(value, credential string) (accountURL, container string, err error)

ParseAzureContainerURL splits an Azure Blob container URL into the account URL and the container name. The last path segment is the container; what precedes it must be a valid account URL (see ValidateAzureAccountURL), so Azurite-style URLs such as http://127.0.0.1:10000/account/container work. credential is "default" or "anonymous"; the default credential requires HTTPS.

func ValidAzureContainerName added in v0.17.0

func ValidAzureContainerName(name string) bool

ValidAzureContainerName reports whether name follows the Azure Blob container naming rules: 3 to 63 lowercase letters, digits, and single hyphens, starting and ending with a letter or digit.

func ValidateAzureAccountURL added in v0.17.0

func ValidateAzureAccountURL(value, credential string) error

ValidateAzureAccountURL checks an Azure Blob account URL for the origin. credential is "default" or "anonymous"; the default credential requires HTTPS. Azurite-style URLs may carry one simple account path segment.

func ValidateBucket added in v0.17.0

func ValidateBucket(bucket string) error

ValidateBucket reports whether an origin accepts bucket, so callers that render origin flags can reject it before the origin starts.

Types

type Object

type Object struct {
	Schema    int    `json:"schema"`
	Bucket    string `json:"bucket"`
	Key       string `json:"key"`
	VersionID string `json:"versionId,omitempty"`
}

Object identifies an exact upstream object in the origin's bucket.

type SidecarConfig

type SidecarConfig struct {
	// API selects s3 (the default) or azure. Buckets name Azure containers.
	API string
}

SidecarConfig selects the sidecar API. The sidecar forwards every bucket; the Racer dataplane enforces the cache's configured container.

Jump to

Keyboard shortcuts

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