ports

package
v0.0.0-...-77c6198 Latest Latest
Warning

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

Go to latest
Published: Mar 6, 2026 License: GPL-3.0 Imports: 8 Imported by: 0

Documentation

Overview

Package ports is a generated GoMock package.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ResolveManagedRepo

func ResolveManagedRepo(ctx context.Context, repoStorage Persistence, managedRepoIdentifier string) (*model.RepositoryMetadata, error)

ResolveManagedRepo tenta encontrar um repositório usando diferentes estratégias Aceita: ID nativo, URI completa, ou nome (legacy) Útil durante período de migração onde clientes podem enviar formatos diferentes

Ordem de tentativa: 1. ID nativo (busca direta - mais rápido) 2. URI completa (query por repo_uri) 3. Nome (legacy - query por name)

Types

type MockRepository

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

MockRepository is a mock of Persistence interface.

func NewMockRepository

func NewMockRepository(ctrl *gomock.Controller) *MockRepository

NewMockRepository creates a new mock instance.

func (*MockRepository) AcquireBatch

func (m *MockRepository) AcquireBatch(ctx context.Context, repo string, stacks []string, user string, prNum int) error

AcquireBatch mocks base method.

func (*MockRepository) EXPECT

EXPECT returns an object that allows the caller to indicate expected use.

func (*MockRepository) GetDeployment

func (m *MockRepository) GetDeployment(ctx context.Context, id string) (*model.Deployment, error)

GetDeployment mocks base method.

func (*MockRepository) GetDeploymentByPR

func (m *MockRepository) GetDeploymentByPR(ctx context.Context, repo string, prNumber int) (*model.Deployment, error)

GetDeploymentByPR mocks base method.

func (*MockRepository) GetJob

func (m *MockRepository) GetJob(ctx context.Context, jobID string) (*model.Job, error)

GetJob mocks base method.

func (*MockRepository) GetRepositoryByID

func (m *MockRepository) GetRepositoryByID(ctx context.Context, id string) (*model.RepositoryMetadata, error)

GetRepositoryByID mocks base method.

func (*MockRepository) GetRepositoryByName

func (m *MockRepository) GetRepositoryByName(ctx context.Context, name string) (*model.RepositoryMetadata, error)

GetRepositoryByName mocks base method.

func (*MockRepository) GetRepositoryByURI

func (m *MockRepository) GetRepositoryByURI(ctx context.Context, uri string) (*model.RepositoryMetadata, error)

GetRepositoryByURI mocks base method.

func (*MockRepository) Release

func (m *MockRepository) Release(ctx context.Context, repo, stackPath string) error

Release mocks base method.

func (*MockRepository) ReleaseBatch

func (m *MockRepository) ReleaseBatch(ctx context.Context, repo string, prNum int) error

ReleaseBatch mocks base method.

func (*MockRepository) SaveDeployment

func (m *MockRepository) SaveDeployment(ctx context.Context, d *model.Deployment) error

SaveDeployment mocks base method.

func (*MockRepository) SaveJob

func (m *MockRepository) SaveJob(ctx context.Context, j model.Job) error

SaveJob mocks base method.

func (*MockRepository) SaveRepository

func (m *MockRepository) SaveRepository(ctx context.Context, r model.RepositoryMetadata) error

SaveRepository mocks base method.

func (*MockRepository) UpdateJobStatus

func (m *MockRepository) UpdateJobStatus(ctx context.Context, jobID string, status model.OpStatus) error

UpdateJobStatus mocks base method.

type MockRepositoryMockRecorder

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

MockRepositoryMockRecorder is the mock recorder for MockRepository.

func (*MockRepositoryMockRecorder) AcquireBatch

func (mr *MockRepositoryMockRecorder) AcquireBatch(ctx, repo, stacks, user, prNum any) *gomock.Call

AcquireBatch indicates an expected call of AcquireBatch.

func (*MockRepositoryMockRecorder) GetDeployment

func (mr *MockRepositoryMockRecorder) GetDeployment(ctx, id any) *gomock.Call

GetDeployment indicates an expected call of GetDeployment.

func (*MockRepositoryMockRecorder) GetDeploymentByPR

func (mr *MockRepositoryMockRecorder) GetDeploymentByPR(ctx, repo, prNumber any) *gomock.Call

GetDeploymentByPR indicates an expected call of GetDeploymentByPR.

func (*MockRepositoryMockRecorder) GetJob

func (mr *MockRepositoryMockRecorder) GetJob(ctx, jobID any) *gomock.Call

