metanorma-cli 1.3.3 → 1.3.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (59) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/dependent_repos.env +3 -0
  3. data/.github/workflows/macos.yml +38 -0
  4. data/.github/workflows/ubuntu.yml +72 -0
  5. data/.github/workflows/windows.yml +40 -0
  6. data/.gitignore +21 -0
  7. data/.hound.yml +3 -0
  8. data/.rspec +2 -0
  9. data/.rubocop.yml +515 -0
  10. data/docs/installation.adoc +61 -0
  11. data/docs/navigation.adoc +7 -0
  12. data/docs/usage.adoc +74 -0
  13. data/lib/metanorma/cli/command.rb +25 -1
  14. data/lib/metanorma/cli/setup.rb +9 -30
  15. data/lib/metanorma/cli/version.rb +1 -1
  16. data/metanorma-cli.gemspec +24 -19
  17. data/templates/base/.github/workflows/docker.yml +74 -0
  18. data/templates/base/.github/workflows/macos.yml +50 -0
  19. data/templates/base/.github/workflows/ubuntu.yml +55 -0
  20. data/templates/base/.github/workflows/windows.yml +42 -0
  21. data/templates/base/.gitlab-ci.yml +34 -4
  22. data/templates/base/Makefile +111 -59
  23. data/templates/base/Makefile.win +136 -36
  24. data/templates/base/metanorma.yml +1 -1
  25. metadata +49 -83
  26. data/05-020r26.rxl +0 -75
  27. data/05-020r26.xml.zip +0 -0
  28. data/Gemfile.lock +0 -336
  29. data/a +0 -3
  30. data/a.json +0 -33
  31. data/a.rb +0 -13
  32. data/a.rxl +0 -45
  33. data/b +0 -85
  34. data/csd-tofix 2.zip +0 -0
  35. data/csd-tofix.zip +0 -0
  36. data/exe/metanorma.old +0 -178
  37. data/extract/sourcecode/sourcecode-0000.txt +0 -5
  38. data/files.zip +0 -0
  39. data/relaton/cache/version +0 -1
  40. data/rice.rxl +0 -51
  41. data/sourcecode/0 +0 -5
  42. data/templates/base/.travis.yml +0 -30
  43. data/templates/base/appveyor.yml +0 -29
  44. data/test.rxl +0 -52
  45. data/tmp/my-custom-csd/Gemfile +0 -4
  46. data/tmp/my-custom-csd/Makefile +0 -144
  47. data/tmp/my-custom-csd/Makefile.win +0 -116
  48. data/tmp/my-custom-csd/appveyor.yml +0 -29
  49. data/tmp/my-custom-csd/metanorma.yml +0 -4
  50. data/tmp/my-document/Gemfile +0 -4
  51. data/tmp/my-document/Makefile +0 -144
  52. data/tmp/my-document/Makefile.win +0 -116
  53. data/tmp/my-document/appveyor.yml +0 -29
  54. data/tmp/my-document/metanorma.yml +0 -4
  55. data/tmp/my-local-document/Gemfile +0 -4
  56. data/tmp/my-local-document/Makefile +0 -144
  57. data/tmp/my-local-document/Makefile.win +0 -116
  58. data/tmp/my-local-document/appveyor.yml +0 -29
  59. data/tmp/my-local-document/metanorma.yml +0 -4
