List RAML issues with migration to new CI tool api-lint
Description
Environment
Potential Workaround
Checklist
hideTestRail: Results
Activity
David Crossley February 16, 2021 at 1:51 AMEdited
Last updated: 2022-10-04
This is a summary of RAML-based API descriptions that would have some new issues reported when migrating to the new api-lint (https://folio-org.atlassian.net/browse/FOLIO-3231#icft=FOLIO-3231). Most would be easily addressed.
The label "OLD" means either that the project has now migrated to api-lint, or the violation has gone as api-lint has been upgraded to a new version of the underlying amf-client dependency (e.g. perhaps due to us providing an upsteam bug report), or that the project is still using the old deprecated lint-raml but have since modified their api description.
For projects that are not on this list, there should be no issues encountered when upgrading (https://folio-org.atlassian.net/browse/FOLIO-3231#icft=FOLIO-3231).
Easily handled:
Migrated: edge-patron/ramls/edge-patron.raml
Migrated: folio-custom-fields/ramls/custom-fields.raml
Migrated: mod-circulation/ramls/loan-anonymization.raml
Migrated: mod-data-export/ramls/dataExport-logs.raml
Migrated: mod-data-import-converter-storage/ramls/data-import-converter-storage.raml
Migrated: mod-finc-config/ramls/fincConfigMetadataSources.raml
OLD: mod-inventory-storage/ramls/instance-storage-batch.raml
OLD: mod-inventory-storage/ramls/instance-sync.raml
OLD: mod-inventory-storage/ramls/inventory-view.raml
OLD: mod-inventory-storage/ramls/item-storage-dereferenced.raml
Migrated: mod-kb-ebsco-java/ramls/costperuse.raml
Migrated: mod-orders/ramls/check-in.raml
Migrated: mod-orders/ramls/order.raml
Migrated: mod-orders/ramls/pieces.raml
Migrated: mod-orders/ramls/receive.raml
Migrated: mod-orders/ramls/receiving-history.raml
OLD: mod-orders-storage/ramls/orders.raml
Migrated: mod-orders-storage/ramls/pieces.raml
Migrated: mod-orders-storage/ramls/purchase-order.raml
Migrated: mod-orders-storage/ramls/receiving-history.raml
Migrated: mod-patron/ramls/patron.raml
Migrated: mod-permissions/ramls/permissions.raml
Migrated: mod-source-record-manager/ramls/change-manager.raml
Known issue:
raml/ramls/jsonSchemas.raml
raml/ramls/ramls.raml
More complex or unidentified:
Migrated: mod-data-import/ramls/dataImport.raml (unresolved reference)
Migrated: mod-inventory/ramls/inventory.raml (Boxed Error with one example)
Migrated: mod-inventory-storage/ramls/holdings-storage.raml (required media-type for 200 response)
Migrated: mod-inventory-storage/ramls/instance-storage.raml (required media-type for 200 response)
OLD: mod-source-record-manager/ramls/change-manager-handlers.raml (unresolved reference)
OLD: mod-source-record-manager/ramls/metadata-provider.raml (unresolved reference)
OLD: mod-source-record-storage/ramls/source-record-storage-handlers.raml (unresolved reference, circular reference?)
OLD: mod-source-record-storage/ramls/source-record-storage-records.raml (unresolved reference, circular reference?)
The "api-lint" CI tool (https://folio-org.atlassian.net/browse/FOLIO-2893#icft=FOLIO-2893) is ready to be used by RAML-using and OpenAPI-using projects.
(This is the replacement for the now deprecated "lint-raml" runLintRamlCop tool.)
Note that this api-lint tool is more thorough than our previous CI tool (based on raml-cop and its underlying outdated raml-1-parser). So projects might find new violations being reported.
For projects that are not listed below, the replacement is straight-forward Jenkinsfile configuration.
For some projects there are new issues being reported. The fixes should be easily handled.
For a small set of projects, there are some issues which are more complex. These are either a real problem with the project's API description files, or are perhaps unidentified bugs with the underlying tool. If the latter, then please provide a basic test case which we can pass upstream (https://folio-org.atlassian.net/browse/FOLIO-2792#icft=FOLIO-2792).
Summary 2022-01-10 (using current amf-client-js v5.0.2):
Total 319 RAML files, 21 with some non-conformance.
Total 25 OAS files, all conform.