Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
47 changes: 23 additions & 24 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,11 +21,10 @@ This action sets up the Metanorma toolchain and adds the command-line tools to t

<!-- start usage -->
```yaml
- uses: actions-mn/setup@v1
- uses: actions-mn/setup@v3
with:
# Version of metanorma to install
# For native installations: empty (default) installs latest, or specify version like "1.14.4"
# For gem installations: empty respects Gemfile.lock, "latest" runs bundle update, or specific version
# Version of metanorma-cli gem to install
# For gem installations: empty (default) respects Gemfile.lock, "latest" runs bundle update, or specific version like "1.7.1" pins that version
version: '' # optional, default is ''

# Snapcraft channel (Linux only): stable, candidate, beta, edge
Expand Down Expand Up @@ -84,15 +83,15 @@ The action automatically detects the appropriate installation method based on th
- **Docker**: Uses gem-based installation

```yaml
- uses: actions-mn/setup@v1
- uses: actions-mn/setup@v3
```

### Native Package Installation

Forces installation using the platform's native package manager:

```yaml
- uses: actions-mn/setup@v1
- uses: actions-mn/setup@v3
with:
installation-method: 'native'
version: '1.14.4'
Expand Down Expand Up @@ -128,7 +127,7 @@ Install Metanorma as a Ruby gem using Bundler. Requires Ruby to be set up first.
ruby-version: '3.4'
bundler-cache: true

- uses: actions-mn/setup@v1
- uses: actions-mn/setup@v3
with:
installation-method: 'gem'
```
Expand All @@ -140,15 +139,15 @@ Install Metanorma as a Ruby gem using Bundler. Requires Ruby to be set up first.
Install the latest version available on your platform:

```yaml
- uses: actions-mn/setup@v1
- uses: actions-mn/setup@v3
```

### Install Specific Version (Native)

Install a specific Metanorma version using the native package manager:

```yaml
- uses: actions-mn/setup@v1
- uses: actions-mn/setup@v3
with:
version: '1.14.4'
```
Expand All @@ -164,7 +163,7 @@ Install a specific Metanorma version using gem:
with:
ruby-version: '3.4'

- uses: actions-mn/setup@v1
- uses: actions-mn/setup@v3
with:
installation-method: 'gem'
version: '1.14.0'
Expand All @@ -179,7 +178,7 @@ When using gem-based installation with an existing Gemfile, the action respects
with:
ruby-version: '3.4'

- uses: actions-mn/setup@v1
- uses: actions-mn/setup@v3
with:
installation-method: 'gem'
```
Expand All @@ -198,7 +197,7 @@ When you specify a version, the action automatically uses pre-tested Gemfile.loc
with:
ruby-version: '3.4'

- uses: actions-mn/setup@v1
- uses: actions-mn/setup@v3
with:
installation-method: 'gem'
version: '1.14.3'
Expand Down Expand Up @@ -231,7 +230,7 @@ To disable automatic Gemfile.lock replacement and respect your workspace's Gemfi
with:
ruby-version: '3.4'

- uses: actions-mn/setup@v1
- uses: actions-mn/setup@v3
with:
installation-method: 'gem'
version: '1.14.3'
Expand All @@ -247,7 +246,7 @@ To update all gem dependencies while keeping the metanorma-cli version pinned:
with:
ruby-version: '3.4'

- uses: actions-mn/setup@v1
- uses: actions-mn/setup@v3
with:
installation-method: 'gem'
version: '1.14.3'
Expand All @@ -268,7 +267,7 @@ To update Metanorma to the latest gem version:
with:
ruby-version: '3.4'

- uses: actions-mn/setup@v1
- uses: actions-mn/setup@v3
with:
installation-method: 'gem'
version: 'latest'
Expand All @@ -285,7 +284,7 @@ Specify a custom Gemfile path:
with:
ruby-version: '3.4'

- uses: actions-mn/setup@v1
- uses: actions-mn/setup@v3
with:
installation-method: 'gem'
gemfile: 'tools/Gemfile'
Expand All @@ -300,7 +299,7 @@ By default, gem-based installation runs `bundle exec fontist update` to download
with:
ruby-version: '3.4'

- uses: actions-mn/setup@v1
- uses: actions-mn/setup@v3
with:
installation-method: 'gem'
fontist-update: 'false'
Expand All @@ -311,7 +310,7 @@ By default, gem-based installation runs `bundle exec fontist update` to download
Install Metanorma from a specific Snap channel:

```yaml
- uses: actions-mn/setup@v1
- uses: actions-mn/setup@v3
with:
installation-method: 'native'
snap-channel: 'edge' # options: stable, candidate, beta, edge
Expand All @@ -322,7 +321,7 @@ Install Metanorma from a specific Snap channel:
On Linux, you can install a specific Snap revision corresponding to a Metanorma version:

```yaml
- uses: actions-mn/setup@v1
- uses: actions-mn/setup@v3
with:
installation-method: 'native'
version: '1.13.9'
Expand All @@ -343,7 +342,7 @@ This ensures you get exactly the Metanorma version you requested, with the abili
To install pre-release versions from Chocolatey:

```yaml
- uses: actions-mn/setup@v1
- uses: actions-mn/setup@v3
with:
installation-method: 'native'
choco-prerelease: 'true'
Expand All @@ -367,7 +366,7 @@ When the action runs, it:
The `idempotent` output indicates whether installation was skipped:

```yaml
- uses: actions-mn/setup@v1
- uses: actions-mn/setup@v3
id: setup-metanorma

- name: Check if installation was skipped
Expand Down Expand Up @@ -402,7 +401,7 @@ jobs:
steps:
- uses: actions/checkout@v4

- uses: actions-mn/setup@v1
- uses: actions-mn/setup@v3
with:
installation-method: 'gem'

Expand All @@ -422,7 +421,7 @@ jobs:

# Alpine's musl libc is incompatible with ruby/setup-ruby
# Use gem installation directly
- uses: actions-mn/setup@v1
- uses: actions-mn/setup@v3
with:
installation-method: 'gem'

Expand Down Expand Up @@ -494,7 +493,7 @@ Snap packages don't support version-specific channels like `1.14.3/stable`. Inst
**Example:**

```yaml
- uses: actions-mn/setup@v1
- uses: actions-mn/setup@v3
with:
version: '1.13.9'
```
Expand Down