From c636df34390197e0382ce1752b0896136b807751 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Simon=20St=C3=B8vring?= Date: Thu, 15 Jun 2023 14:28:00 +0200 Subject: [PATCH] Adds more logging --- .../EphemeralTartVirtualMachine.swift | 11 +++++++++++ .../VirtualMachineFleetLive.swift | 1 + 2 files changed, 12 insertions(+) diff --git a/Packages/TartVirtualMachine/Sources/EphemeralTartVirtualMachine/EphemeralTartVirtualMachine.swift b/Packages/TartVirtualMachine/Sources/EphemeralTartVirtualMachine/EphemeralTartVirtualMachine.swift index dfec800..6d1cb6b 100644 --- a/Packages/TartVirtualMachine/Sources/EphemeralTartVirtualMachine/EphemeralTartVirtualMachine.swift +++ b/Packages/TartVirtualMachine/Sources/EphemeralTartVirtualMachine/EphemeralTartVirtualMachine.swift @@ -1,5 +1,7 @@ import Combine import Foundation +import LogHelpers +import OSLog import Tart import TartDirectoryHelpers import VirtualMachine @@ -17,6 +19,7 @@ public final class EphemeralTartVirtualMachine: VirtualMachine { private let resourcesDirectoryURL: URL private let onCleanup: CleanupHandler private var runTask: Task<(), Error>? + private let logger = Logger(category: "EphemeralTartVirtualMachine") public init( tart: Tart, @@ -33,8 +36,16 @@ public final class EphemeralTartVirtualMachine: VirtualMachine { } public func start() async throws { + defer { + onCleanup() + } + let sourceVMName = sourceVMName + let destinationVMName = destinationVMName + logger.info("Clone Tart image named \(sourceVMName, privacy: .public) to \(destinationVMName, privacy: .public)...") try await tart.clone(sourceName: sourceVMName, newName: destinationVMName) + logger.info("Run Tart image named \(destinationVMName, privacy: .public)...") try await tart.run(name: destinationVMName, mounting: [.resources(at: resourcesDirectoryURL)]) + logger.info("Delete Tart image named \(destinationVMName, privacy: .public)...") try await tart.delete(name: destinationVMName) onCleanup() } diff --git a/Packages/VirtualMachine/Sources/VirtualMachineFleetLive/VirtualMachineFleetLive.swift b/Packages/VirtualMachine/Sources/VirtualMachineFleetLive/VirtualMachineFleetLive.swift index a6ffd78..cbcd602 100644 --- a/Packages/VirtualMachine/Sources/VirtualMachineFleetLive/VirtualMachineFleetLive.swift +++ b/Packages/VirtualMachine/Sources/VirtualMachineFleetLive/VirtualMachineFleetLive.swift @@ -50,6 +50,7 @@ private extension VirtualMachineFleetLive { } else { logger.info("Task running virtual machine named \(name, privacy: .public) was cancelled.") } + logger.info("Task running virtual machine named \(name, privacy: .public) was cancelled.") } activeTasks.append(task) }