JavaScript client for Red Hat Insights RBAC service
npm install @redhat-cloud-services/rbac-clientbash
npm install --save @redhat-cloud-services/rbac-client
`Or Yarn
`bash
yarn add @redhat-cloud-services/rbac-client
`$3
This client is using typescript and axios. Types are distributed with this package, so no need to define or install them separately.This package comes with a client in its
api.ts already defined with every call available.
`JS
import rbacClient from '@redhat-cloud-services/javascript-clients-shared/utils';rbacClient.someEndpoint();
``
To bootstrap this API manually, you should create your own client via the APIFactory defined in the @redhat-cloud-services/javascript-clients-shared package. See below for an example:`JS
import APIFactory from '@redhat-cloud-services/javascript-clients-shared/utils';
import exampleEndpoint from '@redhat-cloud-services/rbac-client/ExampleEndpoint';
// BASE_PATH should be set in your constants file
const rbacApi = APIFactory(BASE_PATH, undefined, { exampleEndpoint });
export rbacApi;
`
If you want to add some interceptors you can use axios build in interceptors
`JS
import axios from 'axios';
import APIFactory from '@redhat-cloud-services/javascript-clients-shared/utils';
import exampleEndpoint from '@redhat-cloud-services/rbac-client/ExampleEndpoint';
const instance = axios.create();
// Request interceptor
instance.interceptors.request.use((request) => {
// some logic to do with request
});
// Response interceptor
instance.interceptors.response.use((response) => {
// some logic to do with request
});
// Error interceptor
instance.interceptors.response.use(null, (error) => {
// some logic to do with error
});
// BASE_PATH should be set in your constants file
const rbacApi = APIFactory(BASE_PATH, instance, { exampleEndpoint });
export rbacApi;
`Generating
Ensure you have the javascript-clients generator built first with npm run build:generator. Then, run nx run @redhat-cloud-services/rbac-client:generate to generate the package.
Run nx run @redhat-cloud-services/rbac-client:build to build the package. This creates the dist for publishing.
Run nx run @redhat-cloud-services/rbac-client:test` to execute the unit tests via Jest.
* README