diff --git a/.cypress/integration/dashboard.spec.js b/.cypress/integration/dashboard.spec.js index f408c8ec4..061b2b482 100644 --- a/.cypress/integration/dashboard.spec.js +++ b/.cypress/integration/dashboard.spec.js @@ -19,7 +19,7 @@ import { delay, setTimeFilter } from '../utils/constants'; describe('Testing dashboard table empty state', () => { beforeEach(() => { - cy.visit('app/opendistro-trace-analytics#/dashboard'); + cy.visit('app/trace-analytics-dashboards#/dashboard'); cy.wait(delay * 3); }); @@ -31,7 +31,7 @@ describe('Testing dashboard table empty state', () => { describe('Testing dashboard table', () => { beforeEach(() => { - cy.visit('app/opendistro-trace-analytics#/dashboard'); + cy.visit('app/trace-analytics-dashboards#/dashboard'); setTimeFilter(); }); @@ -85,7 +85,7 @@ describe('Testing dashboard table', () => { describe('Testing plots', () => { beforeEach(() => { - cy.visit('app/opendistro-trace-analytics#/dashboard'); + cy.visit('app/trace-analytics-dashboards#/dashboard'); setTimeFilter(); }); diff --git a/.cypress/integration/services.spec.js b/.cypress/integration/services.spec.js index db45e6fba..beab95ba1 100644 --- a/.cypress/integration/services.spec.js +++ b/.cypress/integration/services.spec.js @@ -19,7 +19,7 @@ import { delay, setTimeFilter, SERVICE_NAME } from '../utils/constants'; describe('Testing services table empty state', () => { beforeEach(() => { - cy.visit('app/opendistro-trace-analytics#/services'); + cy.visit('app/trace-analytics-dashboards#/services'); cy.wait(delay * 3); }); @@ -31,7 +31,7 @@ describe('Testing services table empty state', () => { describe('Testing services table', () => { beforeEach(() => { - cy.visit('app/opendistro-trace-analytics#/services'); + cy.visit('app/trace-analytics-dashboards#/services'); setTimeFilter(); }); @@ -53,7 +53,7 @@ describe('Testing services table', () => { describe('Testing service view empty state', () => { beforeEach(() => { - cy.visit(`app/opendistro-trace-analytics#/services/${SERVICE_NAME}`); + cy.visit(`app/trace-analytics-dashboards#/services/${SERVICE_NAME}`); cy.wait(delay * 3); }); @@ -66,7 +66,7 @@ describe('Testing service view empty state', () => { describe('Testing service view', () => { beforeEach(() => { - cy.visit(`app/opendistro-trace-analytics#/services/${SERVICE_NAME}`); + cy.visit(`app/trace-analytics-dashboards#/services/${SERVICE_NAME}`); setTimeFilter(undefined, undefined, false); }); diff --git a/.cypress/integration/traces.spec.js b/.cypress/integration/traces.spec.js index 072a0a75f..a68c13197 100644 --- a/.cypress/integration/traces.spec.js +++ b/.cypress/integration/traces.spec.js @@ -19,7 +19,7 @@ import { delay, setTimeFilter, TRACE_ID, SPAN_ID } from '../utils/constants'; describe('Testing traces table empty state', () => { beforeEach(() => { - cy.visit('app/opendistro-trace-analytics#/traces'); + cy.visit('app/trace-analytics-dashboards#/traces'); cy.wait(delay * 3); }); @@ -31,7 +31,7 @@ describe('Testing traces table empty state', () => { describe('Testing traces table', () => { beforeEach(() => { - cy.visit('app/opendistro-trace-analytics#/traces'); + cy.visit('app/trace-analytics-dashboards#/traces'); setTimeFilter(); }); @@ -53,7 +53,7 @@ describe('Testing traces table', () => { describe('Testing trace view', () => { beforeEach(() => { - cy.visit(`app/opendistro-trace-analytics#/traces/${TRACE_ID}`); + cy.visit(`app/trace-analytics-dashboards#/traces/${TRACE_ID}`); cy.wait(delay * 3); }); diff --git a/.github/ISSUE_TEMPLATE/bug_template.md b/.github/ISSUE_TEMPLATE/bug_template.md new file mode 100644 index 000000000..8fae24db4 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_template.md @@ -0,0 +1,33 @@ +--- +name: 🐛 Bug report +about: Create a report to help us improve +title: "[BUG]" +labels: bug +assignees: '' +--- + +**Describe the bug** +A clear and concise description of what the bug is. + +**To Reproduce** +Steps to reproduce the behavior: +1. Go to '...' +2. Click on '....' +3. Scroll down to '....' +4. See error + +**Expected behavior** +A clear and concise description of what you expected to happen. + +**Plugins** +Please list all plugins currently enabled. + +**Screenshots** +If applicable, add screenshots to help explain your problem. + +**Host/Environment (please complete the following information):** + - OS: [e.g. iOS] + - Version [e.g. 22] + +**Additional context** +Add any other context about the problem here. \ No newline at end of file diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md new file mode 100644 index 000000000..2791b8081 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature_request.md @@ -0,0 +1,19 @@ +--- +name: 🎆 Feature request +about: Suggest an idea for this project +title: '' +labels: enhancement +assignees: '' +--- + +**Is your feature request related to a problem? Please describe.** +A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] + +**Describe the solution you'd like** +A clear and concise description of what you want to happen. + +**Describe alternatives you've considered** +A clear and concise description of any alternative solutions or features you've considered. + +**Additional context** +Add any other context or screenshots about the feature request here. \ No newline at end of file diff --git a/.github/workflows/release-workflow.yml b/.github/workflows/release-workflow.yml index d2f2171aa..02a133ebc 100644 --- a/.github/workflows/release-workflow.yml +++ b/.github/workflows/release-workflow.yml @@ -7,8 +7,8 @@ on: - 'v*' env: - PLUGIN_NAME: opendistroTraceAnalyticsKibana - OD_VERSION: 1.13.0.0-alpha + PLUGIN_NAME: traceanalyticsDashboards + OD_VERSION: 1.15.0.0 jobs: @@ -25,27 +25,27 @@ jobs: aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} aws-region: us-east-1 - - name: Checkout Kibana + # TODO change to opensearch dashboards + - name: Checkout OpenSerach Dashboards uses: actions/checkout@v1 with: - repository: opendistro-for-elasticsearch/kibana-oss - ref: 7.10.2 - token: ${{secrets.OD_ACCESS}} - path: kibana + repository: opensearch-project/Opensearch-Dashboards + ref: 1.x + path: OpenSearch-Dashboards - name: Checkout Plugin uses: actions/checkout@v1 with: - path: kibana/plugins/trace-analytics + path: OpenSearch-Dashboards/plugins/trace-analytics - name: Setup Node uses: actions/setup-node@v1 with: node-version: '10.23.1' - - name: Kibana Pluign Bootstrap + - name: Pluign Bootstrap run: | - yarn kbn bootstrap + yarn osd bootstrap - name: Build Artifact run: | @@ -53,5 +53,6 @@ jobs: mv ./build/*.zip ./build/${{ env.PLUGIN_NAME }}-${{ env.OD_VERSION }}.zip artifact=`ls ./build/*.zip` + # TODO change to new bucket aws s3 cp $artifact s3://artifacts.opendistroforelasticsearch.amazon.com/downloads/kibana-plugins/opendistro-trace-analytics/ aws cloudfront create-invalidation --distribution-id ${{ secrets.DISTRIBUTION_ID }} --paths "/downloads/*" diff --git a/.github/workflows/test-and-build-workflow.yml b/.github/workflows/test-and-build-workflow.yml index 4a44b49d2..764857640 100644 --- a/.github/workflows/test-and-build-workflow.yml +++ b/.github/workflows/test-and-build-workflow.yml @@ -4,8 +4,8 @@ name: Test and Build Trace Analytics on: [pull_request, push] env: - PLUGIN_NAME: opendistroTraceAnalyticsKibana - OD_VERSION: 1.13.0.0-alpha + PLUGIN_NAME: traceanalyticsDashboards + OD_VERSION: 1.15.0.0 jobs: @@ -14,23 +14,24 @@ jobs: runs-on: ubuntu-latest steps: - - name: Checkout Kibana + # TODO change to opensearch dashboards + - name: Checkout OpenSerach Dashboards uses: actions/checkout@v1 with: - repository: elastic/kibana - ref: v7.10.2 - path: kibana + repository: opensearch-project/Opensearch-Dashboards + ref: 1.x + path: OpenSearch-Dashboards - name: Checkout Plugin uses: actions/checkout@v1 with: - path: kibana/plugins/trace-analytics + path: OpenSearch-Dashboards/plugins/trace-analytics - name: Setup Node uses: actions/setup-node@v1 with: node-version: '10.23.1' - - name: Kibana Pluign Bootstrap + - name: Pluign Bootstrap run: | - yarn kbn bootstrap + yarn osd bootstrap - name: Test run: | yarn test diff --git a/CODE_OF_CONDUCT.md b/CODE_OF_CONDUCT.md index 5b627cfa6..997bae660 100644 --- a/CODE_OF_CONDUCT.md +++ b/CODE_OF_CONDUCT.md @@ -1,4 +1,25 @@ -## Code of Conduct -This project has adopted the [Amazon Open Source Code of Conduct](https://aws.github.io/code-of-conduct). -For more information see the [Code of Conduct FAQ](https://aws.github.io/code-of-conduct-faq) or contact -opensource-codeofconduct@amazon.com with any additional questions or comments. + +This code of conduct applies to all spaces provided by the OpenSource project including in code, documentation, issue trackers, mailing lists, chat channels, wikis, blogs, social media and any other communication channels used by the project. + + +**Our open source communities endeavor to:** + +* Be Inclusive: We are committed to being a community where everyone can join and contribute. This means using inclusive and welcoming language. +* Be Welcoming: We are committed to maintaining a safe space for everyone to be able to contribute. +* Be Respectful: We are committed to encouraging differing viewpoints, accepting constructive criticism and work collaboratively towards decisions that help the project grow. Disrespectful and unacceptable behavior will not be tolerated. +* Be Collaborative: We are committed to supporting what is best for our community and users. When we build anything for the benefit of the project, we should document the work we do and communicate to others on how this affects their work. + + +**Our Responsibility. As contributors, members, or bystanders we each individually have the responsibility to behave professionally and respectfully at all times. Disrespectful and unacceptable behaviors include, but are not limited to:** + +* The use of violent threats, abusive, discriminatory, or derogatory language; +* Offensive comments related to gender, gender identity and expression, sexual orientation, disability, mental illness, race, political or religious affiliation; +* Posting of sexually explicit or violent content; +* The use of sexualized language and unwelcome sexual attention or advances; +* Public or private harassment of any kind; +* Publishing private information, such as physical or electronic address, without permission; +* Other conduct which could reasonably be considered inappropriate in a professional setting; +* Advocating for or encouraging any of the above behaviors. +* Enforcement and Reporting Code of Conduct Issues: + +Instances of abusive, harassing, or otherwise unacceptable behavior may be reported. [Contact us](mailto:opensource-codeofconduct@amazon.com). All complaints will be reviewed and investigated and will result in a response that is deemed necessary and appropriate to the circumstances. diff --git a/LICENSE b/LICENSE index 67db85882..261eeb9e9 100644 --- a/LICENSE +++ b/LICENSE @@ -1,4 +1,3 @@ - Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ @@ -173,3 +172,30 @@ defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/MAINTAINERS.md b/MAINTAINERS.md new file mode 100644 index 000000000..a925ab2d9 --- /dev/null +++ b/MAINTAINERS.md @@ -0,0 +1,7 @@ +# Trace Analytics Maintainers + +## Maintainers +| Maintainer | GitHub ID | Affiliation | +|------------------------|---------------------------------------------------|-------------| +| David Cui | [davidcui-amzn](https://github.com/davidcui-amzn) | Amazon | +| Joshua Li | [joshuali925](https://github.com/joshuali925) | Amazon | diff --git a/NOTICE b/NOTICE index 616fc5889..be83767d4 100644 --- a/NOTICE +++ b/NOTICE @@ -1 +1,12 @@ -Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. +OpenSearch +Copyright 2021 OpenSearch Contributors + +This product includes software developed by +Elasticsearch (http://www.elastic.co). +Copyright 2009-2018 Elasticsearch + +This product includes software developed by The Apache Software +Foundation (http://www.apache.org/). + +This product includes software developed by +Joda.org (http://www.joda.org/). diff --git a/README.md b/README.md index 1a8165bf9..94c0cff64 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ -# Open Distro for Elasticsearch Trace Analytics +# OpenSearch Dashboards Trace Analytics -The Open Distro for Elasticsearch Trace Analytics plugin provides instant on dashboards in Kibana for users to quickly analyze their logs. The plugin uses aggregated results from two indices, `otel-v1-apm-span-*` and `otel-v1-apm-service-map*` created by the otel-trace-raw-processor and service-map-processor, and renders three main views: +The OpenSearch Dashboards Trace Analytics plugin provides instant on dashboards in OpenSearch Dashboards for users to quickly analyze their logs. The plugin uses aggregated results from two indices, `otel-v1-apm-span-*` and `otel-v1-apm-service-map*` created by the otel-trace-raw-processor and service-map-processor, and renders three main views: 1. Dashboard: an overview of the trace groups and two charts: error rate and throughput. @@ -16,21 +16,19 @@ Please see our technical [documentation](https://opendistro.github.io/for-elasti ## Setup -1. Download Elasticsearch for the version that matches the [Kibana version specified in package.json](./package.json#L5). -1. Download the Kibana source code for the [version specified in package.json](./package.json#L5) you want to set up. +1. Download OpenSearch for the version that matches the [OpenSearch Dashboards version specified in package.json](./package.json#L5). +1. Download the OpenSearch Dashboards source code for the [version specified in package.json](./package.json#L5) you want to set up. - See the [Kibana contributing guide](https://github.com/elastic/kibana/blob/master/CONTRIBUTING.md#setting-up-your-development-environment) for more instructions on setting up your development environment. - -1. Change your node version to the version specified in `.node-version` inside the Kibana root directory. -1. cd into `plugins` directory in the Kibana source code directory. +1. Change your node version to the version specified in `.node-version` inside the OpenSearch Dashboards root directory. +1. cd into `plugins` directory in the OpenSearch Dashboards source code directory. 1. Check out this package from version control into the `plugins` directory. -1. Run `yarn kbn bootstrap` inside `kibana/plugins/trace-analytics`. +1. Run `yarn osd bootstrap` inside `OpenSearch-Dashboards/plugins/trace-analytics`. Ultimately, your directory structure should look like this: ```md . -├── kibana +├── OpenSearch-Dashboards │ └── plugins │ └── trace-analytics ``` @@ -39,24 +37,22 @@ Ultimately, your directory structure should look like this: To build the plugin's distributable zip simply run `yarn build`. -Example output: `./build/opendistroTraceAnalytics-*.zip` +Example output: `./build/traceanalyticsDashboards*.zip` ## Run - `yarn start` - Starts Kibana and includes this plugin. Kibana will be available on `localhost:5601`. - -## Contributing to Open Distro for Elasticsearch Trace Analytics + Starts OpenSearch Dashboards and includes this plugin. OpenSearch Dashboards will be available on `localhost:5601`. -We welcome you to get involved in development, documentation, testing the kibana reports plugin. See our [CONTRIBUTING.md](./CONTRIBUTING.md) and join in. +## Contributing to OpenSearch Dashboards Trace Analytics -Since this is a Kibana plugin, it can be useful to review the [Kibana contributing guide](https://github.com/elastic/kibana/blob/master/CONTRIBUTING.md) alongside the documentation around [Kibana plugins](https://www.elastic.co/guide/en/kibana/master/kibana-plugins.html) and [plugin development](https://www.elastic.co/guide/en/kibana/current/plugin-development.html). +We welcome you to get involved in development, documentation, testing the OpenSearch Dashboards Trace Analytics plugin. See our [CONTRIBUTING.md](./CONTRIBUTING.md) and join in. ## Bugs, Enhancements or Questions -Please file an issue to report any bugs you may find, enhancements you may need or questions you may have [here](https://github.com/opendistro-for-elasticsearch/trace-analytics/issues). +Please file an issue to report any bugs you may find, enhancements you may need or questions you may have [here](https://github.com/opensearch-project/trace-analytics/issues). ## License diff --git a/common/index.ts b/common/index.ts index 96b1b618d..3e26e9f81 100644 --- a/common/index.ts +++ b/common/index.ts @@ -13,7 +13,7 @@ * permissions and limitations under the License. */ -export const PLUGIN_ID = 'opendistro-trace-analytics'; +export const PLUGIN_ID = 'trace-analytics-dashboards'; export const PLUGIN_NAME = 'Trace Analytics'; export const RAW_INDEX_NAME = 'otel-v1-apm-span-*'; diff --git a/kibana.json b/kibana.json deleted file mode 100644 index 8615dd87e..000000000 --- a/kibana.json +++ /dev/null @@ -1,9 +0,0 @@ -{ - "id": "opendistroTraceAnalyticsKibana", - "version": "1.13.0.0", - "kibanaVersion": "7.10.2", - "server": true, - "ui": true, - "requiredPlugins": ["navigation"], - "optionalPlugins": [] -} diff --git a/.kibana-plugin-helpers.json b/opensearch-dashboards-plugin-helpers.dev.json similarity index 55% rename from .kibana-plugin-helpers.json rename to opensearch-dashboards-plugin-helpers.dev.json index fca3fbcc3..23260a3b2 100644 --- a/.kibana-plugin-helpers.json +++ b/opensearch-dashboards-plugin-helpers.dev.json @@ -3,9 +3,7 @@ "package.json", "yarn.lock", "tsconfig.json", - "common/**/*", - "public/**/*", - "server/**/*", - "kibana.json" + "{common,public,server,test}/**/*", + "!__tests__" ] } diff --git a/opensearch_dashboards.json b/opensearch_dashboards.json new file mode 100644 index 000000000..4539a1893 --- /dev/null +++ b/opensearch_dashboards.json @@ -0,0 +1,9 @@ +{ + "id": "traceanalyticsDashboards", + "version": "1.15.0.0", + "opensearchDashboardsVersion": "7.10.2", + "server": true, + "ui": true, + "requiredPlugins": ["navigation"], + "optionalPlugins": [] +} diff --git a/package.json b/package.json index 212b62003..e54e1922e 100644 --- a/package.json +++ b/package.json @@ -1,13 +1,14 @@ { - "name": "opendistro-trace-analytics-kibana", - "version": "1.13.0.0", - "kibana": { + "name": "trace-analytics-dashboards", + "version": "1.15.0.0", + "opensearchDashboards": { "version": "7.10.2", "templateVersion": "1.0.0" }, "license": "Apache-2.0", "scripts": { - "kbn": "node ../../scripts/kbn", + "osd": "node ../../scripts/osd", + "opensearch": "node ../../scripts/opensearch", "lint": "eslint .", "test:cypress": "cypress run", "plugin-helpers": "node ../../scripts/plugin_helpers", diff --git a/public/components/app.tsx b/public/components/app.tsx index 8e123b155..5f7866b30 100644 --- a/public/components/app.tsx +++ b/public/components/app.tsx @@ -13,7 +13,7 @@ * permissions and limitations under the License. */ -import { I18nProvider } from '@kbn/i18n/react'; +import { I18nProvider } from '@osd/i18n/react'; import React, { useEffect, useState } from 'react'; import { HashRouter, Route, Switch } from 'react-router-dom'; import { ChromeBreadcrumb, CoreStart, IUiSettingsClient } from '../../../../src/core/public'; diff --git a/public/index.ts b/public/index.ts index c4b435060..c6ddbb599 100644 --- a/public/index.ts +++ b/public/index.ts @@ -18,7 +18,7 @@ import './index.scss'; import { TraceAnalyticsPlugin } from './plugin'; // This exports static code and TypeScript types, -// as well as, Kibana Platform `plugin()` initializer. +// as well as, OpenSearch Dashboards Platform `plugin()` initializer. export function plugin() { return new TraceAnalyticsPlugin(); } diff --git a/public/plugin.ts b/public/plugin.ts index 9911a340d..dba66bb38 100644 --- a/public/plugin.ts +++ b/public/plugin.ts @@ -13,7 +13,7 @@ * permissions and limitations under the License. */ -import { i18n } from '@kbn/i18n'; +import { i18n } from '@osd/i18n'; import { AppMountParameters, CoreSetup, @@ -43,7 +43,7 @@ export class TraceAnalyticsPlugin async mount(params: AppMountParameters) { // Load application bundle const { renderApp } = await import('./application'); - // Get start services as specified in kibana.json + // Get start services as specified in opensearch_dashboards.json const [coreStart, depsStart] = await core.getStartServices(); // Render the application return renderApp(coreStart, depsStart as AppPluginStartDependencies, params); diff --git a/server/index.ts b/server/index.ts index 81308854e..edd51c0fe 100644 --- a/server/index.ts +++ b/server/index.ts @@ -17,7 +17,7 @@ import { PluginInitializerContext } from '../../../src/core/server'; import { TraceAnalyticsPlugin } from './plugin'; // This exports static code and TypeScript types, -// as well as, Kibana Platform `plugin()` initializer. +// as well as, OpenSearch Dashboards Platform `plugin()` initializer. export function plugin(initializerContext: PluginInitializerContext) { return new TraceAnalyticsPlugin(initializerContext); diff --git a/server/plugin.ts b/server/plugin.ts index 29b1119f2..a4ac5ea30 100644 --- a/server/plugin.ts +++ b/server/plugin.ts @@ -39,7 +39,7 @@ export class TraceAnalyticsPlugin this.logger.debug('trace_analytics: Setup'); const router = core.http.createRouter(); - // const sqlClient: ILegacyClusterClient = core.elasticsearch.legacy.createClient(SQL_CLUSTER, { + // const sqlClient: ILegacyClusterClient = core.opensearch.legacy.createClient(SQL_CLUSTER, { // plugins: [sqlPlugin], // }); diff --git a/server/routes/dslRouter.ts b/server/routes/dslRouter.ts index 33cf74e75..7020a5996 100644 --- a/server/routes/dslRouter.ts +++ b/server/routes/dslRouter.ts @@ -15,7 +15,7 @@ import { RequestParams } from '@elastic/elasticsearch'; import { IRouter } from '../../../../src/core/server'; -import { schema } from '@kbn/config-schema'; +import { schema } from '@osd/config-schema'; import { DSL_ROUTE, INDICES_ROUTE } from '../utils/constants'; import { RAW_INDEX_NAME, SERVICE_MAP_INDEX_NAME } from '../../common'; @@ -31,7 +31,7 @@ export function RegisterDslRouter(router: IRouter) { allow_no_indices: false, }; try { - const resp = await context.core.elasticsearch.legacy.client.callAsCurrentUser( + const resp = await context.core.opensearch.legacy.client.callAsCurrentUser( 'indices.exists', params ); @@ -88,7 +88,7 @@ export function RegisterDslRouter(router: IRouter) { body: rest, }; try { - const resp = await context.core.elasticsearch.legacy.client.callAsCurrentUser( + const resp = await context.core.opensearch.legacy.client.callAsCurrentUser( 'search', params ); diff --git a/server/routes/sqlRouter.ts b/server/routes/sqlRouter.ts index f20a3f02e..ad4660935 100644 --- a/server/routes/sqlRouter.ts +++ b/server/routes/sqlRouter.ts @@ -15,7 +15,7 @@ import { RequestParams } from '@elastic/elasticsearch'; import { ILegacyClusterClient, IRouter } from '../../../../src/core/server'; -import { schema } from '@kbn/config-schema'; +import { schema } from '@osd/config-schema'; import { SQL_ROUTE } from '../utils/constants'; export function RegisterSqlRouter(router: IRouter, sqlClient: ILegacyClusterClient) { diff --git a/test/setup.jest.ts b/test/setup.jest.ts index 6d09ce15c..780a8b355 100644 --- a/test/setup.jest.ts +++ b/test/setup.jest.ts @@ -19,6 +19,7 @@ import { configure } from '@testing-library/react'; configure({ testIdAttribute: 'data-test-subj' }); window.URL.createObjectURL = () => ''; +HTMLCanvasElement.prototype.getContext = () => ''; jest.mock('@elastic/eui/lib/components/form/form_row/make_id', () => () => 'random-id'); diff --git a/tsconfig.json b/tsconfig.json index 6f6e04b92..58c31edea 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,5 +1,5 @@ { - // extend Kibana's tsconfig, or use your own settings + // extend OpenSearch Dashboards's tsconfig, or use your own settings "extends": "../../tsconfig.json", "compilerOptions": { "jsx": "react", @@ -29,4 +29,4 @@ "../../typings/**/*" ], "exclude": ["node_modules", "*/node_modules/"] -} \ No newline at end of file +}