gocloud.devgocloud.dev/aws/rds Index | Files

package rds

import "gocloud.dev/aws/rds"

Package rds contains Wire providers that are common across RDS.

Index

Variables

var CertFetcherSet = wire.NewSet(
	wire.Struct(new(CertFetcher), "Client"),
	wire.Bind(new(CertPoolProvider), new(*CertFetcher)),
)

CertFetcherSet is a Wire provider set that provides the RDS certificate pool by pulling from Amazon's servers.

Types

type CertFetcher

type CertFetcher struct {
	// Client is the HTTP client used to make requests. If nil, then
	// http.DefaultClient is used.
	Client *http.Client
}

CertFetcher pulls the RDS CA certificates from Amazon's servers. The zero value will fetch certificates using the default HTTP client.

func (*CertFetcher) Fetch

func (cf *CertFetcher) Fetch(ctx context.Context) ([]*x509.Certificate, error)

Fetch fetches the RDS CA certificates. It is safe to call from multiple goroutines.

func (*CertFetcher) RDSCertPool

func (cf *CertFetcher) RDSCertPool(ctx context.Context) (*x509.CertPool, error)

RDSCertPool fetches the RDS CA certificates and places them into a pool. It is safe to call from multiple goroutines.

type CertPoolProvider

type CertPoolProvider interface {
	RDSCertPool(context.Context) (*x509.CertPool, error)
}

A CertPoolProvider obtains a certificate pool that contains the RDS CA certificate.

Source Files

rds.go

Version
v0.41.0 (latest)
Published
Mar 30, 2025
Platform
linux/amd64
Imports
8 packages
Last checked
15 hours ago

Tools for package owners.