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

registry

package
v1.321.0 Latest Latest
Warning

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

Go to latest
Published: Oct 27, 2026 License: AGPL-3.0 Imports: 5 Imported by: 0

Documentation

Overview

SPDX-FileCopyrightText: 2025 Forkbomb BV

SPDX-License-Identifier: AGPL-3.0-or-later

Index

Constants

This section is empty.

Variables

View Source
var PipelineInternalRegistry = map[string]TaskFactory{
	"openidnet-logs": {
		Kind:    TaskWorkflow,
		NewFunc: func(core.App) any { return workflows.NewOpenID4VPWalletLogsWorkflow() },
	},
	"ewc-status": {
		Kind:    TaskWorkflow,
		NewFunc: func(core.App) any { return workflows.NewEWCStatusWorkflow() },
	},
	"webuild-status": {
		Kind:    TaskWorkflow,
		NewFunc: func(core.App) any { return workflows.NewWebuildStatusWorkflow() },
	},
	"check-file-exists": {
		Kind:       TaskActivity,
		NewFunc:    func(core.App) any { return activities.NewCheckFileExistsActivity() },
		OutputKind: workflowengine.OutputBool,
	},
	"scheduled-pipeline-enqueue": {
		Kind:    TaskWorkflow,
		NewFunc: func(core.App) any { return workflows.NewScheduledPipelineEnqueueWorkflow() },
	},
	"mobile-device-semaphore-done": {
		Kind:        TaskActivity,
		NewFunc:     func(core.App) any { return activities.NewReportMobileDeviceSemaphoreDoneActivity() },
		PayloadType: reflect.TypeOf(activities.ReportMobileDeviceSemaphoreDoneInput{}),
		OutputKind:  workflowengine.OutputAny,
	},
	"pipeline-run-ticket-enqueue": {
		Kind:        TaskActivity,
		NewFunc:     func(core.App) any { return activities.NewEnqueuePipelineRunTicketActivity() },
		PayloadType: reflect.TypeOf(activities.EnqueuePipelineRunTicketActivityInput{}),
		OutputKind:  workflowengine.OutputAny,
	},
	"mobile-runner-http-request": {
		Kind:        TaskActivity,
		NewFunc:     func(app core.App) any { return activities.NewMobileRunnerHTTPActivity(app) },
		PayloadType: reflect.TypeOf(activities.MobileRunnerHTTPActivityPayload{}),
		OutputKind:  workflowengine.OutputMap,
	},
	"pipeline-evidence-extraction": {
		Kind:        TaskActivity,
		NewFunc:     func(app core.App) any { return activities.NewPipelineEvidenceExtractionActivity(app) },
		PayloadType: reflect.TypeOf(activities.PipelineEvidenceExtractionInput{}),
		OutputKind:  workflowengine.OutputMap,
	},
	"pipeline-report-generation": {
		Kind: TaskActivity,
		NewFunc: func(app core.App) any {
			return activities.NewPipelineReportGenerationActivity(app, StepActivityOutputKind)
		},
		PayloadType: reflect.TypeOf(activities.PipelineReportGenerationInput{}),
		OutputKind:  workflowengine.OutputMap,
	},
	"pipeline-completion-notification": {
		Kind: TaskActivity,
		NewFunc: func(app core.App) any {
			return activities.NewSendPipelineCompletionNotificationActivity(app)
		},
		PayloadType: reflect.TypeOf(activities.SendPipelineCompletionNotificationInput{}),
		OutputKind:  workflowengine.OutputAny,
	},
}
View Source
var Registry = map[string]TaskFactory{
	"http-request": {
		Kind:        TaskActivity,
		NewFunc:     func(core.App) any { return activities.NewHTTPActivity() },
		PayloadType: reflect.TypeOf(activities.HTTPActivityPayload{}),
		OutputKind:  workflowengine.OutputMap,
	},
	"email": {
		Kind:        TaskActivity,
		NewFunc:     func(core.App) any { return activities.NewSendMailActivity() },
		PayloadType: reflect.TypeOf(activities.SendMailActivityPayload{}),
		OutputKind:  workflowengine.OutputString,
	},
	"rest-chain": {
		Kind:                TaskActivity,
		NewFunc:             func(core.App) any { return activities.NewStepCIWorkflowActivity() },
		PayloadType:         reflect.TypeOf(activities.StepCIWorkflowActivityPayload{}),
		OutputKind:          workflowengine.OutputMap,
		InheritedConfigKeys: []string{"template"},
	},
	"json-parse": {
		Kind: TaskActivity,
		NewFunc: func(core.App) any {
			return activities.NewJSONActivity(map[string]reflect.Type{
				"map": reflect.TypeOf(
					map[string]any{},
				),
			})
		},
		PayloadType: reflect.TypeOf(activities.JSONActivityPayload{}),
		OutputKind:  workflowengine.OutputMap,
	},
	"jsonschema-validation": {
		Kind:        TaskActivity,
		NewFunc:     func(core.App) any { return activities.NewSchemaValidationActivity() },
		PayloadType: reflect.TypeOf(activities.SchemaValidationActivityPayload{}),
		OutputKind:  workflowengine.OutputMap,
	},
	"credential-issuer-validation": {
		Kind:        TaskActivity,
		NewFunc:     func(core.App) any { return activities.NewCheckCredentialsIssuerActivity() },
		PayloadType: reflect.TypeOf(activities.CheckCredentialsIssuerActivityPayload{}),
		OutputKind:  workflowengine.OutputMap,
	},
	"cesr-parse": {
		Kind:        TaskActivity,
		NewFunc:     func(core.App) any { return activities.NewCESRParsingActivity() },
		PayloadType: reflect.TypeOf(activities.CESRParsingActivityPayload{}),
		OutputKind:  workflowengine.OutputMap,
	},
	"cesr-validate": {
		Kind:        TaskActivity,
		NewFunc:     func(core.App) any { return activities.NewCESRValidateActivity() },
		PayloadType: reflect.TypeOf(activities.CesrValidateActivityPayload{}),
		OutputKind:  workflowengine.OutputAny,
	},
	"appstore-url-validation": {
		Kind:        TaskActivity,
		NewFunc:     func(core.App) any { return activities.NewParseWalletURLActivity() },
		PayloadType: reflect.TypeOf(activities.ParseWalletURLActivityPayload{}),
		OutputKind:  workflowengine.OutputMap,
	},
	"mobile-automation": {
		Kind:                TaskWorkflow,
		NewFunc:             func(core.App) any { return workflows.NewMobileAutomationWorkflow() },
		PayloadType:         reflect.TypeOf(workflows.MobileAutomationWorkflowPayload{}),
		PipelinePayloadType: reflect.TypeOf(workflows.MobileAutomationWorkflowPipelinePayload{}),
	},
	"custom-check": {
		Kind:        TaskWorkflow,
		NewFunc:     func(core.App) any { return workflows.NewCustomCheckWorkflow() },
		PayloadType: reflect.TypeOf(workflows.CustomCheckWorkflowPayload{}),
	},
	"credential-offer": {
		Kind:        TaskWorkflow,
		NewFunc:     func(core.App) any { return workflows.NewGetCredentialOfferWorkflow() },
		PayloadType: reflect.TypeOf(workflows.GetCredentialOfferWorkflowPayload{}),
	},
	"conformance-check": {
		Kind:                TaskWorkflow,
		NewFunc:             func(core.App) any { return workflows.NewStartCheckWorkflow() },
		PayloadType:         reflect.TypeOf(workflows.StartCheckWorkflowPayload{}),
		PipelinePayloadType: reflect.TypeOf(workflows.StartCheckWorkflowPipelinePayload{}),
	},
	"fcaf-validation": {
		Kind: TaskActivity,
		NewFunc: func(app core.App) any {
			return activities.NewFCAFValidationActivity(app, StepActivityOutputKind)
		},
		PayloadType: reflect.TypeOf(activities.FCAFValidationActivityInput{}),
		OutputKind:  workflowengine.OutputMap,
		InheritedConfigKeys: []string{
			workflowengine.TelemetryRootWorkflowIDKey,
			workflowengine.TelemetryRootRunIDKey,
		},
	},
	"use-case-verification-deeplink": {
		Kind:        TaskWorkflow,
		NewFunc:     func(core.App) any { return workflows.NewGetUseCaseVerificationDeeplinkWorkflow() },
		PayloadType: reflect.TypeOf(workflows.GetUseCaseVerificationDeeplinkWorkflowPayload{}),
	},
}

Registry maps activity keys to their factory.

Functions

func StepActivityOutputKind

func StepActivityOutputKind(use string) (workflowengine.OutputKind, bool)

StepActivityOutputKind reports the output kind of the step-usable activity `use`.

Types

type TaskFactory

type TaskFactory struct {
	Kind                TaskKind
	NewFunc             func(app core.App) any
	PayloadType         reflect.Type
	PipelinePayloadType reflect.Type
	OutputKind          workflowengine.OutputKind
	CustomTaskQueue     bool
	// InheritedConfigKeys lists the workflow-level config keys copied into this
	// activity's input config. Other workflow-level keys stay out of the input.
	InheritedConfigKeys []string
}

type TaskKind

type TaskKind int
const (
	TaskActivity TaskKind = iota
	TaskWorkflow
)

Jump to

Keyboard shortcuts

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