@@ -0,0 +1,61 @@
1
+ = Installation
2
+
3
+ You can get the `metanorma` command-line executable by installing this Ruby gem.
4
+
5
+ [IMPORTANT]
6
+ ====
7
+ To install the Metanorma toolchain we recommend to use one of the ways described in
8
+ https://www.metanorma.com/author/topics/install/[Metanorma installation] topic.
9
+ Installing this gem by hand may not be the easiest way.
10
+
11
+ When following this installation method, to start building documents you may have to take care
12
+ of manually installing some required third-party software as well.
13
+ Which exactly depends on what documents you’re building, below notes cover some of that.
14
+ ====
15
+
16
+
17
+ == Installing the Metanorma CLI gem
18
+
19
+ [source,console]
20
+ ----
21
+ gem install metanorma-cli
22
+ ----
23
+
24
+ Installing the gem will also install all officially supported Metanorma flavors
25
+ (such as ISO, CalConnect, IETF, etc).
26
+
27
+
28
+ == Dependencies
29
+
30
+ === Java
31
+
32
+ You will have to have a Java runtime installed. (Use `brew cask install java` on macOS.)
33
+
34
+ === Puppeteer
35
+
36
+ *If you are going to generate PDFs from HTML* (which applies to CalConnect Standard Documents),
37
+ you will also need to install the https://github.com/GoogleChrome/puppeteer[Puppeteer] Node library.
38
+
39
+ * Ensure you have Node of at least version 7.6.0:
40
+ ** https://nodejs.org/en/download/
41
+ ** On macOS you should be able to `brew install node`
42
+ * Ensure you have NPM: https://docs.npmjs.com/getting-started/installing-node
43
+ * Install Puppeteer globally in your system: `npm install -g --save --save-exact puppeteer`
44
+
45
+ === PlantUML
46
+
47
+ *If your documents include link:/author/topics/document-format/diagrams/[PlantUML diagrams]*,
48
+ PlantUML will have to be installed.
49
+
50
+ * `brew install plantuml` on MacOS.
51
+ * For Linux, link the PlantUML jar file into a command line executable; see
52
+ `.travis.yml` for an example.
53
+
54
+ If PlantUML is not installed locally, the source PlantUML is incorporated into
55
+ the output document as sourcecode.
56
+
57
+
58
+ == Installation notes for Windows
59
+
60
+ To be able to compile gem with a native extension you must have `RIDK` installed.
61
+ If you are installing metanorma with chocolatey installation script will do this for you
@@ -0,0 +1,7 @@
1
+ ---
2
+ items:
3
+ - { title: Installation, path: installation/ }
4
+ - { title: Usage, path: usage/ }
5
+ ---
6
+
7
+ = Navigation
@@ -0,0 +1,74 @@
1
+ = Using the Metanorma CLI
2
+
3
+ == Usage sample
4
+
5
+ [source,sh]
6
+ ----
7
+ $ metanorma --type iso -x html iso-my-standard-document.adoc
8
+ ----
9
+
10
+ == Full syntax & options
11
+
12
+ [source,sh]
13
+ ----
14
+ $ metanorma --type <chosen-type> \
15
+ [--format input-format] \
16
+ [--extensions EXT1,EXT2...] \
17
+ iso-my-standard-document.adoc
18
+ ----
19
+
20
+ `type`:: (mandatory, specified via `--type` or `-t`) takes one of the following types:
21
+ `rfc2`, `rfc3`, `iso`, `gb`, `csd`, `csand`, `m3d`, `rsd`. Each of these corresponds to a
22
+ standards class and a Metanorma gem; the list of standards classes supported by the script
23
+ by default will grow (see also `require`).
24
+
25
+ `extension`:: (optional) specifies the output formats to be generated. If not specified,
26
+ all possible output formats are generated. The output formats generated are constrained by
27
+ what has been defined for each standard type. All standards can generate Metanorma XML (`xml`),
28
+ and at least one of HTML (`html`), DOC (`doc`), PDF (`pdf`). Some standards generate alternative
29
+ HTML renderings (e.g. `html_alt` for ISO).
30
+
31
+ `wrapper`:: create a separate folder for each instance of HTML output generated; the folder is named
32
+ the same as the output file, without the `.html` suffix. Used to make distribution of HTML outputs
33
+ more straightforward.
34
+
35
+ `format`:: (optional, defaults to `asciidoc`, specified via `--format` or `-f`) only accepts `asciidoc` for now
36
+
37
+ `require`:: If you wish to use metanorma with a document class which has not been included in the types recognised
38
+ by the metanorma script, you will need to name the corresponding Metnorma gem explicitly with the `-r`
39
+ option. For example:
40
+
41
+ [source,sh]
42
+ ----
43
+ $ metanorma -t mpfd mpfd-bpn.adoc
44
+
45
+ [metanorma] Error: mpfd is not a supported standard type.
46
+
47
+ $ metanorma -t mpfd -r metanorma-mpfd mpfd-bpn.adoc
48
+ ----
49
+
50
+ == Command-line help
51
+
52
+ [source,sh]
53
+ ----
54
+ $ metanorma -h
55
+ Usage: metanorma [options] <file>
56
+ -t, --type TYPE Type of standard to generate: rfc2, rfc3, iso, gb, csd, csand, m3d
57
+ -x, --extensions EXT1,EXT2,... | all Type of extension to generate per type:
58
+ {
59
+ :rfc2=>{:xmlrfc=>"v2.xml"},
60
+ :rfc3=>{:xmlrfc=>"v3.xml"},
61
+ :iso=>{:html=>"html", :html_alt=>"alt.html", :doc=>"doc"},
62
+ :gb=>{:html=>"html", :doc=>"doc"},
63
+ :csd=>{:html=>"html", :pdf=>"pdf"},
64
+ :csand=>{:html=>"html"},
65
+ :m3d=>{:html=>"html", :doc=>"doc"},
66
+ :rsd=>{:html=>"html"}
67
+ }
68
+ In addition, xml (outside of rfc2, rfc3) generates IsoDoc XML. If the argument is "all" or the option is
69
+ missing, all available extensions are generated.
70
+ -f, --format FORMAT Format of source file: asciidoc (current default, only format supported)
71
+ -r, --require LIBRARY Require LIBRARY prior to execution
72
+ -w, --wrapper Create wrapper folder for HTML output
73
+ -h, --help Show this message
74
+ ----
@@ -49,6 +49,24 @@ module Metanorma
49
49
  end
