mirror of https://github.com/cirruslabs/tart.git
Collect installation information (#390)
This commit is contained in:
parent
41af674a88
commit
ecc5de18be
|
|
@ -39,10 +39,15 @@ brews:
|
|||
name: homebrew-cli
|
||||
caveats: See the GitHub repository for more information
|
||||
homepage: https://github.com/cirruslabs/tart
|
||||
license: "AGPL-3.0"
|
||||
description: Run macOS VMs on Apple Silicon
|
||||
skip_upload: auto
|
||||
dependencies:
|
||||
- "cirruslabs/cli/softnet"
|
||||
post_install: |
|
||||
ENV["SENTRY_DSN"] = "https://606fab64ced94f0991109ac5467e23da@o4504250314522624.ingest.sentry.io/4504606552424448"
|
||||
system "#{bin}/tart report-installation"
|
||||
ENV.delete("SENTRY_DSN")
|
||||
custom_block: |
|
||||
depends_on :macos => :monterey
|
||||
|
||||
|
|
|
|||
|
|
@ -0,0 +1,25 @@
|
|||
import ArgumentParser
|
||||
import Foundation
|
||||
import Sentry
|
||||
|
||||
struct ReportInstallation: AsyncParsableCommand {
|
||||
static var configuration = CommandConfiguration(
|
||||
commandName: "report-installation",
|
||||
abstract: "Send installation event to Sentry if configured",
|
||||
discussion: """
|
||||
Reports macOS version and device model for analytics purposes.
|
||||
Helps Cirrus Labs team to prioritize testing on most popular devices.
|
||||
""",
|
||||
shouldDisplay: false
|
||||
)
|
||||
|
||||
func run() async throws {
|
||||
let installationEvent = Event()
|
||||
installationEvent.message = SentryMessage(formatted: "installed")
|
||||
installationEvent.level = SentryLevel.info
|
||||
installationEvent.user = nil
|
||||
installationEvent.stacktrace = nil
|
||||
let id = SentrySDK.capture(event: installationEvent)
|
||||
print("Captured installation event #\(id)!")
|
||||
}
|
||||
}
|
||||
|
|
@ -33,6 +33,7 @@ struct Root: AsyncParsableCommand {
|
|||
Rename.self,
|
||||
Stop.self,
|
||||
Delete.self,
|
||||
ReportInstallation.self,
|
||||
])
|
||||
|
||||
public static func main() async throws {
|
||||
|
|
|
|||
Loading…
Reference in New Issue