mirror of
https://github.com/ruby/setup-ruby.git
synced 2026-09-13 14:34:21 +02:00
Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
40bbc5ec66 | ||
|
|
1bb7de255b | ||
|
|
973b1baf94 | ||
|
|
ef4b00fd12 |
@@ -15,7 +15,7 @@ This action currently supports these versions of MRI, JRuby and TruffleRuby:
|
||||
| Interpreter | Versions |
|
||||
| ----------- | -------- |
|
||||
| Ruby | 2.2, 2.3.0 - 2.3.8, 2.4.0 - 2.4.10, 2.5.0 - 2.5.8, 2.6.0 - 2.6.6, 2.7.1, head, debug, mingw, mswin |
|
||||
| JRuby | 9.1.17.0, 9.2.9.0 - 9.2.11.1, head |
|
||||
| JRuby | 9.1.17.0, 9.2.9.0 - 9.2.12.0, head |
|
||||
| TruffleRuby | 19.3.0 - 20.1.0, head |
|
||||
| Rubinius | 4.14 |
|
||||
|
||||
@@ -31,7 +31,7 @@ On Windows, Ruby 2.4 uses OpenSSL 1.0.2, which is no longer maintained.
|
||||
|
||||
### 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 for all [GitHub-hosted runners](https://help.github.com/en/actions/automating-your-workflow-with-github-actions/virtual-environments-for-github-hosted-runners), and [self-hosted runners](https://docs.github.com/en/actions/hosting-your-own-runners/about-self-hosted-runners), under [certain conditions](#limitations)
|
||||
|
||||
| Operating System | Recommended | Other Supported Versions |
|
||||
| ----------- | -------- | -------- |
|
||||
@@ -129,7 +129,7 @@ This caching speeds up installing gems significantly and avoids too many request
|
||||
It needs a `Gemfile` under the [`working-directory`](#working-directory).
|
||||
The caching works whether there is a `Gemfile.lock` or not.
|
||||
If there is a `Gemfile.lock`, `bundle config --local deployment true` is used.
|
||||
|
||||
|
||||
To perform caching, this action will use `bundle config --local path vendor/bundle`.
|
||||
Therefore, the Bundler `path` should not be changed in your workflow for the cache to work.
|
||||
|
||||
@@ -194,7 +194,11 @@ This follows the [recommendations](https://github.com/actions/toolkit/blob/maste
|
||||
|
||||
## Limitations
|
||||
|
||||
* This action currently only works with GitHub-hosted runners, not private runners.
|
||||
### Using self-hosted runners
|
||||
You must meet the following parameters to use this action with self-hosted runners:
|
||||
|
||||
* Make sure that the operating system has `libyaml-0` installed
|
||||
* The runner software is running as user `runner` with a home directory of `/home/runner`, or you have created a symlink for the home directory of whatever user that the runner is running as to `/home/runner`.
|
||||
|
||||
## History
|
||||
|
||||
|
||||
+12
-2
@@ -2427,7 +2427,17 @@ async function bundleInstall(platform, engine, version) {
|
||||
console.log(`Cache key: ${key}`)
|
||||
|
||||
// restore cache & install
|
||||
const cachedKey = await cache.restoreCache(paths, key, restoreKeys)
|
||||
let cachedKey = null
|
||||
try {
|
||||
cachedKey = await cache.restoreCache(paths, key, restoreKeys)
|
||||
} catch (error) {
|
||||
if (error.name === cache.ValidationError.name) {
|
||||
throw error;
|
||||
} else {
|
||||
core.info(`[warning] There was an error restoring the cache ${error.message}`)
|
||||
}
|
||||
}
|
||||
|
||||
if (cachedKey) {
|
||||
console.log(`Found cache for key: ${cachedKey}`)
|
||||
}
|
||||
@@ -2459,7 +2469,7 @@ async function bundleInstall(platform, engine, version) {
|
||||
|
||||
async function computeBaseKey(platform, engine, version) {
|
||||
let baseKey = `setup-ruby-bundle-install-${platform}-${engine}-${version}`
|
||||
if (engine === 'ruby' && common.isHeadVersion(version)) {
|
||||
if (engine !== 'jruby' && common.isHeadVersion(version)) {
|
||||
let revision = '';
|
||||
await exec.exec('ruby', ['-e', 'print RUBY_REVISION'], {
|
||||
silent: true,
|
||||
|
||||
@@ -241,7 +241,17 @@ async function bundleInstall(platform, engine, version) {
|
||||
console.log(`Cache key: ${key}`)
|
||||
|
||||
// restore cache & install
|
||||
const cachedKey = await cache.restoreCache(paths, key, restoreKeys)
|
||||
let cachedKey = null
|
||||
try {
|
||||
cachedKey = await cache.restoreCache(paths, key, restoreKeys)
|
||||
} catch (error) {
|
||||
if (error.name === cache.ValidationError.name) {
|
||||
throw error;
|
||||
} else {
|
||||
core.info(`[warning] There was an error restoring the cache ${error.message}`)
|
||||
}
|
||||
}
|
||||
|
||||
if (cachedKey) {
|
||||
console.log(`Found cache for key: ${cachedKey}`)
|
||||
}
|
||||
@@ -273,7 +283,7 @@ async function bundleInstall(platform, engine, version) {
|
||||
|
||||
async function computeBaseKey(platform, engine, version) {
|
||||
let baseKey = `setup-ruby-bundle-install-${platform}-${engine}-${version}`
|
||||
if (engine === 'ruby' && common.isHeadVersion(version)) {
|
||||
if (engine !== 'jruby' && common.isHeadVersion(version)) {
|
||||
let revision = '';
|
||||
await exec.exec('ruby', ['-e', 'print RUBY_REVISION'], {
|
||||
silent: true,
|
||||
|
||||
Reference in New Issue
Block a user