Comments (5)
Hi @HenryGessau, there is yet another option to solve your case. While you can still use the recommended
ruleset as your base, you can turn the severity of that specific rule to off
and write your own configurable rule like this:
extends:
- recommended
rules:
operation-2xx-response: off
rule/operation-1xx-or-2xx-response:
subject:
type: Responses
assertions:
requireAny:
- '101'
- '200'
- ...
And then add as many required response codes as you need (probably all 2xx
s and maybe even the default
one). See more about configurable rules here.
This will ensure that every operation will have to contain at least one of the enlisted response codes.
from redocly-cli.
Thanks for the question! The recommended ruleset is aimed at being a solid recommendation for people with a basic API and little knowledge about APIs, to get them started in their API governance journey. Once up and running, almost all organisations should adjust the ruleset to fit their context, and I think that's the best approach here.
I'll close the issue since there's no action planned on our side, but please stay in touch if you have more comments or questions for us.
from redocly-cli.
@lornajane Understood on the goals of the recommended ruleset, but to be clear: we consider the operation-2xx-response
rule generally quite valuable - e.g., we have hundreds of operations in our API and only a couple that make use of 101
. Is there a way for us to off the check for a specific method (similar to being able to specify JSON pointers with Spectral rule overrides? That would enable us to keep the rule on in general while keeping the recommended ruleset simple.
from redocly-cli.
Yes there is! You can set an ignore for just the specific things you want to avoid having reported. The docs you want are over here: https://redocly.com/docs/cli/commands/lint/#generate-ignore-file
from redocly-cli.
@lornajane Unfortunately, with the ignore file approach, I end up with a problem similar to that described by #1224, as we generate multiple variants of our API (and furthermore, in our CI they are generated in temporary directories).
The solution in #1224 seems to be to create a custom plugin with an extension, but it is not clear to me how to write an extension for operation-2xx-response
. Do you have any suggestions?
from redocly-cli.
Related Issues (20)
- Support internalFlagProperty as a list for remove-x-internal decorator HOT 2
- Update syntax for decorators to support markdown as well as file paths
- Incorrect command to preview local docs changes in contributing.md HOT 3
- Review guide for replacing servers list HOT 1
- redocly lint format html or markdown HOT 5
- better error handling when $ref references an external file in asyncapi HOT 7
- asyncapi lint support custom rules HOT 8
- Can't resolve remote $ref with query parameter HOT 3
- OAS 3.1 - arbitrary schema keywords are classified as lint errors HOT 3
- Missing const typing support HOT 2
- bug: inconsistent types for OAS3_1 schemas HOT 1
- Add some type of plugin to allow dynamic definition of extensions or config files HOT 2
- Support better means to set environment variables HOT 2
- dependentRequired is valid json schema but does not pass linting and prevents component from being available in UI. HOT 3
- Api HOT 2
- Add the `--ext` parameter to the `split` command HOT 1
- Running out of CPU inside of containers HOT 2
- join fails on commonly referenced components
- Redocly removing string for enums if there's non-numbers mixed in HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from redocly-cli.