Skip to content

Protocol

Action

A discrete, composable unit of work in the release pipeline.

protocol Action : Sendable

Overview

Actions are the fundamental building block of ShipItSwifty. Each action performs a single well-defined task (build, sign, upload, etc.) and can be composed into workflows for release automation.

Conformance

Provide a human-readable name, declare Options for configuration, and implement run(with:context:) to perform the work.

Example

struct MyAction: Action {
    static let name = "my-action"
    static let description = "Does something useful"
    struct Options: Codable, Sendable { var verbose: Bool = false }
    struct Result: Codable, Sendable { var message: String }
    func run(with options: Options, context: ActionContext) async throws -> Result {
        return Result(message: "Done!")
    }
}

Topics

Associated Types

Instance Methods

Type Properties

Relationships

Inherits From

  • Swift.Sendable
  • Swift.SendableMetatype