Files
zeekay 0c2f028a8c Generate the Swift client, which this copy did not carry
The forge tree held the package scaffolding and none of the generated sources —
2,435 files of APIs, Models and Infrastructure, including BaseAPI, were simply
absent, so anything depending on this copy had a package that compiled to
nothing usable.

Generated from the current API document rather than reconciled with the other
copy: a client is a function of the spec, so regenerating answers "which history
wins" without anyone having to choose. .spec-lock records which document, so the
next reader can tell.
2026-08-23 10:04:41 -07:00

51 lines
2.1 KiB
Swift

//
// GitOpsOperation.swift
//
// Generated by openapi-generator
// https://openapi-generator.tech
//
import Foundation
public struct GitOpsOperation: Sendable, Codable, ParameterConvertible, Hashable {
/** FinishedAt is when it ended, RFC 3339. Absent while the phase is Running. */
public var finishedAt: String?
/** Message is CD's account of the phase — \"successfully synced (all tasks run)\" for a Succeeded operation, the reason it stopped for a Failed one. */
public var message: String?
/** Phase is how the last sync operation ended, in CD's own vocabulary: Running, Succeeded or Failed. It is never empty — an Application whose phase is empty has no operation at all and omits this whole object. */
public var phase: String?
/** Revision is the commit this operation ATTEMPTED (operationState.syncResult). It differs from the Application's own revision exactly when the attempt did not land: revision is the last commit CD got applied, this is the last one it tried. */
public var revision: String?
/** StartedAt is when the operation began, RFC 3339. */
public var startedAt: String?
public init(finishedAt: String? = nil, message: String? = nil, phase: String? = nil, revision: String? = nil, startedAt: String? = nil) {
self.finishedAt = finishedAt
self.message = message
self.phase = phase
self.revision = revision
self.startedAt = startedAt
}
public enum CodingKeys: String, CodingKey, CaseIterable {
case finishedAt
case message
case phase
case revision
case startedAt
}
// Encodable protocol methods
public func encode(to encoder: Encoder) throws {
var container = encoder.container(keyedBy: CodingKeys.self)
try container.encodeIfPresent(finishedAt, forKey: .finishedAt)
try container.encodeIfPresent(message, forKey: .message)
try container.encodeIfPresent(phase, forKey: .phase)
try container.encodeIfPresent(revision, forKey: .revision)
try container.encodeIfPresent(startedAt, forKey: .startedAt)
}
}