Git Product home page Git Product logo

bonitasoft / bonita-engine Goto Github PK

View Code? Open in Web Editor NEW
146.0 55.0 83.0 109.17 MB

Deploy, execute, manage process-based applications made with Bonita studio or through Engine APIs

License: GNU Lesser General Public License v2.1

Java 98.27% Groovy 1.31% Shell 0.08% Batchfile 0.02% TSQL 0.30% HTML 0.01% CSS 0.01%
bpm bpmn engine java bpm-engine subtree delivery-central lifecycle-platform published-partial

bonita-engine's Introduction

Bonita Engine

Build

Maven Central

Deploy, execute, manage applications made with Bonita Studio.

Using the Engine

The engine is included as part of either Bonita Studio or Bonita Runtime, and executes the BPMN process logic. The engine can however be included as a standalone dependency in a custom Application, as explained here

Running the Project

Prerequisites

Java JDK 11 (to compile), and 11 (to run)

This project bundles the Gradle Wrapper, so the gradlew script is available at the project root.

Compiling

Just run the following Gradle command:

./gradlew build

To be able to successfully build other Bonita components that use the Engine, run:

 ./gradlew publishToMavenLocal

Among other things, it also generates the javadoc used by Bonita Studio.

The command above runs all unit tests. To skip them, add the -x test option.

Version

Version is declared in gradle.properties

To override the current version on build, use the parameter -Pversion like:

 ./gradlew -Pversion=7.9.3 <tasks>

Extra repositories

repositories can be added using comma separated list of repositories using property extraRepositories in format repo_name::repo_url

credentials can be passed using properties repo_nameUsername and repo_namePassword

it can be configured using -PextraRepositories= or gradle.properties file.

example of gradle properties set in ~/.gradle/gradle.properties

extraRepositories=releases::https://repo1/releases,snapshots::https://repo2/snapshots/
releasesUsername=username
releasesPassword=password
snapshotsUsername=username
snapshotsPassword=password

The same can be done for publishing repository (single repo) using property altDeploymentRepository

Running unit / integration tests

To run all unit + integration tests (on the default embedded H2 database), run the following command:

./gradlew test integrationTest

Project Structure

The project is composed of several modules. Unit tests are contained in the modules, integration tests are regrouped in bonita-integration-tests.

  • bonita-engine-spring-boot-starter : Run the engine in standalone mode using Spring boot, see documentation
  • bonita-engine-standalone : Run the engine in standalone programmatically, see documentation
  • bonita-test-api : Junit Rule to include the engine in your tests
  • bpm : Services related to bpm process execution
  • buildSrc : Internal Gradle plugins used to build Bonita Engine
  • platform : Services that handle the platform creation/configuration
  • services : Generic services used by the engine

How to contribute

In order to contribute to the project, read the guide. To report an issue use the official bugtracker.

bonita-engine's People

Contributors

abirembaut avatar akantcheff avatar baptistemesta avatar benjaminparisel avatar bonita-ci avatar cleogithub avatar csouchet avatar danila-m avatar dependabot[bot] avatar domtoupin avatar dumitrucorini avatar educhastenier avatar github-actions[bot] avatar guillaumerosinosky avatar jeremjr avatar jjargot avatar julienmege avatar laurentleseigneur avatar nchabanoles avatar pabloalonso avatar passga avatar pierre-yves-monnet avatar rbioteau avatar redboul avatar shmayro avatar tbouffard avatar tnguyen1 avatar uguy avatar vhemery avatar vishalthapaliya avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.