So you want to contribute code to this project? Excellent! We're glad you're here. Here's what you need to do.
Fork this repository on GitHub, and clone locally with git clone
.
You will need to install node.js, nvm, and yarn in your environment to properly pull down dependencies to build and bootstrap the plugin.
-
Download OpenSearch for the version that matches the OpenSearch Dashboard version specified in package.json.
-
Download and install the appropriate OpenSearch Alerting plugin.
-
Download the OpenSearch-Dashboards source code for the version specified in package.json you want to set up.
See the OpenSearch Dashboards developer guide for more instructions on setting up your development environment.
-
Change your node version to the version specified in
.node-version
inside the OpenSearch-Dashboards root directory. -
cd into the
plugins
directory of the OpenSearch-Dashboards source code directory. -
Check out this package from version control into the
plugins
directory. -
Run
yarn osd bootstrap
insideOpensearch-Dashboards/plugins/alerting-dashboards-plugin
.
Ultimately, your directory structure should look like this:
.
├── OpenSearch-Dashboards
│ └── plugins
│ └── alerting-dashboards-plugin
To build the plugin's distributable zip simply run yarn build
.
Example output: ./build/alertingDashboards-1.0.0-rc1.zip
-
yarn start
- Starts OpenSearch-Dashboards and includes this plugin. OpenSearch-Dashboards will be available on
localhost:5601
. - Please run in the OpenSearch-Dashboards root directory
- You must have OpenSearch running with the Alerting plugin
- Starts OpenSearch-Dashboards and includes this plugin. OpenSearch-Dashboards will be available on
There are unit/stubbed integration tests and Cypress e2e/integration tests.
-
yarn test:jest
- Runs the plugin unit tests.
-
yarn run cypress open
- Opens the Cypress test runner.
-
yarn run cypress run
- Runs all Cypress tests headlessly in the Electron browser.
To run the Cypress tests, you must have both OpenSearch and OpenSearch-Dashboards running with the Alerting plugin.
If you are running Cypress tests with OpenSearch-Dashboards development server, pass these 2 options to yarn start
:
--no-base-path
: opt out the BasePathProxy.--no-watch
: make sure your server has not restarted.