Atlassian server app for migrating to Data Center on AWS
Build the plugin via mvn package
then install the plugin into your Jira instance through the "Manage Apps" menu and uploading the app .jar or .obr found in the target
directory.
- Maven (3.6.1 or higher)
- Node/NPM (NVM is recommended to manage versions)
- Yarn (can be installed from package or with
npm install -g yarn
) - [Atlassian SDK])(https://developer.atlassian.com/server/framework/atlassian-sdk/) (optional)
The frontend is built on a stack of:
- React
- Typescript
- styled components
- Built with Webpack and Babel
In the project directory, you can run:
It builds the frontend and puts it in the watch mode with hot reload. In other words, if you have the whole plugin and an instance already working, this will enable you to make quick changes with instant preview.
Go to http://localhost:3333
to run the frontend without Jira
The webpack dev-server proxies all API requests to localhost:2990/jira
. To get
proper authorisation for these API calls, you need to define the JIRA_ADMIN_PASSWORD
environment variable with the password for the admin
user of the local Jira application.
e.g. JIRA_ADMIN_PASSWORD=admin yarn start
If you want to test in-app, run mvn amps:run --product [jira|refapp|confluence]
while the dev server is running
Here are the SDK commands you'll use immediately:
- Run the unit-test suite:
mvn clean verify
- Run the integration-test suite:
mvn clean verify -P 'integration'
- Run the plugin in a product:
cd jira-plugin && mvn amps:run -Dproduct.version=<version e.g. 8.5.0> -DskipTests
- If you want to remotely debug your code running in the product, run
mvn amps:debug
and create IDEA Remote run configuration (defaults are ok) - To run the plugin in
development
mode that allows access to the/develop/migration/stage
endpoint you need a spring profile titledallowAnyTransition
to be enabled. To do so during development or testing, either -- Add the following command suffix
-Damps.jvm.args="-Dspring.profiles.active=allowAnyTransition"
toamps:run
oramps:debug
- Set an environment variable to enable the spring profile. i.e.
SPRING_PROFILES_ACTIVE=allowAnyTransition mvn amps:run ...
- Add the following command suffix
- If you want to remotely debug your code running in the product, run
- Build the plugin:
mvn package
and quick reload will reinstall the plugin in the product (https://developer.atlassian.com/server/framework/atlassian-sdk/automatic-plugin-reinstallation-with-quickreload/)- If you are not changing frontend, you can run
mvn package -Pno-frontend
- this will disable frontend tasks and speed up maven process
- If you are not changing frontend, you can run
- When in doubt,
mvn clean
it out - Full atlassian maven reference
Testing:
Username | Password |
---|---|
admin | admin |
Manage from http://localhost:2990/jira/plugins/servlet/upm
Full documentation is always available at:
https://developer.atlassian.com/display/DOCS/Introduction+to+the+Atlassian+Plugin+SDK
Will run all tests
For running just UI tests.
Checks the frontend plugin for styling errors.
The ruleset is set to be compatible with other Server plugins, so please mind that when considering making changes to it.
Will additionally fix any automatically-fixable issues. Changes.
See the testing README for details.
The project is regularly scanned for security vulnerabilities via Snyk vulnerability scanner.
Contributions to DC Migration Assistant are welcome! Please see CONTRIBUTING.md for details
This library is licensed under the Apache 2.0 License.