mysql

package
v0.23.0 Latest Latest
Warning

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

Go to latest
Published: Mar 3, 2026 License: MIT Imports: 7 Imported by: 0

Documentation

Overview

Package mysql implements secret persistence for MySQL databases. It uses binary UUID marshalling for MySQL compatibility.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type MySQLSecretRepository

type MySQLSecretRepository struct {
	// contains filtered or unexported fields
}

MySQLSecretRepository implements Secret persistence for MySQL databases.

func NewMySQLSecretRepository

func NewMySQLSecretRepository(db *sql.DB) *MySQLSecretRepository

NewMySQLSecretRepository creates a new MySQL Secret repository instance.

func (*MySQLSecretRepository) Create

Create inserts a new secret into the MySQL database.

func (*MySQLSecretRepository) Delete

func (m *MySQLSecretRepository) Delete(ctx context.Context, path string) error

Delete performs a soft delete on all versions of a secret by path.

func (*MySQLSecretRepository) GetByPath

func (m *MySQLSecretRepository) GetByPath(
	ctx context.Context,
	path string,
) (*secretsDomain.Secret, error)

GetByPath retrieves the latest non-deleted version of a secret by its path.

func (*MySQLSecretRepository) GetByPathAndVersion

func (m *MySQLSecretRepository) GetByPathAndVersion(
	ctx context.Context,
	path string,
	version uint,
) (*secretsDomain.Secret, error)

GetByPathAndVersion retrieves a specific version of a secret by its path and version number.

func (*MySQLSecretRepository) List

func (m *MySQLSecretRepository) List(
	ctx context.Context,
	offset, limit int,
) ([]*secretsDomain.Secret, error)

List retrieves secrets ordered by path ascending with pagination.

Jump to

Keyboard shortcuts

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