Compare commits

...
5 Commits
4 changed files with 50 additions and 30 deletions
+12
View File
@@ -240,6 +240,18 @@ jobs:
ruby-version: '2.6'
- run: ruby -v
testNoGemfileWithBundlerCache:
name: "Test with no Gemfile but with bundler-cache"
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- run: rm Gemfile
- uses: ./
with:
ruby-version: '2.6'
bundler-cache: true
- run: ruby -v
testLatestRubygemsVersion:
name: "Test rubygems: latest on ${{ matrix.ruby }}"
runs-on: ubuntu-latest
+14 -15
View File
@@ -360,24 +360,23 @@ export function setupPath(newPathEntries) {
const originalPath = process.env[envPath].split(path.delimiter)
let cleanPath = originalPath.filter(entry => !/\bruby\b/i.test(entry))
core.startGroup(`Modifying ${envPath}`)
// First remove the conflicting path entries
if (cleanPath.length !== originalPath.length) {
console.log(`Entries removed from ${envPath} to avoid conflicts with default Ruby:`)
for (const entry of originalPath) {
if (!cleanPath.includes(entry)) {
console.log(` ${entry}`)
core.group(`Modifying ${envPath}`, async () => {
// First remove the conflicting path entries
if (cleanPath.length !== originalPath.length) {
console.log(`Entries removed from ${envPath} to avoid conflicts with default Ruby:`)
for (const entry of originalPath) {
if (!cleanPath.includes(entry)) {
console.log(` ${entry}`)
}
}
core.exportVariable(envPath, cleanPath.join(path.delimiter))
}
core.exportVariable(envPath, cleanPath.join(path.delimiter))
}
console.log(`Entries added to ${envPath} to use selected Ruby:`)
for (const entry of newPathEntries) {
console.log(` ${entry}`)
}
core.endGroup()
console.log(`Entries added to ${envPath} to use selected Ruby:`)
for (const entry of newPathEntries) {
console.log(` ${entry}`)
}
})
core.addPath(newPathEntries.join(path.delimiter))
}
Generated Vendored
+19 -15
View File
@@ -677,24 +677,23 @@ function setupPath(newPathEntries) {
const originalPath = process.env[envPath].split(path.delimiter)
let cleanPath = originalPath.filter(entry => !/\bruby\b/i.test(entry))
core.startGroup(`Modifying ${envPath}`)
// First remove the conflicting path entries
if (cleanPath.length !== originalPath.length) {
console.log(`Entries removed from ${envPath} to avoid conflicts with default Ruby:`)
for (const entry of originalPath) {
if (!cleanPath.includes(entry)) {
console.log(` ${entry}`)
core.group(`Modifying ${envPath}`, async () => {
// First remove the conflicting path entries
if (cleanPath.length !== originalPath.length) {
console.log(`Entries removed from ${envPath} to avoid conflicts with default Ruby:`)
for (const entry of originalPath) {
if (!cleanPath.includes(entry)) {
console.log(` ${entry}`)
}
}
core.exportVariable(envPath, cleanPath.join(path.delimiter))
}
core.exportVariable(envPath, cleanPath.join(path.delimiter))
}
console.log(`Entries added to ${envPath} to use selected Ruby:`)
for (const entry of newPathEntries) {
console.log(` ${entry}`)
}
core.endGroup()
console.log(`Entries added to ${envPath} to use selected Ruby:`)
for (const entry of newPathEntries) {
console.log(` ${entry}`)
}
})
core.addPath(newPathEntries.join(path.delimiter))
}
@@ -85351,6 +85350,11 @@ async function setupRuby(options = {}) {
if (inputs['bundler-cache'] === 'true') {
await common.time('bundle install', async () =>
bundler.bundleInstall(gemfile, lockFile, platform, engine, version, bundlerVersion, inputs['cache-version']))
if (lockFile !== null && fs.existsSync(lockFile)) {
await core.group(`Print lockfile`, async () =>
await exec.exec('cat', [lockFile]))
}
}
core.setOutput('ruby-prefix', rubyPrefix)
+5
View File
@@ -99,6 +99,11 @@ export async function setupRuby(options = {}) {
if (inputs['bundler-cache'] === 'true') {
await common.time('bundle install', async () =>
bundler.bundleInstall(gemfile, lockFile, platform, engine, version, bundlerVersion, inputs['cache-version']))
if (lockFile !== null && fs.existsSync(lockFile)) {
await core.group(`Print lockfile`, async () =>
await exec.exec('cat', [lockFile]))
}
}
core.setOutput('ruby-prefix', rubyPrefix)