mirror of
https://github.com/ruby/setup-ruby.git
synced 2026-09-13 22:44:20 +02:00
Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
cd4241788a | ||
|
|
3c76dcfa76 | ||
|
|
a7439cf424 | ||
|
|
b9675e15ad | ||
|
|
57a3395c80 | ||
|
|
296bf7f67a | ||
|
|
e92b7971f0 | ||
|
|
b2e1b33839 | ||
|
|
645077fe5e | ||
|
|
301d3e0984 | ||
|
|
8c72644a0b | ||
|
|
d02b65e726 | ||
|
|
d246303ba7 | ||
|
|
d78e94b867 | ||
|
|
793715001d | ||
|
|
69fe46858b | ||
|
|
dcbc29fae9 | ||
|
|
3f53c4ecc2 | ||
|
|
9b993bc63c | ||
|
|
d6a695ac2a | ||
|
|
e404913b05 | ||
|
|
eb938a806e | ||
|
|
ee5764de2c | ||
|
|
2b019609e2 | ||
|
|
7e21bdc34c | ||
|
|
b37f0a38ea | ||
|
|
ebaea52cb2 | ||
|
|
382b2c5e9b | ||
|
|
0d85c5bbb7 | ||
|
|
b80945c764 | ||
|
|
1a68550f2e | ||
|
|
bd94d6a504 | ||
|
|
b9d02e5f7e | ||
|
|
4d8ce7b87d | ||
|
|
cd9d3de43b | ||
|
|
7baabd2c5d |
+63
-13
@@ -15,21 +15,26 @@ jobs:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
os: [ ubuntu-18.04, ubuntu-20.04, macos-10.15, macos-11.0, windows-2019, windows-2022 ]
|
||||
ruby: [ 1.9, '2.0', 2.1, 2.2, 2.3, 2.4, 2.5, 2.6, 2.7, '3.0', 3.1, ruby-head, jruby, jruby-head, truffleruby, truffleruby-head, truffleruby+graalvm, truffleruby+graalvm-head ]
|
||||
os: [ ubuntu-18.04, ubuntu-20.04, macos-10.15, macos-11, macos-12, windows-2019, windows-2022 ]
|
||||
ruby: [ '1.9', '2.0', '2.1', '2.2', '2.3', '2.4', '2.5', '2.6', '2.7', '3.0', '3.1', ruby-head, jruby, jruby-head, truffleruby, truffleruby-head, truffleruby+graalvm, truffleruby+graalvm-head ]
|
||||
include:
|
||||
- { os: ubuntu-22.04, ruby: '3.1.0' }
|
||||
- { os: ubuntu-22.04, ruby: '3.1' }
|
||||
- { os: ubuntu-22.04, ruby: '3.2.0-preview1' }
|
||||
- { os: ubuntu-22.04, ruby: ruby-head }
|
||||
- { os: windows-2019, ruby: mingw }
|
||||
- { os: windows-2019, ruby: mswin }
|
||||
- { os: windows-2022, ruby: mingw }
|
||||
- { os: windows-2022, ruby: mswin }
|
||||
- { os: windows-2022, ruby: ucrt }
|
||||
exclude:
|
||||
- { os: windows-2019, ruby: 1.9 }
|
||||
- { os: windows-2019, ruby: '1.9' }
|
||||
- { os: windows-2019, ruby: debug }
|
||||
- { os: windows-2019, ruby: truffleruby }
|
||||
- { os: windows-2019, ruby: truffleruby-head }
|
||||
- { os: windows-2019, ruby: truffleruby+graalvm }
|
||||
- { os: windows-2019, ruby: truffleruby+graalvm-head }
|
||||
- { os: windows-2022, ruby: 1.9 }
|
||||
- { os: windows-2022, ruby: '1.9' }
|
||||
- { os: windows-2022, ruby: debug }
|
||||
- { os: windows-2022, ruby: truffleruby }
|
||||
- { os: windows-2022, ruby: truffleruby-head }
|
||||
@@ -113,38 +118,83 @@ jobs:
|
||||
run: gem install sassc
|
||||
|
||||
testLatestRubygemsVersion:
|
||||
name: "Test rubygems input set to latest upgrades the default RubyGems version"
|
||||
name: "Test rubygems: latest upgrades the default RubyGems version"
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: ./
|
||||
with:
|
||||
ruby-version: 2.6
|
||||
ruby-version: '2.6'
|
||||
rubygems: latest
|
||||
- run: ruby -e "exit(Gem.rubygems_version > Gem::Version.new('3.0.3'))"
|
||||
|
||||
testFixedRubygemsVersionUpgrades:
|
||||
name: "Test rubygems input set to a fixed version upgrades RubyGems to that version if the default is older"
|
||||
name: "Test rubygems: version upgrades RubyGems to that version if the default is older"
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: ./
|
||||
with:
|
||||
ruby-version: 2.6
|
||||
ruby-version: '2.6'
|
||||
rubygems: 3.2.3
|
||||
- run: gem --version | grep -F "3.2.3"
|
||||
|
||||
testFixedRubygemsVersionNoop:
|
||||
name: "Test rubygems input set to a fixed version noops if the default is newer"
|
||||
name: "Test rubygems: version noops if the default is newer"
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: ./
|
||||
with:
|
||||
ruby-version: 3.1.0
|
||||
ruby-version: '3.1.0'
|
||||
rubygems: 3.2.3
|
||||
- run: gem --version | grep -F "3.3.3"
|
||||
|
||||
testUseBundlerFromRubyGemsUpdate:
|
||||
name: "Test rubygems: version uses the Bundler installed by the rubygems update"
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: ./
|
||||
with:
|
||||
ruby-version: '2.2'
|
||||
rubygems: 2.7.11
|
||||
- run: gem --version | grep -F "2.7.11"
|
||||
- run: bundle --version | grep -F "1.16.6"
|
||||
|
||||
testFixedBundlerVersionForOldRuby:
|
||||
name: "Test bundler: 1.x for old Ruby"
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: ./
|
||||
with:
|
||||
ruby-version: '2.2'
|
||||
bundler: 1.16.6
|
||||
- run: bundle --version | grep -F "1.16.6" # And not 1.17.x from ~> 1
|
||||
|
||||
testMajorBundlerVersion:
|
||||
name: "Test with a major Bundler version"
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: ./
|
||||
with:
|
||||
ruby-version: '2.6'
|
||||
bundler: 2
|
||||
- run: bundle --version | grep -P "Bundler version 2\.\d+\.\d+"
|
||||
|
||||
testMinorBundlerVersion:
|
||||
name: "Test with a minor Bundler version"
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: ./
|
||||
with:
|
||||
ruby-version: '2.6'
|
||||
bundler: 2.2
|
||||
- run: bundle --version | grep -P "Bundler version 2\.2\.\d+"
|
||||
|
||||
testExactBundlerVersion:
|
||||
name: "Test with an exact Bundler version"
|
||||
runs-on: ubuntu-latest
|
||||
@@ -152,7 +202,7 @@ jobs:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: ./
|
||||
with:
|
||||
ruby-version: 2.6
|
||||
ruby-version: '2.6'
|
||||
bundler: 2.2.3
|
||||
- run: bundle --version | grep -F "Bundler version 2.2.3"
|
||||
|
||||
@@ -165,7 +215,7 @@ jobs:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: ./
|
||||
with:
|
||||
ruby-version: 2.7
|
||||
ruby-version: '2.7'
|
||||
bundler: 1
|
||||
bundler-cache: true
|
||||
- run: bundle --version | grep -F "Bundler version 1."
|
||||
@@ -183,7 +233,7 @@ jobs:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: ./
|
||||
with:
|
||||
ruby-version: 2.6
|
||||
ruby-version: '2.6'
|
||||
bundler-cache: true
|
||||
- run: bundle exec rails --version
|
||||
|
||||
|
||||
+1
-1
@@ -1,2 +1,2 @@
|
||||
nodejs 12.0.0
|
||||
nodejs 16.0.0
|
||||
ruby 2.7.0
|
||||
|
||||
@@ -14,10 +14,10 @@ This action currently supports these versions of MRI, JRuby and TruffleRuby:
|
||||
|
||||
| Interpreter | Versions |
|
||||
| ----------- | -------- |
|
||||
| `ruby` | 1.9.3, 2.0.0, 2.1.9, 2.2, all versions from 2.3.0 until 3.1.1, head, debug, mingw, mswin |
|
||||
| `jruby` | 9.1.17.0 - 9.3.3.0, head |
|
||||
| `truffleruby` | 19.3.0 - 22.0.0, head |
|
||||
| `truffleruby+graalvm` | 21.2.0 - 22.0.0, head |
|
||||
| `ruby` | 1.9.3, 2.0.0, 2.1.9, 2.2, all versions from 2.3.0 until 3.2.0-preview1, head, debug, mingw, mswin |
|
||||
| `jruby` | 9.1.17.0 - 9.3.4.0, head |
|
||||
| `truffleruby` | 19.3.0 - 22.1.0, head |
|
||||
| `truffleruby+graalvm` | 21.2.0 - 22.1.0, head |
|
||||
|
||||
`ruby-debug` is the same as `ruby-head` but with assertions enabled (`-DRUBY_DEBUG=1`).
|
||||
On Windows, `mingw` and `mswin` are `ruby-head` builds using the MSYS2/MinGW and the MSVC toolchains respectively.
|
||||
@@ -35,13 +35,15 @@ which means Ruby ≤ 2.4 is unmaintained and considered insecure.
|
||||
|
||||
### Supported Platforms
|
||||
|
||||
The action works for all [GitHub-hosted runners](https://help.github.com/en/actions/automating-your-workflow-with-github-actions/virtual-environments-for-github-hosted-runners).
|
||||
The action works on these [GitHub-hosted runners](https://help.github.com/en/actions/automating-your-workflow-with-github-actions/virtual-environments-for-github-hosted-runners) virtual environments. Virtual environments not listed below are unsupported.
|
||||
|
||||
| Operating System | Recommended | Other Supported Versions |
|
||||
| ----------- | -------- | -------- |
|
||||
| Ubuntu | `ubuntu-latest` (= `ubuntu-20.04`) | `ubuntu-18.04`, `ubuntu-16.04` |
|
||||
| macOS | `macos-latest` (= `macos-10.15`) | `macos-11.0` |
|
||||
| Windows | `windows-latest` (= `windows-2019`) | `windows-2022` |
|
||||
| Ubuntu | `ubuntu-latest` (= `ubuntu-20.04`) | `ubuntu-18.04`, `ubuntu-22.04` (beta, only `ruby: 3.1 - head`) |
|
||||
| macOS | `macos-latest` (= `macos-11`) | `macos-10.15`, `macos-12` (beta) |
|
||||
| Windows | `windows-latest` (= `windows-2022`) | `windows-2019` |
|
||||
|
||||
On `ubuntu-22.04` (beta), only `ruby: 3.1 - head` are supported, due to Ubuntu 22.04 only supporting OpenSSL 3.
|
||||
|
||||
The prebuilt releases are generated by [ruby-builder](https://github.com/ruby/ruby-builder)
|
||||
and on Windows by [RubyInstaller2](https://github.com/oneclick/rubyinstaller2).
|
||||
@@ -67,7 +69,7 @@ jobs:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: ruby/setup-ruby@v1
|
||||
with:
|
||||
ruby-version: 2.6 # Not needed with a .ruby-version file
|
||||
ruby-version: '3.0' # Not needed with a .ruby-version file
|
||||
bundler-cache: true # runs 'bundle install' and caches installed gems automatically
|
||||
- run: bundle exec rake
|
||||
```
|
||||
@@ -86,7 +88,7 @@ jobs:
|
||||
matrix:
|
||||
os: [ubuntu-latest, macos-latest]
|
||||
# Due to https://github.com/actions/runner/issues/849, we have to use quotes for '3.0'
|
||||
ruby: [2.6, 2.7, '3.0', 3.1, head, jruby, jruby-head, truffleruby, truffleruby-head]
|
||||
ruby: ['2.7', '3.0', '3.1', head, jruby, jruby-head, truffleruby, truffleruby-head]
|
||||
runs-on: ${{ matrix.os }}
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
@@ -115,7 +117,7 @@ jobs:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: ruby/setup-ruby@v1
|
||||
with:
|
||||
ruby-version: 2.6
|
||||
ruby-version: '3.0'
|
||||
bundler-cache: true # runs 'bundle install' and caches installed gems automatically
|
||||
- run: bundle exec rake
|
||||
```
|
||||
@@ -127,8 +129,8 @@ and the [condition and expression syntax](https://help.github.com/en/actions/ref
|
||||
### Supported Version Syntax
|
||||
|
||||
* engine-version like `ruby-2.6.5` and `truffleruby-19.3.0`
|
||||
* short version like `2.6`, automatically using the latest release matching that version (`2.6.5`)
|
||||
* version only like `2.6.5`, assumes MRI for the engine
|
||||
* short version like `'2.6'`, automatically using the latest release matching that version (`2.6.10`)
|
||||
* version only like `'2.6.5'`, assumes MRI for the engine
|
||||
* engine only like `truffleruby`, uses the latest stable release of that implementation
|
||||
* `.ruby-version` reads from the project's `.ruby-version` file
|
||||
* `.tool-versions` reads from the project's `.tool-versions` file
|
||||
@@ -225,7 +227,7 @@ It is recommended to first get your build working on Ubuntu and macOS before try
|
||||
* The `PATH` contains [multiple compiler toolchains](https://github.com/ruby/setup-ruby/issues/19). Use `where.exe` to debug which tool is used.
|
||||
* For Ruby ≥ 2.4, MSYS2 is prepended to the `Path`, similar to what RubyInstaller2 does.
|
||||
* For Ruby < 2.4, the DevKit MSYS tools are installed and prepended to the `Path`.
|
||||
* JRuby on Windows has a known bug that `bundle exec rake` [fails](https://github.com/ruby/setup-ruby/issues/18).
|
||||
* Use JRuby 9.2.20+ on Windows (older versions have [bugs](https://github.com/ruby/setup-ruby/issues/18#issuecomment-889072695)).
|
||||
|
||||
## Versioning
|
||||
|
||||
@@ -247,7 +249,7 @@ if the [virtual environment](https://github.com/actions/virtual-environments) is
|
||||
* Make sure to use the same operating system and version.
|
||||
* Set the environment variable `ImageOS` on the runner to the corresponding value on GitHub-hosted runners (e.g. `ubuntu18`/`macos1015`/`win19`). This is necessary to detect the operating system and version.
|
||||
* Make sure to use the same version of libssl.
|
||||
* Make sure that the operating system has `libyaml-0` installed
|
||||
* Make sure that the operating system has `libyaml-0` and [`libgmp`](https://stackoverflow.com/questions/26555902/ruby-v-dyld-library-not-loaded-usr-local-lib-libgmp-10-dylib) installed
|
||||
* The default tool cache directory (`/opt/hostedtoolcache` on Linux, `/Users/runner/hostedtoolcache` on macOS,
|
||||
`C:/hostedtoolcache/windows` on Windows) must be writable by the `runner` user.
|
||||
This is necessary since the Ruby builds embed the install path when built and cannot be moved around.
|
||||
|
||||
+4
-13
@@ -7,39 +7,30 @@ branding:
|
||||
inputs:
|
||||
ruby-version:
|
||||
description: 'Engine and version to use, see the syntax in the README. Reads from .ruby-version or .tool-versions if unset.'
|
||||
required: false
|
||||
default: 'default'
|
||||
rubygems:
|
||||
description: |
|
||||
The version of RubyGems to use. Either 'default', 'latest', or a version number (e.g., 3.3.5).
|
||||
The version of RubyGems to use. Either 'default' (the default), 'latest', or a version number (e.g., 3.3.5).
|
||||
For 'default', no action is taken and the version of RubyGems that comes with Ruby by default is used.
|
||||
For 'latest', `gem update --system` is run to update to the latest RubyGems version.
|
||||
Similarly, if a version number is given, `gem update --system <version>` is run to update to that version of RubyGems, as long as that version is newer than the one provided by default.
|
||||
Defaults to 'default'.
|
||||
bundler:
|
||||
description: |
|
||||
The version of Bundler to install. Either 'none', 'latest', 'Gemfile.lock', or a version number (e.g., 1, 2, 2.1.4).
|
||||
The version of Bundler to install. Either 'none', 'latest', 'Gemfile.lock', or a version number (e.g., 1, 2, 2.1, 2.1.4).
|
||||
For 'Gemfile.lock', the version is determined based on the BUNDLED WITH section from the file Gemfile.lock, $BUNDLE_GEMFILE.lock or gems.locked.
|
||||
Defaults to 'Gemfile.lock' if the file exists and 'latest' otherwise.
|
||||
required: false
|
||||
default: 'default'
|
||||
Defaults to 'default', which means 'Gemfile.lock' if the file exists and 'latest' otherwise.
|
||||
bundler-cache:
|
||||
description: 'Run "bundle install", and cache the result automatically. Either true or false.'
|
||||
required: false
|
||||
default: 'false'
|
||||
working-directory:
|
||||
description: 'The working directory to use for resolving paths for .ruby-version, .tool-versions and Gemfile.lock.'
|
||||
required: false
|
||||
default: '.'
|
||||
cache-version:
|
||||
description: |
|
||||
Arbitrary string that will be added to the cache key of the bundler cache. Set or change it if you need
|
||||
to invalidate the cache.
|
||||
required: false
|
||||
default: '0'
|
||||
outputs:
|
||||
ruby-prefix:
|
||||
description: 'The prefix of the installed ruby'
|
||||
runs:
|
||||
using: 'node12'
|
||||
using: 'node16'
|
||||
main: 'dist/index.js'
|
||||
|
||||
+33
-18
@@ -50,9 +50,14 @@ async function afterLockFile(lockFile, platform, engine, rubyVersion) {
|
||||
}
|
||||
}
|
||||
|
||||
export async function installBundler(bundlerVersionInput, lockFile, platform, rubyPrefix, engine, rubyVersion) {
|
||||
export async function installBundler(bundlerVersionInput, rubygemsInputSet, lockFile, platform, rubyPrefix, engine, rubyVersion) {
|
||||
let bundlerVersion = bundlerVersionInput
|
||||
|
||||
if (rubygemsInputSet && bundlerVersion === 'default') {
|
||||
console.log('Using the Bundler installed by updating RubyGems')
|
||||
return 'unknown'
|
||||
}
|
||||
|
||||
if (bundlerVersion === 'default' || bundlerVersion === 'Gemfile.lock') {
|
||||
bundlerVersion = readBundledWithFromGemfileLock(lockFile)
|
||||
|
||||
@@ -65,39 +70,50 @@ export async function installBundler(bundlerVersionInput, lockFile, platform, ru
|
||||
bundlerVersion = '2'
|
||||
}
|
||||
|
||||
if (/^\d+/.test(bundlerVersion)) {
|
||||
// OK
|
||||
if (/^\d+(?:\.\d+){0,2}$/.test(bundlerVersion)) {
|
||||
// OK - input is a 1, 2, or 3 part version number
|
||||
} else {
|
||||
throw new Error(`Cannot parse bundler input: ${bundlerVersion}`)
|
||||
}
|
||||
|
||||
const floatVersion = common.floatVersion(rubyVersion)
|
||||
|
||||
if (engine === 'ruby' && floatVersion <= 2.2) {
|
||||
console.log('Bundler 2 requires Ruby 2.3+, using Bundler 1 on Ruby <= 2.2')
|
||||
bundlerVersion = '1'
|
||||
} else if (engine === 'ruby' && /^2\.3\.[01]/.test(rubyVersion)) {
|
||||
console.log('Ruby 2.3.0 and 2.3.1 have shipped with an old rubygems that only works with Bundler 1')
|
||||
bundlerVersion = '1'
|
||||
} else if (engine === 'jruby' && rubyVersion.startsWith('9.1')) { // JRuby 9.1 targets Ruby 2.3, treat it the same
|
||||
console.log('JRuby 9.1 has a bug with Bundler 2 (https://github.com/ruby/setup-ruby/issues/108), using Bundler 1 instead on JRuby 9.1')
|
||||
bundlerVersion = '1'
|
||||
// Use Bundler 1 when we know Bundler 2 does not work
|
||||
if (bundlerVersion.startsWith('2')) {
|
||||
if (engine === 'ruby' && floatVersion <= 2.2) {
|
||||
console.log('Bundler 2 requires Ruby 2.3+, using Bundler 1 on Ruby <= 2.2')
|
||||
bundlerVersion = '1'
|
||||
} else if (engine === 'ruby' && /^2\.3\.[01]/.test(rubyVersion)) {
|
||||
console.log('Ruby 2.3.0 and 2.3.1 have shipped with an old rubygems that only works with Bundler 1')
|
||||
bundlerVersion = '1'
|
||||
} else if (engine === 'jruby' && rubyVersion.startsWith('9.1')) { // JRuby 9.1 targets Ruby 2.3, treat it the same
|
||||
console.log('JRuby 9.1 has a bug with Bundler 2 (https://github.com/ruby/setup-ruby/issues/108), using Bundler 1 instead on JRuby 9.1')
|
||||
bundlerVersion = '1'
|
||||
}
|
||||
}
|
||||
|
||||
// Workaround for truffleruby 22.0 + latest Bundler, use shipped Bundler instead: https://github.com/oracle/truffleruby/issues/2586
|
||||
const useShippedBundler2 = common.isHeadVersion(rubyVersion) || (engine.startsWith('truffleruby') && rubyVersion.startsWith('22.0'))
|
||||
const truffleruby22workaround = engine.startsWith('truffleruby') && rubyVersion.startsWith('22.0')
|
||||
const useShippedBundler2 = common.isHeadVersion(rubyVersion) || truffleruby22workaround
|
||||
|
||||
if (useShippedBundler2 && common.isBundler2Default(engine, rubyVersion) && bundlerVersion.startsWith('2')) {
|
||||
// Avoid installing a newer Bundler version for head versions as it might not work.
|
||||
// For releases, even if they ship with Bundler 2 we install the latest Bundler.
|
||||
console.log(`Using Bundler 2 shipped with ${engine}-${rubyVersion}`)
|
||||
if (truffleruby22workaround) {
|
||||
console.log(`Using Bundler 2 shipped with ${engine}-${rubyVersion} (workaround for https://github.com/oracle/truffleruby/issues/2586 on truffleruby 22.0)`)
|
||||
} else {
|
||||
console.log(`Using Bundler 2 shipped with ${engine}-${rubyVersion} (head versions do not always support the latest Bundler release)`)
|
||||
}
|
||||
} else if (engine.startsWith('truffleruby') && common.isBundler1Default(engine, rubyVersion) && bundlerVersion.startsWith('1')) {
|
||||
console.log(`Using Bundler 1 shipped with ${engine}-${rubyVersion}`)
|
||||
console.log(`Using Bundler 1 shipped with ${engine}-${rubyVersion} (required for truffleruby < 21.0)`)
|
||||
} else {
|
||||
const gem = path.join(rubyPrefix, 'bin', 'gem')
|
||||
const bundlerVersionConstraint = /^\d+\.\d+\.\d+/.test(bundlerVersion) ? bundlerVersion : `~> ${bundlerVersion}`
|
||||
// Workaround for https://github.com/rubygems/rubygems/issues/5245
|
||||
const force = (platform.startsWith('windows-') && engine === 'ruby' && floatVersion >= 3.1) ? ['--force'] : []
|
||||
|
||||
const versionParts = [...bundlerVersion.matchAll(/\d+/g)].length
|
||||
const bundlerVersionConstraint = versionParts === 3 ? bundlerVersion : `~> ${bundlerVersion}.0`
|
||||
|
||||
await exec.exec(gem, ['install', 'bundler', ...force, '-v', bundlerVersionConstraint])
|
||||
}
|
||||
|
||||
@@ -192,8 +208,7 @@ async function computeBaseKey(platform, engine, version, lockFile, cacheVersion)
|
||||
|
||||
if (common.isHeadVersion(version)) {
|
||||
if (engine !== 'jruby') {
|
||||
// CRuby dev versions do not change the ABI version when the ABI changes, so use the commit as the ABI version
|
||||
let print_abi = engine === 'ruby' ? 'print RUBY_REVISION' : "print RbConfig::CONFIG['ruby_version']"
|
||||
let print_abi = "print RbConfig::CONFIG['ruby_version']"
|
||||
let abi = ''
|
||||
await exec.exec('ruby', ['-e', print_abi], {
|
||||
silent: true,
|
||||
|
||||
@@ -98,6 +98,17 @@ function getImageOS() {
|
||||
return imageOS
|
||||
}
|
||||
|
||||
export const supportedPlatforms = [
|
||||
'ubuntu-18.04',
|
||||
'ubuntu-20.04',
|
||||
'ubuntu-22.04',
|
||||
'macos-10.15',
|
||||
'macos-11',
|
||||
'macos-12',
|
||||
'windows-2019',
|
||||
'windows-2022',
|
||||
]
|
||||
|
||||
export function getVirtualEnvironmentName() {
|
||||
const imageOS = getImageOS()
|
||||
|
||||
@@ -108,7 +119,11 @@ export function getVirtualEnvironmentName() {
|
||||
|
||||
match = imageOS.match(/^macos(\d{2})(\d+)?/) // e.g. macos1015, macos11
|
||||
if (match) {
|
||||
return `macos-${match[1]}.${match[2] || '0'}`
|
||||
if (match[2]) {
|
||||
return `macos-${match[1]}.${match[2]}`
|
||||
} else {
|
||||
return `macos-${match[1]}`
|
||||
}
|
||||
}
|
||||
|
||||
match = imageOS.match(/^win(\d+)/) // e.g. win19
|
||||
@@ -159,7 +174,7 @@ export function win2nix(path) {
|
||||
function rubyIsUCRT(path) {
|
||||
return !!(fs.existsSync(path) &&
|
||||
fs.readdirSync(path, { withFileTypes: true }).find(dirent =>
|
||||
dirent.isFile() && dirent.name.match(/^x64-ucrt-ruby\d{3}\.dll$/)))
|
||||
dirent.isFile() && dirent.name.match(/^x64-(ucrt|vcruntime\d{3})-ruby\d{3}\.dll$/)))
|
||||
}
|
||||
|
||||
export function setupPath(newPathEntries) {
|
||||
|
||||
+8465
-3687
File diff suppressed because one or more lines are too long
@@ -31,4 +31,3 @@ versions['mswin'] = 'https://github.com/MSP-Greg/ruby-loco/releases/download/rub
|
||||
versions['ucrt'] = 'https://github.com/MSP-Greg/ruby-loco/releases/download/ruby-master/ruby-ucrt.7z'
|
||||
|
||||
File.binwrite 'windows-versions.json', "#{JSON.pretty_generate(versions)}\n"
|
||||
|
||||
|
||||
@@ -13,7 +13,7 @@ const inputDefaults = {
|
||||
'ruby-version': 'default',
|
||||
'rubygems': 'default',
|
||||
'bundler': 'default',
|
||||
'bundler-cache': 'true',
|
||||
'bundler-cache': 'false',
|
||||
'working-directory': '.',
|
||||
'cache-version': bundler.DEFAULT_CACHE_VERSION,
|
||||
}
|
||||
@@ -23,7 +23,7 @@ export async function run() {
|
||||
try {
|
||||
await setupRuby()
|
||||
} catch (error) {
|
||||
core.setFailed(error.message)
|
||||
core.setFailed(error.stack)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -42,7 +42,7 @@ export async function setupRuby(options = {}) {
|
||||
const [engine, parsedVersion] = parseRubyEngineAndVersion(inputs['ruby-version'])
|
||||
|
||||
let installer
|
||||
if (platform.startsWith('windows-') && engine !== 'jruby') {
|
||||
if (platform.startsWith('windows-') && engine === 'ruby') {
|
||||
installer = require('./windows')
|
||||
} else {
|
||||
installer = require('./ruby-builder')
|
||||
@@ -66,7 +66,8 @@ export async function setupRuby(options = {}) {
|
||||
await common.measure('Print Ruby version', async () =>
|
||||
await exec.exec('ruby', ['--version']))
|
||||
|
||||
if (inputs['rubygems'] !== 'default') {
|
||||
const rubygemsInputSet = inputs['rubygems'] !== 'default'
|
||||
if (rubygemsInputSet) {
|
||||
await common.measure('Updating RubyGems', async () =>
|
||||
rubygems.rubygemsUpdate(inputs['rubygems'], rubyPrefix))
|
||||
}
|
||||
@@ -79,11 +80,11 @@ export async function setupRuby(options = {}) {
|
||||
}
|
||||
|
||||
const [gemfile, lockFile] = bundler.detectGemfiles()
|
||||
let bundlerVersion = "unknown"
|
||||
let bundlerVersion = 'unknown'
|
||||
|
||||
if (inputs['bundler'] !== 'none') {
|
||||
bundlerVersion = await common.measure('Installing Bundler', async () =>
|
||||
bundler.installBundler(inputs['bundler'], lockFile, platform, rubyPrefix, engine, version))
|
||||
bundler.installBundler(inputs['bundler'], rubygemsInputSet, lockFile, platform, rubyPrefix, engine, version))
|
||||
}
|
||||
|
||||
if (inputs['bundler-cache'] === 'true') {
|
||||
@@ -150,7 +151,7 @@ function validateRubyEngineAndVersion(platform, engineVersions, engine, parsedVe
|
||||
throw new Error(`Unknown version ${parsedVersion} for ${engine} on ${platform}
|
||||
available versions for ${engine} on ${platform}: ${engineVersions.join(', ')}
|
||||
Make sure you use the latest version of the action with - uses: ruby/setup-ruby@v1
|
||||
File an issue at https://github.com/ruby/setup-ruby/issues if would like support for a new version`)
|
||||
File an issue at https://github.com/ruby/setup-ruby/issues if you would like support for a new version`)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1,5 +1,10 @@
|
||||
engine_input, version = ARGV.fetch(0).split('-', 2)
|
||||
|
||||
if engine_input == 'windows'
|
||||
require_relative 'generate-windows-versions'
|
||||
exit
|
||||
end
|
||||
|
||||
MATCH = case engine_input
|
||||
when 'ruby', 'jruby'
|
||||
/^\d+\.\d+\./
|
||||
|
||||
+7
-7
@@ -22,14 +22,14 @@
|
||||
},
|
||||
"homepage": "https://github.com/ruby/setup-ruby",
|
||||
"dependencies": {
|
||||
"@actions/cache": "^1.0.8",
|
||||
"@actions/core": "^1.4.0",
|
||||
"@actions/exec": "^1.1.0",
|
||||
"@actions/io": "^1.1.1",
|
||||
"@actions/tool-cache": "^1.7.1",
|
||||
"semver": "^6.1.0"
|
||||
"@actions/cache": "^2.0.2",
|
||||
"@actions/core": "^1.7.0",
|
||||
"@actions/exec": "^1.1.1",
|
||||
"@actions/io": "^1.1.2",
|
||||
"@actions/tool-cache": "^1.7.2",
|
||||
"semver": "^7.3.7"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@vercel/ncc": "^0.31.1"
|
||||
"@vercel/ncc": "^0.33.4"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -7,28 +7,29 @@
|
||||
"2.3.0", "2.3.1", "2.3.2", "2.3.3", "2.3.4", "2.3.5", "2.3.6", "2.3.7", "2.3.8",
|
||||
"2.4.0", "2.4.1", "2.4.2", "2.4.3", "2.4.4", "2.4.5", "2.4.6", "2.4.7", "2.4.9", "2.4.10",
|
||||
"2.5.0", "2.5.1", "2.5.2", "2.5.3", "2.5.4", "2.5.5", "2.5.6", "2.5.7", "2.5.8", "2.5.9",
|
||||
"2.6.0", "2.6.1", "2.6.2", "2.6.3", "2.6.4", "2.6.5", "2.6.6", "2.6.7", "2.6.8", "2.6.9",
|
||||
"2.7.0", "2.7.1", "2.7.2", "2.7.3", "2.7.4", "2.7.5",
|
||||
"3.0.0-preview1", "3.0.0-preview2", "3.0.0-rc1", "3.0.0", "3.0.1", "3.0.2", "3.0.3",
|
||||
"3.1.0-preview1", "3.1.0", "3.1.1",
|
||||
"2.6.0", "2.6.1", "2.6.2", "2.6.3", "2.6.4", "2.6.5", "2.6.6", "2.6.7", "2.6.8", "2.6.9", "2.6.10",
|
||||
"2.7.0", "2.7.1", "2.7.2", "2.7.3", "2.7.4", "2.7.5", "2.7.6",
|
||||
"3.0.0-preview1", "3.0.0-preview2", "3.0.0-rc1", "3.0.0", "3.0.1", "3.0.2", "3.0.3", "3.0.4",
|
||||
"3.1.0-preview1", "3.1.0", "3.1.1", "3.1.2",
|
||||
"3.2.0-preview1",
|
||||
"head", "debug"
|
||||
],
|
||||
"jruby": [
|
||||
"9.1.17.0",
|
||||
"9.2.9.0", "9.2.10.0", "9.2.11.0", "9.2.11.1", "9.2.12.0", "9.2.13.0", "9.2.14.0", "9.2.15.0", "9.2.16.0", "9.2.17.0", "9.2.18.0", "9.2.19.0", "9.2.20.0", "9.2.20.1",
|
||||
"9.3.0.0", "9.3.1.0", "9.3.2.0", "9.3.3.0",
|
||||
"9.3.0.0", "9.3.1.0", "9.3.2.0", "9.3.3.0", "9.3.4.0",
|
||||
"head"
|
||||
],
|
||||
"truffleruby": [
|
||||
"19.3.0", "19.3.1",
|
||||
"20.0.0", "20.1.0", "20.2.0", "20.3.0",
|
||||
"21.0.0", "21.1.0", "21.2.0", "21.2.0.1", "21.3.0",
|
||||
"22.0.0.2",
|
||||
"22.0.0.2", "22.1.0",
|
||||
"head"
|
||||
],
|
||||
"truffleruby+graalvm": [
|
||||
"21.2.0", "21.3.0",
|
||||
"22.0.0.2",
|
||||
"22.0.0.2", "22.1.0",
|
||||
"head"
|
||||
]
|
||||
}
|
||||
|
||||
@@ -13,6 +13,17 @@ const releasesURL = 'https://github.com/ruby/ruby-builder/releases'
|
||||
const windows = common.windows
|
||||
|
||||
export function getAvailableVersions(platform, engine) {
|
||||
if (!common.supportedPlatforms.includes(platform)) {
|
||||
throw new Error(`Unsupported platform ${platform}`)
|
||||
}
|
||||
|
||||
if (platform === 'ubuntu-22.04') {
|
||||
const rubyVersions = rubyBuilderVersions['ruby']
|
||||
return {
|
||||
ruby: rubyVersions.slice(rubyVersions.indexOf('3.1.0')),
|
||||
}[engine]
|
||||
}
|
||||
|
||||
return rubyBuilderVersions[engine]
|
||||
}
|
||||
|
||||
|
||||
@@ -32,18 +32,22 @@
|
||||
"2.6.7": "https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-2.6.7-1/rubyinstaller-2.6.7-1-x64.7z",
|
||||
"2.6.8": "https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-2.6.8-1/rubyinstaller-2.6.8-1-x64.7z",
|
||||
"2.6.9": "https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-2.6.9-1/rubyinstaller-2.6.9-1-x64.7z",
|
||||
"2.6.10": "https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-2.6.10-1/rubyinstaller-2.6.10-1-x64.7z",
|
||||
"2.7.0": "https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-2.7.0-1/rubyinstaller-2.7.0-1-x64.7z",
|
||||
"2.7.1": "https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-2.7.1-1/rubyinstaller-2.7.1-1-x64.7z",
|
||||
"2.7.2": "https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-2.7.2-1/rubyinstaller-2.7.2-1-x64.7z",
|
||||
"2.7.3": "https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-2.7.3-1/rubyinstaller-2.7.3-1-x64.7z",
|
||||
"2.7.4": "https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-2.7.4-1/rubyinstaller-2.7.4-1-x64.7z",
|
||||
"2.7.5": "https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-2.7.5-1/rubyinstaller-2.7.5-1-x64.7z",
|
||||
"2.7.6": "https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-2.7.6-1/rubyinstaller-2.7.6-1-x64.7z",
|
||||
"3.0.0": "https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-3.0.0-1/rubyinstaller-3.0.0-1-x64.7z",
|
||||
"3.0.1": "https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-3.0.1-1/rubyinstaller-3.0.1-1-x64.7z",
|
||||
"3.0.2": "https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-3.0.2-1/rubyinstaller-3.0.2-1-x64.7z",
|
||||
"3.0.3": "https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-3.0.3-1/rubyinstaller-3.0.3-1-x64.7z",
|
||||
"3.0.4": "https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-3.0.4-1/rubyinstaller-3.0.4-1-x64.7z",
|
||||
"3.1.0": "https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-3.1.0-1/rubyinstaller-3.1.0-1-x64.7z",
|
||||
"3.1.1": "https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-3.1.1-1/rubyinstaller-3.1.1-1-x64.7z",
|
||||
"3.1.2": "https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-3.1.2-1/rubyinstaller-3.1.2-1-x64.7z",
|
||||
"head": "https://github.com/oneclick/rubyinstaller2/releases/download/rubyinstaller-head/rubyinstaller-head-x64.7z",
|
||||
"mingw": "https://github.com/MSP-Greg/ruby-loco/releases/download/ruby-master/ruby-mingw.7z",
|
||||
"mswin": "https://github.com/MSP-Greg/ruby-loco/releases/download/ruby-master/ruby-mswin.7z",
|
||||
|
||||
+17
-19
@@ -14,17 +14,22 @@ const rubyInstallerVersions = require('./windows-versions.json')
|
||||
const drive = common.drive
|
||||
|
||||
const msys2BasePath = 'C:\\msys64'
|
||||
const msys2GCCReleaseURI = 'https://github.com/ruby/setup-msys2-gcc/releases/download'
|
||||
|
||||
// needed for 2.0-2.3, and mswin, cert file used by Git for Windows
|
||||
// needed for Ruby 2.0-2.3, and mswin, cert file used by Git for Windows
|
||||
const certFile = 'C:\\Program Files\\Git\\mingw64\\ssl\\cert.pem'
|
||||
|
||||
// location & path for old RubyInstaller DevKit (MSYS1), Ruby 2.0-2.3
|
||||
// location & path for old RubyInstaller DevKit (MSYS1), used with Ruby 2.0-2.3
|
||||
const msys1 = `${drive}:\\DevKit64`
|
||||
const msysPathEntries = [`${msys1}\\mingw\\x86_64-w64-mingw32\\bin`, `${msys1}\\mingw\\bin`, `${msys1}\\bin`]
|
||||
|
||||
const virtualEnv = common.getVirtualEnvironmentName()
|
||||
|
||||
export function getAvailableVersions(platform, engine) {
|
||||
if (!common.supportedPlatforms.includes(platform)) {
|
||||
throw new Error(`Unsupported platform ${platform}`)
|
||||
}
|
||||
|
||||
if (engine === 'ruby') {
|
||||
return Object.keys(rubyInstallerVersions)
|
||||
} else {
|
||||
@@ -88,7 +93,7 @@ export async function install(platform, engine, version) {
|
||||
// and also install ucrt tools on earlier versions, which have msys2 and mingw tools preinstalled.
|
||||
async function installGCCTools(type) {
|
||||
const downloadPath = await common.measure(`Downloading ${type} build tools`, async () => {
|
||||
let url = `https://github.com/MSP-Greg/setup-msys2-gcc/releases/download/msys2-gcc-pkgs/${type}.7z`
|
||||
let url = `${msys2GCCReleaseURI}/msys2-gcc-pkgs/${type}.7z`
|
||||
console.log(url)
|
||||
return await tc.downloadTool(url)
|
||||
})
|
||||
@@ -102,14 +107,14 @@ async function installGCCTools(type) {
|
||||
// A subset of the MSYS2 base-devel group
|
||||
async function installMSYS2Tools() {
|
||||
const downloadPath = await common.measure(`Downloading msys2 build tools`, async () => {
|
||||
let url = `https://github.com/MSP-Greg/setup-msys2-gcc/releases/download/msys2-gcc-pkgs/msys2.7z`
|
||||
let url = `${msys2GCCReleaseURI}/msys2-gcc-pkgs/msys2.7z`
|
||||
console.log(url)
|
||||
return await tc.downloadTool(url)
|
||||
})
|
||||
|
||||
// need to remove all directories, since they may indicate old packages are installed,
|
||||
// otherwise, error of "error: duplicated database entry"
|
||||
fs.rmdirSync(`${msys2BasePath}\\var\\lib\\pacman\\local`, { recursive: true, force: true })
|
||||
fs.rmSync(`${msys2BasePath}\\var\\lib\\pacman\\local`, { recursive: true, force: true })
|
||||
|
||||
await common.measure(`Extracting msys2 build tools`, async () =>
|
||||
// -aoa overwrite existing, -bd disable progress indicator
|
||||
@@ -199,24 +204,17 @@ async function setupMSWin() {
|
||||
* adds a convenience VCVARS environment variable
|
||||
* this assumes a single Visual Studio version being available in the Windows images */
|
||||
export function addVCVARSEnv() {
|
||||
let vcVars = ''
|
||||
switch (virtualEnv) {
|
||||
case 'windows-2016':
|
||||
vcVars = '"C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\Enterprise\\VC\\Auxiliary\\Build\\vcvars64.bat"'
|
||||
break
|
||||
case 'windows-2019':
|
||||
vcVars = '"C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars64.bat"'
|
||||
break
|
||||
case 'windows-2022':
|
||||
vcVars = '"C:\\Program Files\\Microsoft Visual Studio\\2022\\Enterprise\\VC\\Auxiliary\\Build\\vcvars64.bat"'
|
||||
break
|
||||
default:
|
||||
throw new Error(`Unknown Windows Image: ${virtualEnv}`)
|
||||
let cmd = 'vswhere -latest -property installationPath'
|
||||
let vcVars = `${cp.execSync(cmd).toString().trim()}\\VC\\Auxiliary\\Build\\vcvars64.bat`
|
||||
|
||||
if (!fs.existsSync(vcVars)) {
|
||||
throw new Error(`Missing vcVars file: ${vcVars}`)
|
||||
}
|
||||
core.exportVariable('VCVARS', vcVars)
|
||||
|
||||
cmd = `cmd.exe /c ""${vcVars}" && set"`
|
||||
|
||||
let newEnv = new Map()
|
||||
let cmd = `cmd.exe /c "${vcVars} && set"`
|
||||
let newSet = cp.execSync(cmd).toString().trim().split(/\r?\n/)
|
||||
newSet = newSet.filter(line => /\S=\S/.test(line))
|
||||
newSet.forEach(s => {
|
||||
|
||||
@@ -2,10 +2,10 @@
|
||||
# yarn lockfile v1
|
||||
|
||||
|
||||
"@actions/cache@^1.0.8":
|
||||
version "1.0.9"
|
||||
resolved "https://registry.yarnpkg.com/@actions/cache/-/cache-1.0.9.tgz#fd63b9300639d0b43803ab3c4d1158b86a8ca49e"
|
||||
integrity sha512-VzqeDyW3kIDdARNQphd1FrzZCiJRuv98aXwM3R+BLe2UvdZXdRqjC/rrytSm4Nv4OJuI8NA1pbhkXIf+a4LFtw==
|
||||
"@actions/cache@^2.0.2":
|
||||
version "2.0.2"
|
||||
resolved "https://registry.yarnpkg.com/@actions/cache/-/cache-2.0.2.tgz#e38167f5de20be8f61452ff1f0bb44b02558905e"
|
||||
integrity sha512-K1DCaW/OtHj5mV7hI7HEXiceX3rM4Nc0iG2hfYsrkEy6GiOeqlCC/LyICrBZIRDM6+vSrS12tg1ORl4hghomBA==
|
||||
dependencies:
|
||||
"@actions/core" "^1.2.6"
|
||||
"@actions/exec" "^1.0.1"
|
||||
@@ -17,22 +17,17 @@
|
||||
semver "^6.1.0"
|
||||
uuid "^3.3.3"
|
||||
|
||||
"@actions/core@^1.2.6":
|
||||
version "1.6.0"
|
||||
resolved "https://registry.yarnpkg.com/@actions/core/-/core-1.6.0.tgz#0568e47039bfb6a9170393a73f3b7eb3b22462cb"
|
||||
integrity sha512-NB1UAZomZlCV/LmJqkLhNTqtKfFXJZAUPcfl/zqG7EfsQdeUJtaWO98SGbuQ3pydJ3fHl2CvI/51OKYlCYYcaw==
|
||||
"@actions/core@^1.2.6", "@actions/core@^1.7.0":
|
||||
version "1.7.0"
|
||||
resolved "https://registry.yarnpkg.com/@actions/core/-/core-1.7.0.tgz#f179a5a0bf5c1102d89b8cf1712825e763feaee4"
|
||||
integrity sha512-7fPSS7yKOhTpgLMbw7lBLc1QJWvJBBAgyTX2PEhagWcKK8t0H8AKCoPMfnrHqIm5cRYH4QFPqD1/ruhuUE7YcQ==
|
||||
dependencies:
|
||||
"@actions/http-client" "^1.0.11"
|
||||
|
||||
"@actions/core@^1.4.0":
|
||||
version "1.4.0"
|
||||
resolved "https://registry.yarnpkg.com/@actions/core/-/core-1.4.0.tgz#cf2e6ee317e314b03886adfeb20e448d50d6e524"
|
||||
integrity sha512-CGx2ilGq5i7zSLgiiGUtBCxhRRxibJYU6Fim0Q1Wg2aQL2LTnF27zbqZOrxfvFQ55eSBW0L8uVStgtKMpa0Qlg==
|
||||
|
||||
"@actions/exec@^1.0.0", "@actions/exec@^1.0.1", "@actions/exec@^1.1.0":
|
||||
version "1.1.0"
|
||||
resolved "https://registry.yarnpkg.com/@actions/exec/-/exec-1.1.0.tgz#53441d968e56d2fec69ad3f15773d4d94e01162c"
|
||||
integrity sha512-LImpN9AY0J1R1mEYJjVJfSZWU4zYOlEcwSTgPve1rFQqK5AwrEs6uWW5Rv70gbDIQIAUwI86z6B+9mPK4w9Sbg==
|
||||
"@actions/exec@^1.0.0", "@actions/exec@^1.0.1", "@actions/exec@^1.1.1":
|
||||
version "1.1.1"
|
||||
resolved "https://registry.yarnpkg.com/@actions/exec/-/exec-1.1.1.tgz#2e43f28c54022537172819a7cf886c844221a611"
|
||||
integrity sha512-+sCcHHbVdk93a0XT19ECtO/gIXoxvdsgQLzb2fE2/5sIZmWQuluYyjPQtrtTHdU1YzTZ7bAPN4sITq2xi1679w==
|
||||
dependencies:
|
||||
"@actions/io" "^1.0.1"
|
||||
|
||||
@@ -51,15 +46,15 @@
|
||||
dependencies:
|
||||
tunnel "0.0.6"
|
||||
|
||||
"@actions/io@^1.0.1", "@actions/io@^1.1.1":
|
||||
version "1.1.1"
|
||||
resolved "https://registry.yarnpkg.com/@actions/io/-/io-1.1.1.tgz#4a157406309e212ab27ed3ae30e8c1d641686a66"
|
||||
integrity sha512-Qi4JoKXjmE0O67wAOH6y0n26QXhMKMFo7GD/4IXNVcrtLjUlGjGuVys6pQgwF3ArfGTQu0XpqaNr0YhED2RaRA==
|
||||
"@actions/io@^1.0.1", "@actions/io@^1.1.1", "@actions/io@^1.1.2":
|
||||
version "1.1.2"
|
||||
resolved "https://registry.yarnpkg.com/@actions/io/-/io-1.1.2.tgz#766ac09674a289ce0f1550ffe0a6eac9261a8ea9"
|
||||
integrity sha512-d+RwPlMp+2qmBfeLYPLXuSRykDIFEwdTA0MMxzS9kh4kvP1ftrc/9fzy6pX6qAjthdXruHQ6/6kjT/DNo5ALuw==
|
||||
|
||||
"@actions/tool-cache@^1.7.1":
|
||||
version "1.7.1"
|
||||
resolved "https://registry.yarnpkg.com/@actions/tool-cache/-/tool-cache-1.7.1.tgz#f9f4f822cb639da6facdf3e22ea571361ab26f92"
|
||||
integrity sha512-y1xxxOhXaBUIUit3lhepmu/0xdgiTMpnZRLmVdtF0hTm521doi+MdRRRP62czHvM7wxH6epj4JPNJQ3iJpOrkQ==
|
||||
"@actions/tool-cache@^1.7.2":
|
||||
version "1.7.2"
|
||||
resolved "https://registry.yarnpkg.com/@actions/tool-cache/-/tool-cache-1.7.2.tgz#389ad15916f91999959c6b2865144839ecc571a9"
|
||||
integrity sha512-GYlcgg/PK2RWBrGG2sFg6s7im3S94LMKuqAv8UPDq/pGTZbuEvmN4a95Fn1Z19OE+vt7UbUHeewOD5tEBT+4TQ==
|
||||
dependencies:
|
||||
"@actions/core" "^1.2.6"
|
||||
"@actions/exec" "^1.0.0"
|
||||
@@ -110,9 +105,9 @@
|
||||
xml2js "^0.4.19"
|
||||
|
||||
"@azure/core-lro@^2.2.0":
|
||||
version "2.2.3"
|
||||
resolved "https://registry.yarnpkg.com/@azure/core-lro/-/core-lro-2.2.3.tgz#3e245d37ede00f6410c1ea1fb76679dbdec627eb"
|
||||
integrity sha512-UMdlR9NsqDCLTba3EUbRjfMF4gDmWvld196JmUjbz9WWhJ2XT00OR5MXeWiR+vmGT+ETiO4hHFCi2/eGO5YVtg==
|
||||
version "2.2.4"
|
||||
resolved "https://registry.yarnpkg.com/@azure/core-lro/-/core-lro-2.2.4.tgz#42fbf4ae98093c59005206a4437ddcd057c57ca1"
|
||||
integrity sha512-e1I2v2CZM0mQo8+RSix0x091Av493e4bnT22ds2fcQGslTHzM2oTbswkB65nP4iEpCxBrFxOSDPKExmTmjCVtQ==
|
||||
dependencies:
|
||||
"@azure/abort-controller" "^1.0.0"
|
||||
"@azure/core-tracing" "1.0.0-preview.13"
|
||||
@@ -143,14 +138,14 @@
|
||||
tslib "^2.2.0"
|
||||
|
||||
"@azure/ms-rest-js@^2.6.0":
|
||||
version "2.6.0"
|
||||
resolved "https://registry.yarnpkg.com/@azure/ms-rest-js/-/ms-rest-js-2.6.0.tgz#ec06e6a0b704567ea9b2c8044821cf47148c586b"
|
||||
integrity sha512-4C5FCtvEzWudblB+h92/TYYPiq7tuElX8icVYToxOdggnYqeec4Se14mjse5miInKtZahiFHdl8lZA/jziEc5g==
|
||||
version "2.6.1"
|
||||
resolved "https://registry.yarnpkg.com/@azure/ms-rest-js/-/ms-rest-js-2.6.1.tgz#4f94688a750d51afcbab4b55d6ecb9d3df4ddd94"
|
||||
integrity sha512-LLi4jRe/qy5IM8U2CkoDgSZp2OH+MgDe2wePmhz8uY84Svc53EhHaamVyoU6BjjHBxvCRh1vcD1urJDccrxqIw==
|
||||
dependencies:
|
||||
"@azure/core-auth" "^1.1.4"
|
||||
abort-controller "^3.0.0"
|
||||
form-data "^2.5.0"
|
||||
node-fetch "^2.6.0"
|
||||
node-fetch "^2.6.7"
|
||||
tough-cookie "^3.0.1"
|
||||
tslib "^1.10.0"
|
||||
tunnel "0.0.6"
|
||||
@@ -158,9 +153,9 @@
|
||||
xml2js "^0.4.19"
|
||||
|
||||
"@azure/storage-blob@^12.8.0":
|
||||
version "12.8.0"
|
||||
resolved "https://registry.yarnpkg.com/@azure/storage-blob/-/storage-blob-12.8.0.tgz#97b7ecc6c7b17bcbaf0281c79c16af6f512d6130"
|
||||
integrity sha512-c8+Wz19xauW0bGkTCoqZH4dYfbtBniPiGiRQOn1ca6G5jsjr4azwaTk9gwjVY8r3vY2Taf95eivLzipfIfiS4A==
|
||||
version "12.9.0"
|
||||
resolved "https://registry.yarnpkg.com/@azure/storage-blob/-/storage-blob-12.9.0.tgz#4cbd8b4c7a47dd064867430db892f4ef2d8f17ab"
|
||||
integrity sha512-ank38FdCLfJ+EoeMzCz3hkYJuZAd63ARvDKkxZYRDb+beBYf+/+gx8jNTqkq/hfyUl4dJQ/a7tECU0Y0F98CHg==
|
||||
dependencies:
|
||||
"@azure/abort-controller" "^1.0.0"
|
||||
"@azure/core-http" "^2.0.0"
|
||||
@@ -172,22 +167,22 @@
|
||||
tslib "^2.2.0"
|
||||
|
||||
"@opentelemetry/api@^1.0.1":
|
||||
version "1.0.4"
|
||||
resolved "https://registry.yarnpkg.com/@opentelemetry/api/-/api-1.0.4.tgz#a167e46c10d05a07ab299fc518793b0cff8f6924"
|
||||
integrity sha512-BuJuXRSJNQ3QoKA6GWWDyuLpOUck+9hAXNMCnrloc1aWVoy6Xq6t9PUV08aBZ4Lutqq2LEHM486bpZqoViScog==
|
||||
version "1.1.0"
|
||||
resolved "https://registry.yarnpkg.com/@opentelemetry/api/-/api-1.1.0.tgz#563539048255bbe1a5f4f586a4a10a1bb737f44a"
|
||||
integrity sha512-hf+3bwuBwtXsugA2ULBc95qxrOqP2pOekLz34BJhcAKawt94vfeNyUKpYc0lZQ/3sCP6LqRa7UAdHA7i5UODzQ==
|
||||
|
||||
"@types/node-fetch@^2.5.0":
|
||||
version "2.6.0"
|
||||
resolved "https://registry.yarnpkg.com/@types/node-fetch/-/node-fetch-2.6.0.tgz#bf854a36a0d0d99436fd199e06612ef4e73591b6"
|
||||
integrity sha512-HT+uU6V27wJFXgEqTk/+rVE1MWcp5bg7Yuz//43TZ2PjpQbQ8vDLwVmB+fSpgs83j/+p+rMIlDRo9TL3IexWMA==
|
||||
version "2.6.1"
|
||||
resolved "https://registry.yarnpkg.com/@types/node-fetch/-/node-fetch-2.6.1.tgz#8f127c50481db65886800ef496f20bbf15518975"
|
||||
integrity sha512-oMqjURCaxoSIsHSr1E47QHzbmzNR5rK8McHuNb11BOM9cHcIK3Avy0s/b2JlXHoQGTYS3NsvWzV1M0iK7l0wbA==
|
||||
dependencies:
|
||||
"@types/node" "*"
|
||||
form-data "^2.3.3"
|
||||
form-data "^3.0.0"
|
||||
|
||||
"@types/node@*":
|
||||
version "17.0.18"
|
||||
resolved "https://registry.yarnpkg.com/@types/node/-/node-17.0.18.tgz#3b4fed5cfb58010e3a2be4b6e74615e4847f1074"
|
||||
integrity sha512-eKj4f/BsN/qcculZiRSujogjvp5O/k4lOW5m35NopjZM/QwLOR075a8pJW5hD+Rtdm2DaCVPENS6KtSQnUD6BA==
|
||||
version "17.0.31"
|
||||
resolved "https://registry.yarnpkg.com/@types/node/-/node-17.0.31.tgz#a5bb84ecfa27eec5e1c802c6bbf8139bdb163a5d"
|
||||
integrity sha512-AR0x5HbXGqkEx9CadRH3EBYx/VkiUgZIhP4wvPn/+5KIsgpNoyFaRlVe0Zlx9gRtg8fA06a9tskE2MSN7TcG4Q==
|
||||
|
||||
"@types/tunnel@^0.0.3":
|
||||
version "0.0.3"
|
||||
@@ -196,10 +191,10 @@
|
||||
dependencies:
|
||||
"@types/node" "*"
|
||||
|
||||
"@vercel/ncc@^0.31.1":
|
||||
version "0.31.1"
|
||||
resolved "https://registry.yarnpkg.com/@vercel/ncc/-/ncc-0.31.1.tgz#9346c7e59326f5eeac75c0286e47df94c2d6d8f7"
|
||||
integrity sha512-g0FAxwdViI6UzsiVz5HssIHqjcPa1EHL6h+2dcJD893SoCJaGdqqgUF09xnMW6goWnnhbLvgiKlgJWrJa+7qYA==
|
||||
"@vercel/ncc@^0.33.4":
|
||||
version "0.33.4"
|
||||
resolved "https://registry.yarnpkg.com/@vercel/ncc/-/ncc-0.33.4.tgz#e44a87511f583b7ba88e4b9ae90eeb7ba252b872"
|
||||
integrity sha512-ln18hs7dMffelP47tpkaR+V5Tj6coykNyxJrlcmCormPqRQjB/Gv4cu2FfBG+PMzIfdZp2CLDsrrB1NPU22Qhg==
|
||||
|
||||
abort-controller@^3.0.0:
|
||||
version "3.0.0"
|
||||
@@ -253,7 +248,7 @@ events@^3.0.0:
|
||||
resolved "https://registry.yarnpkg.com/events/-/events-3.3.0.tgz#31a95ad0a924e2d2c419a813aeb2c4e878ea7400"
|
||||
integrity sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==
|
||||
|
||||
form-data@^2.3.3, form-data@^2.5.0:
|
||||
form-data@^2.5.0:
|
||||
version "2.5.1"
|
||||
resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.5.1.tgz#f2cbec57b5e59e23716e128fe44d4e5dd23895f4"
|
||||
integrity sha512-m21N3WOmEEURgk6B9GLOE4RuWOFf28Lhh9qGYeNlGq4VDXUlJy2th2slBNU8Gp8EzloYZOibZJ7t5ecIrFSjVA==
|
||||
@@ -262,6 +257,15 @@ form-data@^2.3.3, form-data@^2.5.0:
|
||||
combined-stream "^1.0.6"
|
||||
mime-types "^2.1.12"
|
||||
|
||||
form-data@^3.0.0:
|
||||
version "3.0.1"
|
||||
resolved "https://registry.yarnpkg.com/form-data/-/form-data-3.0.1.tgz#ebd53791b78356a99af9a300d4282c4d5eb9755f"
|
||||
integrity sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==
|
||||
dependencies:
|
||||
asynckit "^0.4.0"
|
||||
combined-stream "^1.0.8"
|
||||
mime-types "^2.1.12"
|
||||
|
||||
form-data@^4.0.0:
|
||||
version "4.0.0"
|
||||
resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.0.tgz#93919daeaf361ee529584b9b31664dc12c9fa452"
|
||||
@@ -276,26 +280,33 @@ ip-regex@^2.1.0:
|
||||
resolved "https://registry.yarnpkg.com/ip-regex/-/ip-regex-2.1.0.tgz#fa78bf5d2e6913c911ce9f819ee5146bb6d844e9"
|
||||
integrity sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk=
|
||||
|
||||
mime-db@1.51.0:
|
||||
version "1.51.0"
|
||||
resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.51.0.tgz#d9ff62451859b18342d960850dc3cfb77e63fb0c"
|
||||
integrity sha512-5y8A56jg7XVQx2mbv1lu49NR4dokRnhZYTtL+KGfaa27uq4pSTXkwQkFJl4pkRMyNFz/EtYDSkiiEHx3F7UN6g==
|
||||
lru-cache@^6.0.0:
|
||||
version "6.0.0"
|
||||
resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94"
|
||||
integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==
|
||||
dependencies:
|
||||
yallist "^4.0.0"
|
||||
|
||||
mime-db@1.52.0:
|
||||
version "1.52.0"
|
||||
resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70"
|
||||
integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==
|
||||
|
||||
mime-types@^2.1.12:
|
||||
version "2.1.34"
|
||||
resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.34.tgz#5a712f9ec1503511a945803640fafe09d3793c24"
|
||||
integrity sha512-6cP692WwGIs9XXdOO4++N+7qjqv0rqxxVvJ3VHPh/Sc9mVZcQP+ZGhkKiTvWMQRr2tbHkJP/Yn7Y0npb3ZBs4A==
|
||||
version "2.1.35"
|
||||
resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a"
|
||||
integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==
|
||||
dependencies:
|
||||
mime-db "1.51.0"
|
||||
mime-db "1.52.0"
|
||||
|
||||
minimatch@^3.0.4:
|
||||
version "3.1.1"
|
||||
resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.1.tgz#879ad447200773912898b46cd516a7abbb5e50b0"
|
||||
integrity sha512-reLxBcKUPNBnc/sVtAbxgRVFSegoGeLaSjmphNhcwcolhYLRgtJscn5mRl6YRZNQv40Y7P6JM2YhSIsbL9OB5A==
|
||||
version "3.1.2"
|
||||
resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b"
|
||||
integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==
|
||||
dependencies:
|
||||
brace-expansion "^1.1.7"
|
||||
|
||||
node-fetch@^2.6.0, node-fetch@^2.6.7:
|
||||
node-fetch@^2.6.7:
|
||||
version "2.6.7"
|
||||
resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.7.tgz#24de9fba827e3b4ae44dc8b20256a379160052ad"
|
||||
integrity sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==
|
||||
@@ -327,6 +338,13 @@ semver@^6.1.0:
|
||||
resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d"
|
||||
integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==
|
||||
|
||||
semver@^7.3.7:
|
||||
version "7.3.7"
|
||||
resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.7.tgz#12c5b649afdbf9049707796e22a4028814ce523f"
|
||||
integrity sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==
|
||||
dependencies:
|
||||
lru-cache "^6.0.0"
|
||||
|
||||
tough-cookie@^3.0.1:
|
||||
version "3.0.1"
|
||||
resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-3.0.1.tgz#9df4f57e739c26930a018184887f4adb7dca73b2"
|
||||
@@ -356,9 +374,9 @@ tslib@^1.10.0:
|
||||
integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==
|
||||
|
||||
tslib@^2.0.0, tslib@^2.2.0:
|
||||
version "2.3.1"
|
||||
resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.3.1.tgz#e8a335add5ceae51aa261d32a490158ef042ef01"
|
||||
integrity sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==
|
||||
version "2.4.0"
|
||||
resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.4.0.tgz#7cecaa7f073ce680a05847aa77be941098f36dc3"
|
||||
integrity sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==
|
||||
|
||||
tunnel@0.0.6, tunnel@^0.0.6:
|
||||
version "0.0.6"
|
||||
@@ -405,3 +423,8 @@ xmlbuilder@~11.0.0:
|
||||
version "11.0.1"
|
||||
resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-11.0.1.tgz#be9bae1c8a046e76b31127726347d0ad7002beb3"
|
||||
integrity sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==
|
||||
|
||||
yallist@^4.0.0:
|
||||
version "4.0.0"
|
||||
resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72"
|
||||
integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==
|
||||
|
||||
Reference in New Issue
Block a user