-
Notifications
You must be signed in to change notification settings - Fork 155
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
fix: resolve plugins from npm packages correctly (#1749)
- Loading branch information
1 parent
67ea331
commit 81ca339
Showing
11 changed files
with
227 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
--- | ||
"@redocly/openapi-core": patch | ||
"@redocly/cli": patch | ||
--- | ||
|
||
Fixed an issue where the plugins in external NPM packages could not be resolved if the CLI package was installed globally. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,92 @@ | ||
name: Plugins smoke tests | ||
|
||
on: | ||
pull_request: | ||
types: [opened, synchronize, reopened] | ||
|
||
env: | ||
CI: true | ||
REDOCLY_TELEMETRY: off | ||
|
||
jobs: | ||
prepare-smoke-plugins: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@v3 | ||
- uses: actions/setup-node@v3 | ||
with: | ||
node-version: 18 | ||
cache: 'npm' | ||
- name: Install dependencies | ||
run: npm ci | ||
- name: Prepare Smoke | ||
run: bash ./scripts/prepare-smoke-plugins.sh | ||
- uses: actions/cache@v3 | ||
with: | ||
path: __tests__/smoke-plugins/ | ||
key: cache-plugins-${{ github.run_id }}-${{ github.run_attempt }} | ||
|
||
run-smoke-plugins--npm--node-22: | ||
needs: prepare-smoke-plugins | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/cache@v3 | ||
with: | ||
path: __tests__/smoke-plugins/ | ||
key: cache-plugins-${{ github.run_id }}-${{ github.run_attempt }} | ||
- uses: actions/setup-node@v3 | ||
with: | ||
node-version: 22 | ||
- run: bash ./__tests__/smoke-plugins/run-smoke.sh | ||
|
||
run-smoke-plugins--npm--node-20: | ||
needs: prepare-smoke-plugins | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/cache@v3 | ||
with: | ||
path: __tests__/smoke-plugins/ | ||
key: cache-plugins-${{ github.run_id }}-${{ github.run_attempt }} | ||
- uses: actions/setup-node@v3 | ||
with: | ||
node-version: 20 | ||
- run: bash ./__tests__/smoke-plugins/run-smoke.sh | ||
|
||
run-smoke-plugins--npm--node-18: | ||
needs: prepare-smoke-plugins | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/cache@v3 | ||
with: | ||
path: __tests__/smoke-plugins/ | ||
key: cache-plugins-${{ github.run_id }}-${{ github.run_attempt }} | ||
- uses: actions/setup-node@v3 | ||
with: | ||
node-version: 18 | ||
- run: bash ./__tests__/smoke-plugins/run-smoke.sh | ||
|
||
run-smoke-plugins--npm--node-16: | ||
needs: prepare-smoke-plugins | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/cache@v3 | ||
with: | ||
path: __tests__/smoke-plugins/ | ||
key: cache-plugins-${{ github.run_id }}-${{ github.run_attempt }} | ||
- uses: actions/setup-node@v3 | ||
with: | ||
node-version: 16 | ||
- run: bash ./__tests__/smoke-plugins/run-smoke.sh | ||
|
||
run-smoke-plugins--npm--node-14: | ||
needs: prepare-smoke-plugins | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/cache@v3 | ||
with: | ||
path: __tests__/smoke-plugins/ | ||
key: cache-plugins-${{ github.run_id }}-${{ github.run_attempt }} | ||
- uses: actions/setup-node@v3 | ||
with: | ||
node-version: 14 | ||
- run: bash ./__tests__/smoke-plugins/run-smoke.sh |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
module.exports = function localPlugin() { | ||
return { id: 'local-plugin' }; | ||
}; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
type: object | ||
properties: | ||
message: | ||
type: string |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
openapi: 3.1.0 | ||
servers: | ||
- url: http://redocly-example.com | ||
info: | ||
title: Sample API | ||
version: 1.0.0 | ||
paths: | ||
/hello: | ||
get: | ||
operationId: getMessage | ||
security: [] | ||
summary: Get a greeting message | ||
responses: | ||
200: | ||
description: OK | ||
content: | ||
application/json: | ||
schema: | ||
$ref: ./message-schema.yaml |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
{ | ||
"name": "test-project-smoke-plugins", | ||
"scripts": { | ||
"redocly-version": "redocly --version", | ||
"redocly-lint": "redocly lint openapi.yaml" | ||
}, | ||
"dependencies": { | ||
"@redocly/portal-plugin-async-api": "1.0.273" | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
extends: | ||
- recommended | ||
plugins: | ||
- '@redocly/portal-plugin-async-api' | ||
- local-plugin.js |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
#!/bin/bash | ||
|
||
set -eo pipefail # Fail on script errors | ||
|
||
cd __tests__/smoke-plugins | ||
echo | ||
echo "Directory content:" | ||
ls -a | ||
echo | ||
|
||
# Install plugin package | ||
npm i | ||
|
||
# Install CLI globally | ||
npm i redocly-cli.tgz -g | ||
|
||
# Actual smoke test - executing the command provided as the second argument | ||
npm run redocly-version | ||
npm run redocly-lint |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
#!/bin/bash | ||
|
||
# For npm (Mutates packages/cli/package.json) | ||
npm run pack:prepare | ||
|
||
cp ./redocly-cli.tgz ./openapi-core.tgz ./__tests__/smoke-plugins | ||
|
||
echo "Current directory:" | ||
pwd | ||
echo | ||
echo "Current directory content:" | ||
ls -a | ||
echo | ||
echo "Target directory content:" | ||
ls -a __tests__/smoke-plugins/ | ||
echo |
81ca339
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Coverage report
Test suite run success
809 tests passing in 121 suites.
Report generated by 🧪jest coverage report action from 81ca339