Skip to content

c1 Project Setup

Alex edited this page Aug 24, 2021 · 20 revisions

Anything that can be coded and wrapped in an Ivy project can be served as market product. In order to distribute it in a secure and effective way, the Ivy infrastructure needs the product available as a Maven compliant workspace. The code, its build infrastructure and target repository will live (free of charge) on Github.

A great example on how a market product needs to be setup is the A-Trust connector. You can use this connector as reference if you are unsure on how to implement your product.

Follow these steps to create your market product:

Initialize a new repository

  1. Login to Github.com or create a new account if you do not have one yet.
  2. Create your own product repo by copying our template. create
  3. Adjust the names in the pom.xml right in your browser
    1. Click on the pom.xml and start editing edit
    2. Set your product name and artifactId edit
    3. Indicate the platform version that supports your product by settings the <version>
    4. Save your changes by committing to master edit
  4. Clone the created repository onto your local disc. clone
  5. Import your local repository into the Axon Ivy Designer via Import -> Maven -> Existing Maven Project import

Create your product projects

Use the Axon Ivy Designer to create three distinct projects within the local repository:

  1. A main project
  2. A demo project
  3. A test project

Create the new project from the previously imported module project. new

Main Project

Create the main project that contains the product you want to share. Be careful that the name matches the one you entered in the pom.xml back in step 3. new-main

Demo Project

Create a demo project that demonstrates a valid use-case of your product. After clicking Next in the wizard, set the previously created project as dependency. new-demo new-dep

Go to pom.xml and change the version of your product to ${project.version}. So you no longer need to maintain the correct version here.

Test Project

Create a test project (created using the New Ivy Test Project wizard) that assures the quality of the product. new-test

  1. Select the product as project under test and pick testing flavors you would like to use. test-flavour
  2. Change the project name so it ends with -test. test-naming

Go to pom.xml and change the version of your product to ${project.version}. So you no longer need to maintain the correct version here.

Streamline versions

In all 3 created projects, navigate to Definitions/Deployment and open the Deployment editor. Set the same project version as in the main module pom.xml (e.g. 9.2.0-SNAPSHOT) It should likewise match a release of the Axon Ivy platform you are going to comply with.

Push to Remote

  1. Add, commit and push the created project files to Github.com.
    1. A GitHub Action build will run automatically and verify that the projects can be built and published with Maven.
  2. Finally, you can start implementing your product, its demo and the tests.
Clone this wiki locally