feat: Fixes not creating default config directory

This commit is contained in:
2024-12-12 12:37:14 -05:00
parent 7b30b78b67
commit 56a0bca00c
6 changed files with 85 additions and 35 deletions

View File

@@ -1,6 +1,7 @@
import ArgumentParser
import CliClient
import CliDoc
import ConfigurationClient
import Dependencies
struct GenerateConfigurationCommand: AsyncParsableCommand {
@@ -42,32 +43,39 @@ struct GenerateConfigurationCommand: AsyncParsableCommand {
)
var json: Bool = false
@Flag(
name: .shortAndLong,
help: "Force generation, overwriting a file if it exists."
)
var force: Bool = false
@OptionGroup var globals: BasicGlobalOptions
mutating func run() async throws {
try await _run()
}
// FIX:
private func _run() async throws {
@Dependency(\.cliClient) var cliClient
@Dependency(\.configurationClient) var configurationClient
try await cliClient.withLogger(globals.loggingOptions(commandName: Self.commandName)) {
let actualPath: String
@Dependency(\.logger) var logger
// if let path {
// actualPath = "\(path)/config"
// } else {
// let path = "~/.config/hpa-playbook/"
// try await cliClient.runCommand(
// quiet: false,
// shell: globals.shellOrDefault,
// "mkdir", "-p", path
// )
// actualPath = "\(path)/config"
// }
let actualPath: File
fatalError()
// try cliClient.createConfiguration(actualPath, json)
if let path, let file = File("\(path)/config.\(json ? "json" : "toml")") {
actualPath = file
} else {
actualPath = .default
}
logger.debug("Generating config at path: \(actualPath.path)")
try await configurationClient.generate(
at: actualPath,
force: force
)
}
}
}