Skip to content

Building, Testing and CI CD

Jaakko Närhi edited this page Jan 7, 2022 · 4 revisions

Building and Running The Plugin

Gradle is used for building the plugin. If you want to generate a .zip file containing the plugin, run the buildPlugin Gradle task. It is generated to build/distributions/. The easiest way to run the tasks is through the IntelliJ Gradle plugin. You can also use the gradlew executable.

The fastest way to run the plugin for manual testing is the runIde task. You can also manually install the generated .zip file in the settings of IntelliJ.

Testing and CI/CD

Unit Testing

You can run all the unit tests using the check Gradle task. It will also run Checkstyle. Do this before making a new pull request.

To run the integration tests, you must have the INTEGRATION environment variable set to true and have the local A+ instance running. You can start it by running start_local_a+_env.sh located in the project's root.

CI/CD

Each push will trigger a GitHub Actions CI pipeline that runs the unit tests and style checking. If you have a pull request open, it will also run the integration tests and Sonarqube.

To release a new version of the plugin, make a new GitHub release. Create a new tag by choosing Choose a tag and writing the new version number, such as v1.0. The release title can be same as the tag name. Be sure to also click Auto-generate release notes and clean them by removing less interesting pull requests. When you click Publish release a pipeline will build and release the plugin using the PUBLISH_TOKEN secret environment variable.