50
50
  end
51
51
 
52
+ desc "collection FILENAME", "Render HTML pages from XML/YAML colection"
53
+ option :format, aliases: "-x", type: :string, desc: "Formats to generate"
54
+ option "output-folder", aliases: "-w", required: true, desc: "Directory to save compiled files"
55
+ option :coverpage, aliases: "-c", desc: "Liquid template"
56
+
57
+ def collection(filename = nil)
58
+ if filename
59
+ opts = options.dup
60
+ opts[:format] &&= opts[:format].split(",").map &:to_sym
61
+ opts[:output_folder] = opts.delete :"output-folder"
62
+ coll = Metanorma::Collection.parse filename
63
+ coll.render opts
64
+ else UI.say("Need to specify a file to process")
65
+ end
66
+ rescue ArgumentError => e
67
+ UI.say e.message
68
+ end
69
+
52
70
  desc "version", "Version of the code"
53
71
  option :type, aliases: "-t", required: false, desc: "Type of standard to generate"
54
72
  option :format, aliases: "-f", default: :asciidoc, desc: "Format of source file: eg. asciidoc"
@@ -86,8 +104,14 @@ module Metanorma
86
104
  font: font,
87
105
  term_agreement: options[:agree_to_terms],
88
106
  )
107
+ rescue Fontist::Errors::LicensingError
108
+ UI.error(
109
+ "[error]: License acceptance required to install a necessary font." \
110
+ "Accept required licenses with: `metanorma setup --agree-to-terms`."
111
+ )
112
+ return
89
113
  rescue Fontist::Errors::NonSupportedFontError
90
- UI.say("[info]: Font `#{font}` is not supported yet!")
114
+ UI.say("[info]: The font `#{font}` is not yet supported.")
91
115
  end
92
116
  end
93
117
  end
@@ -43,7 +43,7 @@ module Metanorma
43
43
  begin
44
44
  Fontist::Font.find(font_name)
45
45
  rescue Fontist::Errors::MissingFontError
46
- ask_user_and_download_font(font_name)
46
+ process_font_installation(font_name)
47
47
  end
48
48
  end
49
49
 
@@ -54,39 +54,18 @@ module Metanorma
54
54
  end
55
55
  end
56
56
 
57
- def ask_user_and_download_font(font_name)
58
- response = term_agreement ? "yes" : "no"
59
- formula = Fontist::Formula.find(font_name)
57
+ def process_font_installation(font_name)
58
+ accepted_agreement = term_agreement == true ? "yes" : "no"
60
59
 
61
- if !term_agreement
62
- response = UI.ask(message(formula.license).strip)
63
- end
64
-
65
- if response.downcase === "yes"
66
- Fontist::Font.install(font_name, confirmation: response)
67
- end
60
+ UI.say(missing_font_message) if !term_agreement
61
+ Fontist::Font.install(font_name, confirmation: accepted_agreement)
68
62
  end
69
63
 
70
- def message(license)
64
+ def missing_font_message
71
65
  <<~MSG
