Sha256: 201d10c8534bafa8d7c74396ee17426bc79ce7d61a1c712411a8c7c2d385ef82
Contents?: true
Size: 1.19 KB
Versions: 1
Compression:
Stored size: 1.19 KB
Contents
# frozen_string_literal: true module Groundskeeper # Wraps Sentry CLI executable. class Sentry COMMAND = "sentry-cli" # sentry-cli arguments RELEASE = "releases new -p %<project>s \"%<version>s\"" ASSOCIATE = "releases set-commits --auto \"%<version>s\"" attr_reader :sentry, :project_name, :version_prefix # Wraps the "sentry-cli" shell command. class Executable def execute(arguments) `#{COMMAND} #{arguments}` end end def self.build(project_name:, version_prefix:) new( sentry: Executable.new, project_name: project_name, version_prefix: version_prefix ) end def initialize(sentry:, project_name:, version_prefix:) @sentry = sentry @project_name = project_name @version_prefix = version_prefix end # Notify Sentry about release def create_release(version) name = "#{version_prefix} #{version}" sentry.execute(format(RELEASE, project: project_name, version: name)) end # Associate commits with the release def associate_commits(version) name = "#{version_prefix} #{version}" sentry.execute(format(ASSOCIATE, version: name)) end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
groundskeeper-bitcore-0.3.0 | lib/groundskeeper/sentry.rb |