mirror of
https://github.com/hanzoai/swift-sdk.git
synced 2026-10-30 18:20:19 +00:00
The projection these were generated from predated the compute migration, so they described /v1/visor — which the API serves at zero paths now. No /v1/visor path survives here.
74 lines
3.1 KiB
Swift
74 lines
3.1 KiB
Swift
//
|
|
// ProjectsComplete.swift
|
|
//
|
|
// Generated by openapi-generator
|
|
// https://openapi-generator.tech
|
|
//
|
|
|
|
import Foundation
|
|
|
|
public struct ProjectsComplete: Sendable, Codable, ParameterConvertible, Hashable {
|
|
|
|
/** Bytes is their total size in bytes. */
|
|
public var bytes: Int64?
|
|
/** Commit is the revision that was built, recorded on the deployment. */
|
|
public var commit: String?
|
|
/** Files is how many objects CI published. */
|
|
public var files: Int64?
|
|
/** ID is the queued deployment to complete, from the path. */
|
|
public var id: String?
|
|
/** Keys is the manifest CI just uploaded, RELATIVE to the deployment prefix. It is what replaces `aws s3 sync --delete`: an upload grant authorizes writes only, so CI cannot remove a file, and cloud reconciles the prefix against this list instead (grant.go). Omit it and nothing is deleted — the prefix only grows, which is the old pre-grant behaviour and a safe default. */
|
|
public var keys: [String]?
|
|
/** LiveURL is a HINT at the address the site should serve at. The public host is claimed by cloud first, so this can refine the URL a deployment reports but can never assert a subdomain another tenant holds. */
|
|
public var liveUrl: String?
|
|
/** Message is what happened, in words — on an error completion, why it failed. */
|
|
public var message: String?
|
|
/** Slug is the project the deployment belongs to, from the path. */
|
|
public var slug: String?
|
|
/** Status is how the build ended: `live` if it succeeded, `error` if it did not. Nothing else is accepted. */
|
|
public var status: String?
|
|
|
|
public init(bytes: Int64? = nil, commit: String? = nil, files: Int64? = nil, id: String? = nil, keys: [String]? = nil, liveUrl: String? = nil, message: String? = nil, slug: String? = nil, status: String? = nil) {
|
|
self.bytes = bytes
|
|
self.commit = commit
|
|
self.files = files
|
|
self.id = id
|
|
self.keys = keys
|
|
self.liveUrl = liveUrl
|
|
self.message = message
|
|
self.slug = slug
|
|
self.status = status
|
|
}
|
|
|
|
public enum CodingKeys: String, CodingKey, CaseIterable {
|
|
case bytes
|
|
case commit
|
|
case files
|
|
case id
|
|
case keys
|
|
case liveUrl
|
|
case message
|
|
case slug
|
|
case status
|
|
}
|
|
|
|
// Encodable protocol methods
|
|
|
|
public func encode(to encoder: Encoder) throws {
|
|
var container = encoder.container(keyedBy: CodingKeys.self)
|
|
try container.encodeIfPresent(bytes, forKey: .bytes)
|
|
try container.encodeIfPresent(commit, forKey: .commit)
|
|
try container.encodeIfPresent(files, forKey: .files)
|
|
try container.encodeIfPresent(id, forKey: .id)
|
|
try container.encodeIfPresent(keys, forKey: .keys)
|
|
try container.encodeIfPresent(liveUrl, forKey: .liveUrl)
|
|
try container.encodeIfPresent(message, forKey: .message)
|
|
try container.encodeIfPresent(slug, forKey: .slug)
|
|
try container.encodeIfPresent(status, forKey: .status)
|
|
}
|
|
}
|
|
|
|
|
|
@available(iOS 13, tvOS 13, watchOS 6, macOS 10.15, *)
|
|
extension ProjectsComplete: Identifiable {}
|