72
- FONT LICENSE ACCEPTANCE REQUIRED:
73
-
74
- Metanorma has detected that you do not have the necessary fonts installed
75
- for PDF generation. Without those fonts, the generated PDF will use
76
- generic fonts that may not resemble the desired styling.
77
-
78
- Metanorma can download these files for you if you accept the font
79
- licensing conditions for the font "#{font_name}".
80
-
81
- FONT LICENSE BEGIN ("#{font_name}")
82
- -----------------------------------------------------------------------
83
- #{license}
84
- -----------------------------------------------------------------------
85
- FONT LICENSE END ("#{font_name}")
86
-
87
- Do you accept all presented font licenses, and want Metanorma to
88
- download these fonts for you?
89
- => TYPE "Yes" or "No":
66
+ Your system does not have the necessary fonts installed for
67
+ PDF generation. Without these fonts, the generated PDF will use
68
+ generic fonts that may not resemble the desired styling.\n
90
69
  MSG
91
70
  end
92
71
  end
@@ -1,5 +1,5 @@
1
1
  module Metanorma
2
2
  module Cli
3
- VERSION = "1.3.3"
3
+ VERSION = "1.3.7"
4
4
  end
5
5
  end
@@ -14,8 +14,14 @@ Gem::Specification.new do |spec|
14
14
  spec.homepage = "https://www.metanorma.com"
15
15
  spec.license = "BSD-2-Clause"
16
16
 
17
+ =begin
17
18
  spec.files = Dir['**/*'].reject { |f| f.match(%r{^(test|spec|features|templates|.git)/|.(gem|gif|png|jpg|jpeg|xml|html|doc|pdf|dtd|ent)$}) }
18
19
  spec.files += Dir.glob("templates/base/**", File::FNM_DOTMATCH).reject { |f| File.directory?(f) }
20
+ =end
21
+
22
+ spec.files = `git ls-files -z`.split("\x0").reject do |f|
23
+ f.match(%r{^(test|spec|features)/})
24
+ end
19
25
 
20
26
  spec.extra_rdoc_files = %w[README.adoc LICENSE]
21
27
  spec.bindir = "exe"
@@ -24,7 +30,6 @@ Gem::Specification.new do |spec|
24
30
  spec.required_ruby_version = '>= 2.4.0'
25
31
 
26
32
  spec.add_development_dependency "pry"
27
- spec.add_development_dependency "sassc", "2.4.0"
28
33
  spec.add_development_dependency "rake", "~> 12.0"
29
34
  spec.add_development_dependency "rspec", "~> 3.0"
30
35
  spec.add_development_dependency "byebug", "~> 10.0"
@@ -33,26 +38,26 @@ Gem::Specification.new do |spec|
33
38
  spec.add_development_dependency "rspec-core", "~> 3.4"
34
39
 
35
40
  spec.add_runtime_dependency "thor", "~> 1.0"