GetJob indicates an expected call of GetJob.

func (*MockRepositoryMockRecorder) GetRepositoryByID

func (mr *MockRepositoryMockRecorder) GetRepositoryByID(ctx, id any) *gomock.Call

GetRepositoryByID indicates an expected call of GetRepositoryByID.

func (*MockRepositoryMockRecorder) GetRepositoryByName

func (mr *MockRepositoryMockRecorder) GetRepositoryByName(ctx, name any) *gomock.Call

GetRepositoryByName indicates an expected call of GetRepositoryByName.

func (*MockRepositoryMockRecorder) GetRepositoryByURI

func (mr *MockRepositoryMockRecorder) GetRepositoryByURI(ctx, uri any) *gomock.Call

GetRepositoryByURI indicates an expected call of GetRepositoryByURI.

func (*MockRepositoryMockRecorder) Release

func (mr *MockRepositoryMockRecorder) Release(ctx, repo, stackPath any) *gomock.Call

Release indicates an expected call of Release.

func (*MockRepositoryMockRecorder) ReleaseBatch

func (mr *MockRepositoryMockRecorder) ReleaseBatch(ctx, repo, prNum any) *gomock.Call

ReleaseBatch indicates an expected call of ReleaseBatch.

func (*MockRepositoryMockRecorder) SaveDeployment

func (mr *MockRepositoryMockRecorder) SaveDeployment(ctx, d any) *gomock.Call

SaveDeployment indicates an expected call of SaveDeployment.

func (*MockRepositoryMockRecorder) SaveJob

func (mr *MockRepositoryMockRecorder) SaveJob(ctx, j any) *gomock.Call

SaveJob indicates an expected call of SaveJob.

func (*MockRepositoryMockRecorder) SaveRepository

func (mr *MockRepositoryMockRecorder) SaveRepository(ctx, r any) *gomock.Call

SaveRepository indicates an expected call of SaveRepository.

func (*MockRepositoryMockRecorder) UpdateJobStatus

func (mr *MockRepositoryMockRecorder) UpdateJobStatus(ctx, jobID, status any) *gomock.Call

UpdateJobStatus indicates an expected call of UpdateJobStatus.

type Persistence

type Persistence interface {
	SaveDeployment(ctx context.Context, d *model.Deployment) error
	GetDeployment(ctx context.Context, id string) (*model.Deployment, error)
	GetDeploymentByPR(ctx context.Context, repo string, prNumber int) (*model.Deployment, error)

	SaveJob(ctx context.Context, j model.Job) error
	GetJob(ctx context.Context, jobID string) (*model.Job, error)
	UpdateJobStatus(ctx context.Context, jobID string, status model.OpStatus) error

	// SaveRepository cria ou atualiza um repositório
	SaveRepository(ctx context.Context, r model.RepositoryMetadata) error

	// GetRepositoryByID busca repositório pelo ID nativo (chave primária)
	// ID = GUID do Azure, número do GitHub/GitLab
	GetRepositoryByID(ctx context.Context, id string) (*model.RepositoryMetadata, error)

	// GetRepositoryByName busca repositório pelo nome (busca secundária)
	// Pode retornar erro se houver múltiplos repos com mesmo nome
	GetRepositoryByName(ctx context.Context, name string) (*model.RepositoryMetadata, error)

	// GetRepositoryByURI busca repositório pela URI completa
	// Útil para migração e lookup durante transição
	GetRepositoryByURI(ctx context.Context, uri string) (*model.RepositoryMetadata, error)

	// AcquireBatch tenta adquirir locks para múltiplos stacks de um PR
	// Retorna erro se QUALQUER stack já estiver locked por outro PR
	// Se o mesmo PR chamar novamente, permite (re-lock/idempotente)
	AcquireBatch(ctx context.Context, repo string, stacks []string, user string, prNum int) error

	// Release libera o lock de um stack específico
	Release(ctx context.Context, repo, stackPath string) error

	// ReleaseBatch libera todos os locks de um PR específico
	// Usado quando PR é merged, closed, ou via comando /unlock
	ReleaseBatch(ctx context.Context, repo string, prNum int) error
}

Persistence gerencia persistência de dados e locks de stacks no Firestore

type PipelineOrchestrator

type PipelineOrchestrator interface {
	TriggerApply(ctx context.Context, req model.PipelineTriggerRequest) (string, error)
}

PipelineOrchestrator: Azure DevOps ou GitHub Actions

Jump to

Keyboard shortcuts

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