metanorma 1.1.3 → 1.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/workflows/notify.yml +47 -0
- data/.github/workflows/rake.yml +44 -0
- data/lib/metanorma/collection.rb +3 -3
- data/lib/metanorma/collection_renderer.rb +28 -2
- data/lib/metanorma/compile.rb +1 -1
- data/lib/metanorma/document.rb +17 -6
- data/lib/metanorma/input/asciidoc.rb +23 -4
- data/lib/metanorma/output/xslfo.rb +2 -2
- data/lib/metanorma/version.rb +1 -1
- data/metanorma.gemspec +6 -3
- metadata +9 -24
- data/.github/workflows/macos.yml +0 -38
- data/.github/workflows/ubuntu.yml +0 -56
- data/.github/workflows/windows.yml +0 -40
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 189106fda9c97a62268cdf23a26f7b10f9784cff4d9cdf590563c0f9e71aaea5
|
4
|
+
data.tar.gz: feec6fdbfbcdb931b3ca3ce782d9ba35248481902e66ca515b94f60346217dfe
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e6843c3813d6d378a320ccdec21e85174889a0634396a0e1e15eeaf82192bf80414a8e698a7818cfebc575a3925e46007c6a006964179979682e51ea49a173b5
|
7
|
+
data.tar.gz: 972d7e156885833eab9f91e142dd427dea72093d0a7eee665b5229e6e1dbd41bed117c8e72a09d6be9b6f2360c11eec3fa70eb0eb84807f5656bc08b496f56fc
|
@@ -0,0 +1,47 @@
|
|
1
|
+
# Auto-generated by Cimas: Do not edit it manually!
|
2
|
+
# See https://github.com/metanorma/cimas
|
3
|
+
name: notify
|
4
|
+
|
5
|
+
on:
|
6
|
+
push:
|
7
|
+
branches: [ master ]
|
8
|
+
tags:
|
9
|
+
- '*'
|
10
|
+
|
11
|
+
jobs:
|
12
|
+
notify:
|
13
|
+
name: Notify dependent repos
|
14
|
+
runs-on: ubuntu-latest
|
15
|
+
steps:
|
16
|
+
- name: Trigger repositories
|
17
|
+
env:
|
18
|
+
GH_USERNAME: metanorma-ci
|
19
|
+
GH_ACCESS_TOKEN: ${{ secrets.METANORMA_CI_PAT_TOKEN }}
|
20
|
+
run: |
|
21
|
+
curl -LO --retry 3 https://raw.githubusercontent.com/metanorma/metanorma-build-scripts/master/trigger-gh-actions.sh
|
22
|
+
[[ -f ".github/workflows/dependent_repos.env" ]] && source .github/workflows/dependent_repos.env
|
23
|
+
CLIENT_PAYLOAD=$(cat <<EOF
|
24
|
+
"{ "ref": "${GITHUB_REF}", "repo": "${GITHUB_REPOSITORY}" }"
|
25
|
+
EOF
|
26
|
+
)
|
27
|
+
for repo in $TEMPLATE_REPOS" $SAMPLES_REPOS"
|
28
|
+
do
|
29
|
+
sh trigger-gh-actions.sh $ORGANISATION $repo $GH_USERNAME $GH_ACCESS_TOKEN $GITHUB_REPOSITORY "$CLIENT_PAYLOAD"
|
30
|
+
done
|
31
|
+
|
32
|
+
- name: Trigger release repositories
|
33
|
+
if: github.ref == 'refs/heads/master' || startsWith(github.ref, 'refs/tags/v')
|
34
|
+
env:
|
35
|
+
GH_USERNAME: metanorma-ci
|
36
|
+
GH_ACCESS_TOKEN: ${{ secrets.METANORMA_CI_PAT_TOKEN }}
|
37
|
+
run: |
|
38
|
+
curl -LO --retry 3 https://raw.githubusercontent.com/metanorma/metanorma-build-scripts/master/trigger-gh-actions.sh
|
39
|
+
[[ -f ".github/workflows/dependent_repos.env" ]] && source .github/workflows/dependent_repos.env
|
40
|
+
CLIENT_PAYLOAD=$(cat <<EOF
|
41
|
+
"{ "ref": "${GITHUB_REF}", "repo": "${GITHUB_REPOSITORY}" }"
|
42
|
+
EOF
|
43
|
+
)
|
44
|
+
for repo in $DEPENDENT_REPOS
|
45
|
+
do
|
46
|
+
sh trigger-gh-actions.sh $ORGANISATION $repo $GH_USERNAME $GH_ACCESS_TOKEN $GITHUB_REPOSITORY "$CLIENT_PAYLOAD"
|
47
|
+
done
|
@@ -0,0 +1,44 @@
|
|
1
|
+
# Auto-generated by Cimas: Do not edit it manually!
|
2
|
+
# See https://github.com/metanorma/cimas
|
3
|
+
name: rake
|
4
|
+
|
5
|
+
on:
|
6
|
+
push:
|
7
|
+
branches: [ master ]
|
8
|
+
pull_request:
|
9
|
+
|
10
|
+
jobs:
|
11
|
+
rake:
|
12
|
+
name: Test on Ruby ${{ matrix.ruby }} ${{ matrix.os }}
|
13
|
+
runs-on: ${{ matrix.os }}
|
14
|
+
continue-on-error: ${{ matrix.experimental }}
|
15
|
+
strategy:
|
16
|
+
fail-fast: false
|
17
|
+
matrix:
|
18
|
+
ruby: [ '2.6', '2.5', '2.4' ]
|
19
|
+
os: [ ubuntu-latest, windows-latest, macos-latest ]
|
20
|
+
experimental: [ false ]
|
21
|
+
include:
|
22
|
+
- ruby: '2.7'
|
23
|
+
os: 'ubuntu-latest'
|
24
|
+
experimental: true
|
25
|
+
- ruby: '2.7'
|
26
|
+
os: 'windows-latest'
|
27
|
+
experimental: true
|
28
|
+
- ruby: '2.7'
|
29
|
+
os: 'macos-latest'
|
30
|
+
experimental: true
|
31
|
+
steps:
|
32
|
+
- uses: actions/checkout@master
|
33
|
+
|
34
|
+
- name: Use Ruby
|
35
|
+
uses: ruby/setup-ruby@v1
|
36
|
+
with:
|
37
|
+
ruby-version: ${{ matrix.ruby }}
|
38
|
+
bundler-cache: true
|
39
|
+
|
40
|
+
- name: Update gems
|
41
|
+
run: bundle install --jobs 4 --retry 3
|
42
|
+
|
43
|
+
- name: Run specs
|
44
|
+
run: bundle exec rake
|
data/lib/metanorma/collection.rb
CHANGED
@@ -12,10 +12,10 @@ module Metanorma
|
|
12
12
|
|
13
13
|
# @return [Array<String>] documents-inline to inject the XML into
|
14
14
|
# the collection manifest; documents-external to keeps them outside
|
15
|
-
|
15
|
+
attr_accessor :directives
|
16
16
|
|
17
17
|
# @return [Hash<String, Metanorma::Document>]
|
18
|
-
|
18
|
+
attr_accessor :documents
|
19
19
|
|
20
20
|
# @param file [String] path to source file
|
21
21
|
# @param directives [Array<String>] documents-inline to inject the XML into
|
@@ -47,7 +47,7 @@ module Metanorma
|
|
47
47
|
Nokogiri::XML::Builder.new do |xml|
|
48
48
|
xml.send("metanorma-collection",
|
49
49
|
"xmlns" => "http://metanorma.org") do |mc|
|
50
|
-
@bibdata.to_xml
|
50
|
+
mc << @bibdata.to_xml(bibdata: true, date_format: :full)
|
51
51
|
@manifest.to_xml mc
|
52
52
|
content_to_xml "prefatory", mc
|
53
53
|
doccontainer mc
|
@@ -49,9 +49,32 @@ module Metanorma
|
|
49
49
|
folder = File.dirname col.file
|
50
50
|
cr = new(col.to_xml, folder, options)
|
51
51
|
cr.files
|
52
|
+
cr.concatenate(col, options)
|
52
53
|
cr.coverpage if options[:format]&.include?(:html)
|
53
54
|
end
|
54
55
|
|
56
|
+
def concatenate(col, options)
|
57
|
+
options[:format] << :presentation if options[:format].include?(:pdf)
|
58
|
+
options[:format].uniq.each do |e|
|
59
|
+
next unless %i(presentation xml).include?(e)
|
60
|
+
ext = e == :presentation ? "presentation.xml" : e.to_s
|
61
|
+
out = col.clone
|
62
|
+
out.directives << "documents-inline"
|
63
|
+
out.documents.keys.each do |id|
|
64
|
+
filename = @files[id][:outputs][e]
|
65
|
+
out.documents[id] = Metanorma::Document.raw_file(filename)
|
66
|
+
end
|
67
|
+
File.open(File.join(@outdir, "collection.#{ext}"), "w:UTF-8") { |f| f.write(out.to_xml) }
|
68
|
+
end
|
69
|
+
options[:format].include?(:pdf) and
|
70
|
+
pdfconv.convert(File.join(@outdir, "collection.presentation.xml"))
|
71
|
+
end
|
72
|
+
|
73
|
+
def pdfconv
|
74
|
+
x = Asciidoctor.load nil, backend: @doctype.to_sym
|
75
|
+
x.converter.pdf_converter(Dummy.new)
|
76
|
+
end
|
77
|
+
|
55
78
|
# Dummy class
|
56
79
|
class Dummy
|
57
80
|
def attr(_xyz); end
|
@@ -220,7 +243,7 @@ module Metanorma
|
|
220
243
|
docid = bib&.at(ns("./docidentifier"))&.text
|
221
244
|
unless @files[docid]
|
222
245
|
warn "Cannot find crossreference to document #{docid} in document "\
|
223
|
-
|
246
|
+
"#{identifier}!"
|
224
247
|
abort
|
225
248
|
end
|
226
249
|
id = bib["id"]
|
@@ -288,9 +311,12 @@ module Metanorma
|
|
288
311
|
# warn "metanorma compile -x html #{f.path}"
|
289
312
|
c = Compile.new
|
290
313
|
c.compile f.path, format: :asciidoc, extension_keys: @format
|
291
|
-
@
|
314
|
+
@files[identifier][:outputs] = {}
|
315
|
+
@format.each do |e|
|
316
|
+
ext = c.processor.output_formats[e]
|
292
317
|
fn = File.basename(filename).sub(/(?<=\.)[^\.]+$/, ext.to_s)
|
293
318
|
FileUtils.mv f.path.sub(/\.xml$/, ".#{ext}"), File.join(@outdir, fn)
|
319
|
+
@files[identifier][:outputs][e] = File.join(@outdir, fn)
|
294
320
|
end
|
295
321
|
end
|
296
322
|
end
|
data/lib/metanorma/compile.rb
CHANGED
data/lib/metanorma/document.rb
CHANGED
@@ -4,9 +4,10 @@ module Metanorma
|
|
4
4
|
attr_reader :file
|
5
5
|
|
6
6
|
# @param bibitem [RelatonBib::BibliographicItem]
|
7
|
-
def initialize(bibitem, file)
|
7
|
+
def initialize(bibitem, file, options = {})
|
8
8
|
@bibitem = bibitem
|
9
9
|
@file = file
|
10
|
+
@raw = options[:raw]
|
10
11
|
end
|
11
12
|
|
12
13
|
class << self
|
@@ -22,6 +23,12 @@ module Metanorma
|
|
22
23
|
new from_xml(xml)
|
23
24
|
end
|
24
25
|
|
26
|
+
# raw XML file, can be used to put in entire file instead of just bibitem
|
27
|
+
def raw_file(filename)
|
28
|
+
doc = Nokogiri::XML(File.read(filename, encoding: "UTF-8"))
|
29
|
+
new(doc, filename, raw: true)
|
30
|
+
end
|
31
|
+
|
25
32
|
private
|
26
33
|
|
27
34
|
# #param xml [Nokogiri::XML::Document, Nokogiri::XML::Element]
|
@@ -47,7 +54,7 @@ module Metanorma
|
|
47
54
|
when :xml
|
48
55
|
from_xml Nokogiri::XML(File.read(file, encoding: "UTF-8"))
|
49
56
|
when :yaml
|
50
|
-
yaml = File.read(file,
|
57
|
+
yaml = File.read(file, encoding: "UTF-8")
|
51
58
|
Relaton::Cli::YAMLConvertor.convert_single_file(yaml)
|
52
59
|
end
|
53
60
|
end
|
@@ -68,15 +75,19 @@ module Metanorma
|
|
68
75
|
|
69
76
|
# @return [String]
|
70
77
|
def type
|
71
|
-
@type ||= (@bibitem.docidentifier.first&.type ||
|
72
|
-
|
73
|
-
|
78
|
+
@type ||= (@bibitem.docidentifier.first&.type&.downcase ||
|
79
|
+
@bibitem.docidentifier.first&.id&.match(/^[^\s]+/)&.to_s)&.downcase ||
|
80
|
+
"standoc"
|
74
81
|
end
|
75
82
|
|
76
83
|
private
|
77
84
|
|
78
85
|
def render_xml(builder)
|
79
|
-
|
86
|
+
if @raw
|
87
|
+
builder << @bibitem.root.to_xml
|
88
|
+
else
|
89
|
+
builder.send(type + "-standard") { |b| b << @bibitem.to_xml(bibdata: true) }
|
90
|
+
end
|
80
91
|
end
|
81
92
|
end
|
82
93
|
end
|
@@ -7,8 +7,7 @@ module Metanorma
|
|
7
7
|
|
8
8
|
def process(file, filename, type, options = {})
|
9
9
|
require "asciidoctor"
|
10
|
-
|
11
|
-
file,
|
10
|
+
out_opts = {
|
12
11
|
to_file: false,
|
13
12
|
safe: :safe,
|
14
13
|
backend: type,
|
@@ -16,8 +15,28 @@ module Metanorma
|
|
16
15
|
attributes: [
|
17
16
|
"nodoc", "stem", "xrefstyle=short", "docfile=#{filename}",
|
18
17
|
"output_dir=#{options[:"output-dir"]}"
|
19
|
-
]
|
20
|
-
|
18
|
+
]
|
19
|
+
}
|
20
|
+
unless asciidoctor_validate(file, filename, out_opts)
|
21
|
+
warn "Cannot continue compiling Asciidoctor document"
|
22
|
+
abort
|
23
|
+
end
|
24
|
+
::Asciidoctor.convert(file, out_opts)
|
25
|
+
end
|
26
|
+
|
27
|
+
def asciidoctor_validate(file, filename, options)
|
28
|
+
err = nil
|
29
|
+
begin
|
30
|
+
previous_stderr, $stderr = $stderr, StringIO.new
|
31
|
+
::Asciidoctor.load(file, options)
|
32
|
+
%r{(\n|^)asciidoctor: ERROR: ['"]?#{Regexp.escape(filename ||
|
33
|
+
"<empty>")}['"]?: line \d+: include file not found: }.match($stderr.string) and
|
34
|
+
err = $stderr.string
|
35
|
+
ensure
|
36
|
+
$stderr = previous_stderr
|
37
|
+
end
|
38
|
+
warn err unless err.nil?
|
39
|
+
err.nil?
|
21
40
|
end
|
22
41
|
|
23
42
|
def extract_metanorma_options(file)
|
@@ -4,10 +4,10 @@ require_relative "./utils.rb"
|
|
4
4
|
module Metanorma
|
5
5
|
module Output
|
6
6
|
class XslfoPdf < Base
|
7
|
-
def convert(url_path, output_path, xsl_stylesheet)
|
7
|
+
def convert(url_path, output_path, xsl_stylesheet, options = "")
|
8
8
|
return if url_path.nil? || output_path.nil? || xsl_stylesheet.nil?
|
9
9
|
|
10
|
-
Mn2pdf.convert(quote(url_path), quote(output_path), quote(xsl_stylesheet))
|
10
|
+
Mn2pdf.convert(quote(url_path), quote(output_path), quote(xsl_stylesheet), options)
|
11
11
|
end
|
12
12
|
|
13
13
|
def quote(x)
|
data/lib/metanorma/version.rb
CHANGED
data/metanorma.gemspec
CHANGED
@@ -27,13 +27,16 @@ Gem::Specification.new do |spec|
|
|
27
27
|
spec.add_runtime_dependency 'htmlentities'
|
28
28
|
spec.add_runtime_dependency 'nokogiri'
|
29
29
|
spec.add_runtime_dependency 'mn2pdf', "~> 1"
|
30
|
-
|
30
|
+
# get relaton-cli to avoic circular reference with metanorma-standoc
|
31
|
+
#spec.add_dependency "relaton-cli"
|
32
|
+
#spec.add_dependency "metanorma-standoc", "~> 1.5.3"
|
31
33
|
|
32
34
|
spec.add_development_dependency "rake", "~> 12.0"
|
33
35
|
spec.add_development_dependency "rspec", "~> 3.0"
|
34
36
|
spec.add_development_dependency "byebug", "~> 10.0"
|
35
37
|
spec.add_development_dependency "rspec-command", "~> 1.0"
|
36
38
|
spec.add_development_dependency "equivalent-xml", "~> 0.6"
|
37
|
-
spec.add_development_dependency "metanorma-iso", "~> 1.5"
|
38
|
-
spec.add_development_dependency "
|
39
|
+
spec.add_development_dependency "metanorma-iso", "~> 1.5.8"
|
40
|
+
spec.add_development_dependency "sassc", "~> 2.4.0"
|
41
|
+
#spec.add_development_dependency "isodoc", "~> 1.2.1"
|
39
42
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: metanorma
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ribose Inc.
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-
|
11
|
+
date: 2020-10-25 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: asciidoctor
|
@@ -66,20 +66,6 @@ dependencies:
|
|
66
66
|
- - "~>"
|
67
67
|
- !ruby/object:Gem::Version
|
68
68
|
version: '1'
|
69
|
-
- !ruby/object:Gem::Dependency
|
70
|
-
name: relaton-cli
|
71
|
-
requirement: !ruby/object:Gem::Requirement
|
72
|
-
requirements:
|
73
|
-
- - "~>"
|
74
|
-
- !ruby/object:Gem::Version
|
75
|
-
version: 1.2.0
|
76
|
-
type: :runtime
|
77
|
-
prerelease: false
|
78
|
-
version_requirements: !ruby/object:Gem::Requirement
|
79
|
-
requirements:
|
80
|
-
- - "~>"
|
81
|
-
- !ruby/object:Gem::Version
|
82
|
-
version: 1.2.0
|
83
69
|
- !ruby/object:Gem::Dependency
|
84
70
|
name: rake
|
85
71
|
requirement: !ruby/object:Gem::Requirement
|
@@ -156,28 +142,28 @@ dependencies:
|
|
156
142
|
requirements:
|
157
143
|
- - "~>"
|
158
144
|
- !ruby/object:Gem::Version
|
159
|
-
version:
|
145
|
+
version: 1.5.8
|
160
146
|
type: :development
|
161
147
|
prerelease: false
|
162
148
|
version_requirements: !ruby/object:Gem::Requirement
|
163
149
|
requirements:
|
164
150
|
- - "~>"
|
165
151
|
- !ruby/object:Gem::Version
|
166
|
-
version:
|
152
|
+
version: 1.5.8
|
167
153
|
- !ruby/object:Gem::Dependency
|
168
|
-
name:
|
154
|
+
name: sassc
|
169
155
|
requirement: !ruby/object:Gem::Requirement
|
170
156
|
requirements:
|
171
157
|
- - "~>"
|
172
158
|
- !ruby/object:Gem::Version
|
173
|
-
version:
|
159
|
+
version: 2.4.0
|
174
160
|
type: :development
|
175
161
|
prerelease: false
|
176
162
|
version_requirements: !ruby/object:Gem::Requirement
|
177
163
|
requirements:
|
178
164
|
- - "~>"
|
179
165
|
- !ruby/object:Gem::Version
|
180
|
-
version:
|
166
|
+
version: 2.4.0
|
181
167
|
description: Library to process any Metanorma standard.
|
182
168
|
email:
|
183
169
|
- open.source@ribose.com
|
@@ -189,9 +175,8 @@ extra_rdoc_files:
|
|
189
175
|
- LICENSE.txt
|
190
176
|
files:
|
191
177
|
- ".github/workflows/dependent_repos.env"
|
192
|
-
- ".github/workflows/
|
193
|
-
- ".github/workflows/
|
194
|
-
- ".github/workflows/windows.yml"
|
178
|
+
- ".github/workflows/notify.yml"
|
179
|
+
- ".github/workflows/rake.yml"
|
195
180
|
- ".gitignore"
|
196
181
|
- ".hound.yml"
|
197
182
|
- ".rspec"
|
data/.github/workflows/macos.yml
DELETED
@@ -1,38 +0,0 @@
|
|
1
|
-
# Auto-generated by Cimas: Do not edit it manually!
|
2
|
-
# See https://github.com/metanorma/cimas
|
3
|
-
name: macos
|
4
|
-
|
5
|
-
on:
|
6
|
-
push:
|
7
|
-
branches: [ master ]
|
8
|
-
pull_request:
|
9
|
-
paths-ignore:
|
10
|
-
- .github/workflows/ubuntu.yml
|
11
|
-
- .github/workflows/windows.yml
|
12
|
-
|
13
|
-
jobs:
|
14
|
-
test-macos:
|
15
|
-
name: Test on Ruby ${{ matrix.ruby }} macOS
|
16
|
-
runs-on: macos-latest
|
17
|
-
continue-on-error: ${{ matrix.experimental }}
|
18
|
-
strategy:
|
19
|
-
fail-fast: false
|
20
|
-
matrix:
|
21
|
-
ruby: [ '2.6', '2.5', '2.4' ]
|
22
|
-
experimental: [false]
|
23
|
-
include:
|
24
|
-
- ruby: '2.7'
|
25
|
-
experimental: true
|
26
|
-
steps:
|
27
|
-
- uses: actions/checkout@master
|
28
|
-
- name: Use Ruby
|
29
|
-
uses: actions/setup-ruby@v1
|
30
|
-
with:
|
31
|
-
ruby-version: ${{ matrix.ruby }}
|
32
|
-
- name: Update gems
|
33
|
-
run: |
|
34
|
-
sudo gem install bundler --force
|
35
|
-
bundle install --jobs 4 --retry 3
|
36
|
-
- name: Run specs
|
37
|
-
run: |
|
38
|
-
bundle exec rake
|
@@ -1,56 +0,0 @@
|
|
1
|
-
# Auto-generated by Cimas: Do not edit it manually!
|
2
|
-
# See https://github.com/metanorma/cimas
|
3
|
-
name: ubuntu
|
4
|
-
|
5
|
-
on:
|
6
|
-
push:
|
7
|
-
branches: [ master ]
|
8
|
-
tags:
|
9
|
-
- '*'
|
10
|
-
pull_request:
|
11
|
-
paths-ignore:
|
12
|
-
- .github/workflows/macos.yml
|
13
|
-
- .github/workflows/windows.yml
|
14
|
-
|
15
|
-
jobs:
|
16
|
-
test-linux:
|
17
|
-
name: Test on Ruby ${{ matrix.ruby }} Ubuntu
|
18
|
-
runs-on: ubuntu-latest
|
19
|
-
continue-on-error: ${{ matrix.experimental }}
|
20
|
-
strategy:
|
21
|
-
fail-fast: false
|
22
|
-
matrix:
|
23
|
-
ruby: [ '2.6', '2.5', '2.4' ]
|
24
|
-
experimental: [false]
|
25
|
-
include:
|
26
|
-
- ruby: '2.7'
|
27
|
-
experimental: true
|
28
|
-
steps:
|
29
|
-
- uses: actions/checkout@master
|
30
|
-
- name: Use Ruby
|
31
|
-
uses: actions/setup-ruby@v1
|
32
|
-
with:
|
33
|
-
ruby-version: ${{ matrix.ruby }}
|
34
|
-
- name: Update gems
|
35
|
-
run: |
|
36
|
-
gem install bundler
|
37
|
-
bundle install --jobs 4 --retry 3
|
38
|
-
- name: Run specs
|
39
|
-
run: |
|
40
|
-
bundle exec rake
|
41
|
-
- name: Trigger repositories
|
42
|
-
if: matrix.ruby == '2.6'
|
43
|
-
env:
|
44
|
-
GH_USERNAME: metanorma-ci
|
45
|
-
GH_ACCESS_TOKEN: ${{ secrets.METANORMA_CI_PAT_TOKEN }}
|
46
|
-
run: |
|
47
|
-
curl -LO --retry 3 https://raw.githubusercontent.com/metanorma/metanorma-build-scripts/master/trigger-gh-actions.sh
|
48
|
-
[[ -f ".github/workflows/dependent_repos.env" ]] && source .github/workflows/dependent_repos.env
|
49
|
-
CLIENT_PAYLOAD=$(cat <<EOF
|
50
|
-
"{ "ref": "${GITHUB_REF}", "repo": "${GITHUB_REPOSITORY}" }"
|
51
|
-
EOF
|
52
|
-
)
|
53
|
-
for repo in $REPOS
|
54
|
-
do
|
55
|
-
sh trigger-gh-actions.sh $ORGANISATION $repo $GH_USERNAME $GH_ACCESS_TOKEN $GITHUB_REPOSITORY "$CLIENT_PAYLOAD"
|
56
|
-
done
|
@@ -1,40 +0,0 @@
|
|
1
|
-
# Auto-generated by Cimas: Do not edit it manually!
|
2
|
-
# See https://github.com/metanorma/cimas
|
3
|
-
name: windows
|
4
|
-
|
5
|
-
on:
|
6
|
-
push:
|
7
|
-
branches: [ master ]
|
8
|
-
pull_request:
|
9
|
-
paths-ignore:
|
10
|
-
- .github/workflows/macos.yml
|
11
|
-
- .github/workflows/ubuntu.yml
|
12
|
-
|
13
|
-
jobs:
|
14
|
-
test-windows:
|
15
|
-
name: Test on Ruby ${{ matrix.ruby }} Windows
|
16
|
-
runs-on: windows-latest
|
17
|
-
continue-on-error: ${{ matrix.experimental }}
|
18
|
-
strategy:
|
19
|
-
fail-fast: false
|
20
|
-
matrix:
|
21
|
-
ruby: [ '2.6', '2.5', '2.4' ]
|
22
|
-
experimental: [false]
|
23
|
-
include:
|
24
|
-
- ruby: '2.7'
|
25
|
-
experimental: true
|
26
|
-
steps:
|
27
|
-
- uses: actions/checkout@master
|
28
|
-
- name: Use Ruby
|
29
|
-
uses: actions/setup-ruby@v1
|
30
|
-
with:
|
31
|
-
ruby-version: ${{ matrix.ruby }}
|
32
|
-
- name: Update gems
|
33
|
-
shell: pwsh
|
34
|
-
run: |
|
35
|
-
gem install bundler
|
36
|
-
bundle config --local path vendor/bundle
|
37
|
-
bundle install --jobs 4 --retry 3
|
38
|
-
- name: Run specs
|
39
|
-
run: |
|
40
|
-
bundle exec rake
|