36
- spec.add_runtime_dependency "metanorma-iso", "~> 1.4.0"
37
- spec.add_runtime_dependency 'metanorma-ietf', "~> 2.1.0"
38
- spec.add_runtime_dependency 'metanorma-gb', "~> 1.4.0"
39
- spec.add_runtime_dependency 'metanorma-iec', "~> 1.1.0"
40
- spec.add_runtime_dependency 'metanorma-cc', "~> 1.4.0"
41
- spec.add_runtime_dependency 'metanorma-csa', "~> 1.5.0"
42
- #spec.add_runtime_dependency 'metanorma-ribose', "~> 1.5.0"
43
- spec.add_runtime_dependency 'metanorma-m3aawg', "~> 1.4.0"
44
- spec.add_runtime_dependency 'metanorma-generic', "~> 1.5.0"
45
- spec.add_runtime_dependency 'metanorma-standoc', "~> 1.4.0"
46
- #spec.add_runtime_dependency 'metanorma-mpfa', "~> 0.4.0"
47
- spec.add_runtime_dependency 'metanorma-un', "~> 0.4.0"
48
- spec.add_runtime_dependency 'metanorma-ogc', "~> 1.1.0"
49
- spec.add_runtime_dependency 'metanorma-nist', "~> 1.1.0"
50
- spec.add_runtime_dependency 'metanorma-itu', "~> 1.1.0"
51
- spec.add_runtime_dependency 'metanorma-iho', "~> 0.1.0"
52
- spec.add_runtime_dependency 'isodoc', "~> 1.1.0"
41
+ spec.add_runtime_dependency "metanorma-iso", "~> 1.5.0"
42
+ spec.add_runtime_dependency 'metanorma-ietf', "~> 2.2.0"
43
+ spec.add_runtime_dependency 'metanorma-gb', "~> 1.5.0"
44
+ spec.add_runtime_dependency 'metanorma-iec', "~> 1.2.0"
45
+ spec.add_runtime_dependency 'metanorma-cc', "~> 1.5.0"
46
+ spec.add_runtime_dependency 'metanorma-csa', "~> 1.6.0"
47
+ #spec.add_runtime_dependency 'metanorma-ribose', "~> 1.6.0"
48
+ spec.add_runtime_dependency 'metanorma-m3aawg', "~> 1.5.0"
49
+ spec.add_runtime_dependency 'metanorma-generic', "~> 1.6.0"
50
+ spec.add_runtime_dependency 'metanorma-standoc', "~> 1.5.0"
51
+ #spec.add_runtime_dependency 'metanorma-mpfa', "~> 0.5.0"
52
+ spec.add_runtime_dependency 'metanorma-un', "~> 0.5.0"
53
+ spec.add_runtime_dependency 'metanorma-ogc', "~> 1.2.0"
54
+ spec.add_runtime_dependency 'metanorma-nist', "~> 1.2.0"
55
+ spec.add_runtime_dependency 'metanorma-itu', "~> 1.2.0"
56
+ spec.add_runtime_dependency 'metanorma-iho', "~> 0.2.0"
57
+ spec.add_runtime_dependency 'isodoc', "~> 1.2.0"
53
58
  spec.add_runtime_dependency 'metanorma', "~> 1.1.0"
54
59
  #spec.add_runtime_dependency 'nokogiri', ">= 1"
55
60
  spec.add_runtime_dependency "git", "~> 1.5"
56
61
  spec.add_runtime_dependency "relaton-cli", ">= 0.8.2"
57
- spec.add_runtime_dependency "fontist", "~> 1.0"
62
+ spec.add_runtime_dependency "fontist", "~> 1.3.0"
58
63
  end
