Spec-Zone.ru › Homebrew

Класс: GitHub::Actions::Annotation Закрытый

Наследует:
Object
  • Object
  • GitHub::Actions::Annotation
показать всё
Определён в:
utils/github/actions.rb

Обзор

Этот класс является частью закрытого API. Этот класс можно использовать только в репозитории Homebrew/brew. Третьим сторонам по возможности следует избегать использования этого класса, поскольку он может быть удалён или изменён без предупреждения.

Вспомогательный класс для форматирования аннотаций в GitHub Actions.

Краткое описание констант свернуть

ANNOTATION_TYPES =

Эта константа является частью закрытого API. Эту константу можно использовать только в репозитории Homebrew/brew. Третьим сторонам по возможности следует избегать использования этой константы, поскольку она может быть удалена или изменена без предупреждения.

[:notice, :warning, :error].freeze

Краткое описание методов класса свернуть

  • .path_relative_to_workspace(path) ⇒ Pathname? закрытый

Краткое описание методов экземпляра свернуть

  • #initialize(type, message, file: nil, title: nil, line: nil, end_line: nil, column: nil, end_column: nil) ⇒ void конструктор закрытый
  • #relevant? ⇒ Boolean закрытый

    Аннотация актуальна, только если соответствующий file находится относительно каталога GITHUB_WORKSPACE или если file не указан.

Подробное описание конструкторов

#initialize(type, message, file: nil, title: nil, line: nil, end_line: nil, column: nil, end_column: nil) ⇒ void

Этот метод является частью закрытого API. Этот метод можно использовать только в репозитории Homebrew/brew. Третьим сторонам по возможности следует избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.

Параметры:

  • type (Symbol)
  • message (String)
  • file (String, Pathname, nil) (по умолчанию: nil)
  • title (String, nil) (по умолчанию: nil)
  • line (Integer, nil) (по умолчанию: nil)
  • end_line (Integer, nil) (по умолчанию: nil)
  • column (Integer, nil) (по умолчанию: nil)
  • end_column (Integer, nil) (по умолчанию: nil)

Вызывает исключения:

  • (ArgumentError)


65
66
67
68
69
70
71
72
73
74
75
76
77
78
# File 'utils/github/actions.rb', line 65

def initialize(type, message, file: nil, title: nil, line: nil, end_line: nil, column: nil, end_column: nil)
  raise ArgumentError, "Unsupported type: #{type.inspect}" if ANNOTATION_TYPES.exclude?(type)
  raise ArgumentError, "`title` must not contain `::`" if title.present? && title.include?("::")

  require "utils/tty"
  @type = type
  @message = T.let(Tty.strip_ansi(message), String)
  @file = T.let(self.class.path_relative_to_workspace(file), T.nilable(Pathname)) if file.present?
  @title = T.let(Tty.strip_ansi(title), String) if title
  @line = T.let(Integer(line), Integer) if line
  @end_line = T.let(Integer(end_line), Integer) if end_line
  @column = T.let(Integer(column), Integer) if column
  @end_column = T.let(Integer(end_column), Integer) if end_column
end

Подробное описание методов класса

.path_relative_to_workspace(path) ⇒ Pathname?

Этот метод является частью закрытого API. Этот метод можно использовать только в репозитории Homebrew/brew. Третьим сторонам по возможности следует избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.

Параметры:

  • path (String, Pathname)

Возвращает:

  • (Pathname, nil)


45
46
47
48
49
50
51
# File 'utils/github/actions.rb', line 45

def self.path_relative_to_workspace(path)
  workspace = Pathname(ENV.fetch("GITHUB_WORKSPACE", Dir.pwd)).realpath
  path = Pathname(path)
  return path unless path.exist?

  path.realpath.relative_path_from(workspace)
end

Подробное описание методов экземпляра

#relevant? ⇒ Boolean

Этот метод является частью закрытого API. Этот метод можно использовать только в репозитории Homebrew/brew. Третьим сторонам по возможности следует избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.

Аннотация актуальна, только если соответствующий file находится относительно каталога GITHUB_WORKSPACE или если file не указан.

Возвращает:

  • (Boolean)


109
110
111
112
113
# File 'utils/github/actions.rb', line 109

def relevant?
  return true if @file.blank?

  @file.descend.next.to_s != ".."
end

© 2009–present Homebrew contributors
Licensed under the BSD 2-Clause License.
https://docs.brew.sh/rubydoc/GitHub/Actions/Annotation.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API