Skip to content

This repository contains the Bonita Runtime models modules.

License

Notifications You must be signed in to change notification settings

bonitasoft/bonita-artifacts-model

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Bonita Runtime Model

Build Sonarcloud Status GitHub release Maven Central License: LGPL v2.1

This repository contains the different modules that define the Bonita Runtime model. Which are:

  • bonita-application-model
  • bonita-bdm-access-control-model
  • bonita-business-archive
  • bonita-business-object-model
  • bonita-connector-model
  • bonita-form-mapping-model
  • bonita-organization-model
  • bonita-process-definition-model
  • bonita-profile-model

Quick start

Pre-requisite

Build

Using Maven

  • Build it using maven ./mvnw clean verify

Contribute

Report issues

If you want to report an issue or a bug use our official bugtracker.

How to contribute

Before contributing, read the guidelines.

Branching strategy

This repository follows the GitFlow branching strategy.

Regenerate Assert classes

You may want to regenerate Assert classes after modifying a model element. To do so, you can use the AssertJ plugin.

  1. First, run ./mvnw clean compile to make sure the classes are found.
  2. Delete the classes you want to regenerate.
  3. Then edit the project's pom.xml and add the plugin configuration in the build section with the classes/packages you want to regenerate. E.g., in application-model/pom.xml add:
      <plugin>
        <groupId>org.assertj</groupId>
        <artifactId>assertj-assertions-generator-maven-plugin</artifactId>
        <version>2.2.0</version>
        <configuration>
          <classes>
            <param>org.bonitasoft.engine.business.application.impl.ApplicationLinkImpl</param>
            <param>org.bonitasoft.engine.business.application.xml.ApplicationLinkNode</param>
            <param>org.bonitasoft.engine.business.application.xml.ApplicationNodeContainer</param>
          </classes>
          <generateAssertions>true</generateAssertions>
          <generateBddAssertions>false</generateBddAssertions>
          <generateSoftAssertions>false</generateSoftAssertions>
          <generateJUnitSoftAssertions>false</generateJUnitSoftAssertions>
          <hierarchical>false</hierarchical>
          <targetDir>application-model/src/test/java</targetDir>
          <generateAssertionsForAllFields>true</generateAssertionsForAllFields>
        </configuration>
      </plugin>
  1. Then run the following command to regenerate the Assert classes: ./mvnw assertj:generate-assertions -f application-model/pom.xml (adapt -f to your project)
  2. Remove the @javax.annotation.Generated annotation from the generated classes and the generated Assertions.java file.
  3. Format with ./mvnw spotless:apply.
  4. Make sure the generated classes satisfy your needs and that you did not corrupt other classes.
  5. Restore the original state of the project's pom.xml file.

Release

To release a new version, maintainers may use the Release and Publication GitHub actions.

  1. Release action will invoke the gitflow-maven-plugin to perform all required merges, version updates and tag creation.
  2. Publication action will build and deploy a given tag to Maven Central.
  3. A GitHub release should be created and associated to the tag.

Resources