@@ -0,0 +1,74 @@
1
+ # Auto-generated by Cimas: Do not edit it manually!
2
+ # See https://github.com/metanorma/cimas
3
+ name: docker
4
+
5
+ on:
6
+ push:
7
+ branches: [ master ]
8
+ pull_request:
9
+ paths-ignore:
10
+ - .github/workflows/test.yml
11
+ - .github/workflows/macos.yml
12
+ - .github/workflows/ubuntu.yml
13
+ - .github/workflows/windows.yml
14
+ - Makefile.win
15
+ repository_dispatch:
16
+ types: [ metanorma/metanorma-docker ]
17
+
18
+ jobs:
19
+ test-docker:
20
+ runs-on: ubuntu-latest
21
+ container: docker://metanorma/mn
22
+ steps:
23
+ - name: Checkout code
24
+ uses: actions/checkout@v2
25
+ with:
26
+ token: ${{ secrets.METANORMA_CI_PAT_TOKEN || github.token }}
27
+ submodules: true
28
+ - name: Setup fonts
29
+ run: |
30
+ metanorma setup --agree-to-terms
31
+ - uses: actions/setup-go@v2-beta
32
+ with:
33
+ go-version: '^1.13.1'
34
+ - name: Install yq
35
+ run: |
36
+ GO111MODULE=on go get github.com/mikefarah/yq/v3
37
+ ln -s $GOPATH/bin/yq /usr/local/bin/yq
38
+ - name: Instal gems from local Gemfile
39
+ run: |
40
+ curl -L --retry 3 https://raw.githubusercontent.com/metanorma/metanorma-build-scripts/master/gemfile-to-bundle-add.sh | bash
41
+ - name: Build document in the Metanorma container
42
+ env:
43
+ LC_ALL: C.UTF-8
44
+ LANG: C.UTF-8
45
+ LANGUAGE: C.UTF-8
46
+ run: |
47
+ make clean all publish
48
+ - uses: actions/upload-artifact@master
49
+ with:
50
+ name: published
51
+ path: published
52
+
53
+ deploy-gh-pages:
54
+ if: github.ref == 'refs/heads/master'
55
+ runs-on: ubuntu-latest
56
+ needs: test-docker
57
+ steps:
58
+ - uses: actions/checkout@master
59
+ - uses: actions/download-artifact@v1
60
+ with:
61
+ name: published
62
+ - name: Deploy to GH Pages
63
+ uses: peaceiris/actions-gh-pages@v3
64
+ with:
65
+ deploy_key: ${{ secrets.GH_DEPLOY_KEY }}
66
+ publish_dir: ./published
67
+ force_orphan: true
68
+ user_name: ${{ github.actor }}
69
+ user_email: ${{ format('{0}@users.noreply.github.com', github.actor) }}
70
+ commit_message: "${{ format('Deploy to GitHub Pages: {0}', github.sha) }}"
71
+ - uses: kolpav/purge-artifacts-action@v1
72
+ with:
73
+ token: ${{ secrets.GITHUB_TOKEN }}
74
+ expire-in: 0
@@ -0,0 +1,50 @@
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/test.yml
11
+ - .github/workflows/docker.yml
12
+ - .github/workflows/ubuntu.yml
13
+ - .github/workflows/windows.yml
14
+ - Makefile.win
15
+
16
+ jobs:
17
+ test-macos:
18
+ name: Test on macOS
19
+ runs-on: macos-latest
20
+ steps:
21
+ - name: Checkout code
22
+ uses: actions/checkout@v2
23
+ with:
24
+ token: ${{ secrets.METANORMA_CI_PAT_TOKEN || github.token }}
25
+ submodules: true
26
+ - name: Cache xml2rfc
27
+ id: cache-xml2rfc
28
+ uses: actions/cache@v1
29
+ with:
30
+ path: ~/.cache/xml2rfc
31
+ key: xml2rfc
32
+ restore-key: xml2rfc
33
+ - name: Use Metanorma
34
+ run: |
35
+ brew update
36
+ brew install yq
37
+ brew install https://raw.githubusercontent.com/metanorma/homebrew-metanorma/master/Formula/metanorma.rb
38
+ metanorma version
39
+ - name: Setup Fonts
40
+ run: |
41
+ metanorma setup --agree-to-terms
42
+ - name: Install bundler
43
+ run: |
44
+ sudo gem install bundler
45
+ - name: Metanorma compile
46
+ env:
47
+ JAVA_OPTS: "java.awt.headless=true"
48
+ run: |
49
+ source $(brew --prefix metanorma)/libexec/venv/bin/activate
50
+ make clean all
@@ -0,0 +1,55 @@
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
+ pull_request:
9
+ paths-ignore:
10
+ - .github/workflows/test.yml
11
+ - .github/workflows/macos.yml
12
+ - .github/workflows/docker.yml
13
+ - .github/workflows/windows.yml
14
+ - Makefile.win
15
+
16
+ jobs:
17
+ test-linux:
18
+ name: Test on Ubuntu
19
+ runs-on: ubuntu-latest
20
+ steps:
21
+ - name: Checkout code
22
+ uses: actions/checkout@v2
23
+ with:
24
+ token: ${{ secrets.METANORMA_CI_PAT_TOKEN || github.token }}
25
+ submodules: true
26
+ - name: Cache xml2rfc
27
+ id: cache-xml2rfc
28
+ uses: actions/cache@v1
29
+ with:
30
+ path: ~/.cache/xml2rfc
31
+ key: xml2rfc
32
+ restore-key: xml2rfc
33
+ - name: Use Metanorma
34
+ run: |
35
+ sudo apt-get update
36
+ curl -L https://raw.githubusercontent.com/metanorma/metanorma-linux-setup/master/ubuntu.sh | sudo bash
37
+ sudo chown -R $USER:$(id -gn $USER) $HOME/.config
38
+ - name: Setup Fonts
39
+ run: |
40
+ sudo gem install rake metanorma-cli
41
+ sudo metanorma setup --agree-to-terms
42
+ - name: Install yq
43
+ run: |
44
+ sudo snap install yq
45
+ echo "::add-path::/snap/bin"
46
+ - name: Install bundler
47
+ run: |
48
+ sudo gem install bundler
49
+ - name: Metanorma compile
50
+ env:
51
+ JAVA_OPTS: "java.awt.headless=true"
52
+ run: |
53
+ source $HOME/.nvm/nvm.sh
54
+ nvm use mn-node
55
+ make clean all publish