wip
This commit is contained in:
34
Sources/git-version-builder/GitVersionBuilder.swift
Normal file
34
Sources/git-version-builder/GitVersionBuilder.swift
Normal file
@@ -0,0 +1,34 @@
|
||||
import ArgumentParser
|
||||
import Dependencies
|
||||
import GitVersion
|
||||
import ShellClient
|
||||
|
||||
@main
|
||||
public struct GitVersionBuilder: AsyncParsableCommand {
|
||||
|
||||
public init() { }
|
||||
|
||||
@Argument
|
||||
var input: String
|
||||
|
||||
@Argument
|
||||
var output: String
|
||||
|
||||
public func run() async throws {
|
||||
@Dependency(\.logger) var logger
|
||||
@Dependency(\.fileClient) var fileClient
|
||||
@Dependency(\.shellClient) var shell: ShellClient
|
||||
|
||||
logger.debug("Building with input file: \(input)")
|
||||
logger.debug("Output file: \(output)")
|
||||
|
||||
try shell.replacingNilWithVersionString(
|
||||
in: input
|
||||
) { update in
|
||||
logger.debug("Updating with:\n\(update)")
|
||||
try fileClient.write(string: update, to: output)
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user