Class: Metanorma::Release::Platform::GitHub::ManifestReader
- Inherits:
-
Object
- Object
- Metanorma::Release::Platform::GitHub::ManifestReader
- Includes:
- ManifestReader
- Defined in:
- lib/metanorma/release/platform/github/manifest_reader.rb
Instance Method Summary collapse
-
#initialize(client:) ⇒ ManifestReader
constructor
A new instance of ManifestReader.
- #read(repo) ⇒ Object
Constructor Details
#initialize(client:) ⇒ ManifestReader
Returns a new instance of ManifestReader.
12 13 14 |
# File 'lib/metanorma/release/platform/github/manifest_reader.rb', line 12 def initialize(client:) @client = client end |
Instance Method Details
#read(repo) ⇒ Object
16 17 18 19 20 21 22 23 24 25 26 27 |
# File 'lib/metanorma/release/platform/github/manifest_reader.rb', line 16 def read(repo) content = @client.contents(repo.to_s, path: 'metanorma.release.yml') return nil unless content yaml = content['content'].unpack1('m0') parsed = YAML.safe_load(yaml, permitted_classes: [Symbol]) return nil unless parsed.is_a?(Hash) (parsed['channels'] || []).map(&:to_s) rescue StandardError nil end |