Skip navigation
All Places > Alfresco Process Services & Activiti (BPM) > Blog > 2017 > December
2017

(18/12/17 - 24/12/17) We’ve been working hard to eat our own dogfood by fleshing out our Trending Topic Campaigns example to make it as realistic as possible and testing it at high volumes. This is helping us to refine the Activiti Cloud tooling and provide better guidance on how to use it.

 

 

@daisuke-yoshimoto worked through issues and forum questions, helping make progress on issues experienced in the community

@constantin-ciobotaru worked on building an executable for the Activiti Cloud Models module to run in a docker container

@mteodori addressed a vulnerability by removing an unnecessary xerces dep from v5

@lucianoprea worked on building an executable for the Activiti Cloud Organisation module to run in a docker container and flushed out some issues in our gitbook instructions

@ffazzini fix zipkin Boot M7 breaking changes, memory/performance optimisations for applications running on minikube

@balsarori offered advice to help resolve a key issue with the connector implementation

@ryandawsonuk did some refactoring of the trending  Trending Topic Campaigns example and integrated ELK into the example

@erdemedeiros did some code reviews and investigated a random failure around the connector examples. Will be on holidays next week.

@salaboy did some planning for work on the trending topics example and further work into next year as well preparing presentations

 

Ping us in Gitter if you want to contribute: https://gitter.im/Activiti/Activiti7

If you want to get started with Activiti Cloud visit our Gitbook: https://activiti.gitbooks.io/activiti-7-developers-guide/content/

(11/12/17 - 17/12/17) We are getting close to the end of the year and we are focusing on improving our tests and building blocks. We want to start 2018 with a continuous deployment approach for our services and tools that we build. For that reason, we are spending some time in setting up our Trending Topic Campaigns example (which uses Docker & Kubernetes) in an environment that we can run, test and validate our releases.

 

 

@daisuke-yoshimoto added ability to activiti-cloud-runtime-bundle-service to start a process instance by process definition key and business key. Also, he is reviewing the following pull requests.

Fix signal events throw/catch race conditions in transaction scope

Update the persisted historic task instances that are open

@constantin-ciobotaru worked for connectivity between organization service and model services (like process model), added modeling backend starter and improved versioning on process models service

@lucianoprea worked on the  Activiti Cloud Service Organization having the first iteration merged and almost done the Spring Rest Docs integrated for the Audit JPA

@ffazzini spring profiles for logging, Boot M7 breaking changes fixes, investigation around terraform/rancher deployment for having an environment up and running

@ryandawsonuk has been reviewing contributions and checking the latest builds and updating after a recent spring boot milestone upgrade

@erdemedeiros did some bug fixes and worked in the trending topic campaigns example.

@salaboy working on updating our gitbook (https://activiti.gitbooks.io/activiti-7-developers-guide/content/ ) and looking into our modelling backend services. I helped also with reviewing and refactoring some of the bits inside of the Trending Topic Campaign Cloud Examples.

 

 

This week, we will start preparing for our December release, which is full of fixes and most importantly our demo scenario that demonstrate how to build, deploy and scale domain specific Activiti Cloud Applications. I (@salaboy) will be off for 3 weeks so I hope to see you all at DevCon ‘18.

 

Ping us in Gitter if you want to contribute: https://gitter.im/Activiti/Activiti7https://gitter.im/Activiti/Activiti7

 

If you want to get started with Activiti Cloud visit our Gitbook: https://activiti.gitbooks.io/activiti-7-developers-guide/content/

Last week (4/12/17 - 10/12/17) we spend some time some time refining and improving our REST APIs and we are making some interesting progress on the Modelling/Authoring services which will support our new set of front end tools. We are moving forward with distributed monitoring and logging using the ELK stack so expect a blog post about this soon.  I want to highlight a set a blog posts written by one of our community members @daisuke-yoshimoto: (in Japanese) Activiti Advent Calendar 2017

If you are using or writing about Activiti get in touch, we would like to promote your work!

 

 

 

@willkzhou working on building docker image to test elastic-search on. Need to move elastic code from elastic repo to query repo ASAP for consistency.

@daisuke-yoshimoto was adding ability to activiti-cloud-runtime-bundle-service to start a process instance by process definition key. Also, he is writing Japanese blog posts about Activiti through the project called Activiti Advent Calendar 2017. He will write about Activiti 7 in the last week.

@igdianov worked on a PR for Activiti 5.x regarding signal/catch events and on the GraphQL Notification Service PoC.

@constantin-ciobotaru worked on communication between organization service and the other services, added on org side tests for create, update, get a process model using the stub server generated by spring contracts from process-models service.

@lucianoprea worked on Organization service to support nested Groups and Project structures.

@mteodori fixed issue with Spring HATEOAS link templating and created a request to review the third party dependencies and their versions in the Activiti/Activiti engine.

@ffazzini poc distributed logging elk on kubernetes using elastic public images

@ryandawsonuk updated our release jobs to incorporate some new repositories, updated our build jobs to validate maven versions of Activiti artefacts and upgraded the version of keycloak used in Activiti 7

@erdemedeiros worked with @ryandawsonuk on tasks to prepare the next release, fixed an issue related to the CommandCloseListener ( https://github.com/Activiti/activiti-cloud-runtime-bundle-service/pull/20 ) used to send audit events.

@salaboy worked on organizing the release notes and the roadmap update. We also work hard on planning and making sure that our GitHub issues are updated and correctly organized. Also worked on our cloud connectors example now called “trending-topic-campaigns”: https://github.com/Activiti/activiti-cloud-examples/tree/feature/salaboy-1514-twitter-processor-example/trending-topic-campaigns  

 

 

This week we will collaboratively work on getting our Activiti Cloud Connectors example up and running in kubernetes with the rest of the infrastructure. We are also starting to prepare our presentations for the Alfresco DevCon ‘18 in Lisbon: http://devcon.alfresco.com

 

Ping us in Gitter if you want to contribute: https://gitter.im/Activiti/Activiti7

If you want to get started with Activiti Cloud visit our Gitbook: https://activiti.gitbooks.io/activiti-7-developers-guide/content/

Last week we upgraded to Spring Boot M6 and Spring Cloud M4 to make sure that our November Early Access Release was aligned with SB/SC release train. We are making progress into using more Cloud components such as distributed tracing, logging and monitoring.

 

 

 

@willkzhou Pushed Elasticsearch implementation to separate repo created by Salaboy. Need to test Elasticsearch implementation locally first then test using a Docker image before sending for review to Mauricio et al. Updated Elastic POM files to match current release.

@daisuke-yoshimoto working on adding ability to activiti-cloud-runtime-bundle-service to start a process instance by process definition key. Also, he is writing Japanese blog posts about Activiti through the project called Activiti Advent Calendar 2017. He will write about Activiti 7 in the last week.

@igdianov - Implementing GraphQL Websocket subprotocol in Spring Websocket Message Broker. Fixed signal events throw/catch race conditions in process instance scope (PR #1590) in Activiti engine 5.x

@constantin-ciobotaru more work on adding versions to process models

@lucianoprea more work on the Activiti Cloud Service Organization

@ffazzini logging based on ELK and kubernetes investigation

@ryandawsonuk completed changes to runtime bundle to support security restrictions by process definition and added remote debugging options to all the docker images.

@erdemedeiros upgraded to Spring Boot 2.0.0.M6 and worked on the release 7-201711-EA.

@salaboy worked on enabling the Activiti Cloud Twitter example to work on Kubernetes and checked the released artifacts for correctness. This helped me to improve our Activiti Cloud Connectors started and a second iteration was included in our November Early Access Release. I’ve also checked the Runtime Bundle Security Policies initial implementation Pull Request.

We updated the Activiti & Activiti Cloud Project roadmap where we added more milestones covering the first 3 months of next year into our plans. 

 

 

This week we will upgrade to Spring Boot M7 and Spring Cloud M5 followed by a set of refinements to our services. We are planning to make a short XMas release before the end of the year, and we want to make sure that this release includes a set of improvements in our services such as Logging using the ELK stack or something similar, some fixes in our REST APIs and the Activiti Cloud Twitter example up and running.

Ping us in Gitter if you want to contribute: https://gitter.im/Activiti/Activiti7

If you want to get started with [Activiti Cloud visit our Gitbook]

Almost 5 months of heavy work (and 4 Early Access Releases) we are happy to see that our building blocks are maturing to support more complex use cases. We are committed to improve each service iteratively and for that reason we are planning to have a live demo environments where we can push new versions our services in a continuous deployment fashion.  


We are getting more strict with planning and coordination of different teams and collaborators working on different areas, this pushes us to be more diligent with GitHub Issues, Milestones and Pull Requests.  If you want to report an issue, please do, but also we recommend to get in touch via Gitter to make sure that we can have a conversation about the specifics of the issue so we can size it and plan accordingly. 

Our focus remains the same: 

  • Create RFCs for new Cloud Native components and services.
  • Provide a clear specification (APIs) about our Services (REST/Message Based/Configurations). Make sure that these APIs have well defined responsibilities, single focused and can evolve over time without causing consumers any headaches.
  • Make sure that we use standard tools, patterns and development techniques widely adopted by other Open Source Projects/Communities. Spring, Spring Boot, Spring Cloud, Docker, Kubernetes falls into this category, and we are making sure that we provide the right integration with these frameworks/tools. We are not just using them to say that we "support" Docker or Kubernetes. Activiti Cloud is designed from the ground up to work with such technologies.
  • Engage and mentor partners and community members that wants to participate.
  • Doing it in the Open Source way (Transparency & Meritocracy are a must).

Milestone #4 - November 2017 - Ended -

  • Runtime Bundle & Services Hardening
    • Process Def & Instance Security Policies model
  • Tracing & Monitoring integrations common to all our services
  • Activiti Cloud Connectors Examples
  • JHipster Integration and Examples
  • Process Model Service - Initial Draft
  • Kubernetes & AWS deployments improvements

Milestone #4 was all about improving our building blocks to have Tracing & Monitoring capabilities out of the box. We also added our first iteration of the Runtime Bundle Security Policies mechanism which provides and out of the box granular configuration to do endpoint and content based filtering to enforce security restrictions on top of Process Definitions and Instances. 


We also released our second iteration of the Activiti Cloud Connectors, which are now the default integration point for Service Tasks when you are running Activiti Cloud (aka Runtime Bundles).


We are paying a lot of attention to the JHipster community, due the fact that we share a lot of the infrastructural components and technology stack (Angular Front End). For that reason, we will keep pushing the integration with their components forward. 
As part of this Milestone we aligned with Spring Boot M6 and Spring Cloud Finchley M4 which were released, less than a month ago. 

 

Milestone #5 - December 2017 - In Progress -

  • Extended Tests for distributed deployments to a live environment (24/7)
  • Process Model Service - Initial Implementation to release
  • Project & Groups Service - Initial Implementation to release
  • Elastic Search Query Service - Initial implementation to release
  • Notification Service PoC
  • Distributed Logging, Monitoring and Tracing
    • ELK Stack (or similar)
  • Process Runtime & Connectors Registry
  • Automated Release Tests - Initial approach

December Milestone is going to be a short milestone focused on adding 2 new services related to the Authoring tools (Groups & Projects + Process Model Service) for the platform. Until now, we have been focused on Runtime Services only. 


We want to make sure that our services are stable and for that reason we will spend time setting up an example that we can run 24/7 in an AWS/Kubernetes (Pivotal PKS is in our plans as well, we will appreciate Red Hat Openshift contributions) environment  where we can upgrade each of the blocks individually and go through the same process that you will face when implementing Activiti Cloud in your environments.

By having this example live (and publicly  available) we expect to self-document the process of using Activiti Cloud for all our users. 

Distributed Logging is being added, and we expect to include this in our Activiti Cloud Examples for the next release. We also need to get better at our release process, meaning that automated tests for our released artefacts should be in place if we want to make sure that our releases go smoothly. 


We expect also to release the Elastic Search integration/implementation for the Query Module as well as having an initial PoC for the Notification service using GraphQL Subscription Mechanisms. 

Milestone #6 - January 2018

  • Process Runtime APIs (Definition & Refactoring)
  • Process Runtime Service APIs (review and refactoring)
  • Notification Service initial implementation for release
  • Process Engine Clean ups and refactoring
    • BPMN2 Extensions
    • History Service
    • Job Executor
    • Timers
    • Emails Service


On January we have Alfresco DevCon 18 in Lisbon but our main focus will be clean ups at the framework level. We need to build and set up a set of APIs that will be versioned with clear @Deprecation Strategies to make sure that compatibility is tracked across different releases.  


By the end of January the Notification Service initial implementation should be added to our basic set of building blocks. 


Milestone #7 - February 2018 

  • Application Service (Case Management Constructs)
  • Itsio.io Research and initial integration
  • Kubernetes Service Registry and Service Brokers review
  • Security & SSO review
  • JHipster Microservices Infrastructure Integration


February main focus will be around Application Composition and Coordination, this is where the Service Registry & Distributed Configuration Server becomes really important. Security policies and isolation between applications will require review on our mechanisms to make sure that we are aligned to what the industry is expecting.

Tools like Itsio will be analyzed and adopted to improve how we Release and maintain Activiti Cloud Applications. If JHipster migrates to Spring Boot 2, we will add our building blocks to their infrastructure and integrate with their services. 


Milestone #8 - March 2018 

  • Decision Service initial draft implementation
  • Polyglot MicroProcessRuntime PoC
  • Deployment Service & Pipeline (Design and initial implementation)

 

As always, if you want to participate on the development process of some of these components or examples get in touch. We are willing to collaborate with the open community and mentor people that want to learn about the project.

We look forward all community involvement, from comments, concerns, help with documentation, tests and component implementations. If you are looking into getting started with the Early Access Release we recommend to check our Getting Started Guide in Gitbook: [Getting Started · Activiti 7 & Activiti Cloud Developers Guide]

You can always find us in the Gitter channel: [Activiti/Activiti7 - Gitter]

Because we are a world wide community you can always find someone online to chat with, no matter your timezone

I’m happy to announce that Activiti & Activiti Cloud 7-EA201711 artifacts are out and we encourage people in the community to try them out.

This release was focused on expanding our base building blocks to make sure that they can perform in distributed environments (Docker & Kubernetes).
We added monitoring & tracing capabilities to the platform to make sure that we have visibility when things go wrong.

 

As part of this release we aligned our artifacts with [Spring Boot 2.0.0.M6] and [Spring Cloud Finchley.M4].

The following frameworks are now built in in our services:

  • activiti-cloud-services-tracing: which currently includes integration with Sleuth and Zipkin
  • activiti-cloud-services-monitoring: which delegate to the Spring Actuator the Job to expose metrics for health checks, readyness and liveness probes.

You can find an example of tracing included in our deployment descriptors for Docker Compose & Kubernetes in our [Activiti Cloud Examples Repository](L)

We have also introduced the first iteration of our [Runtime Bundle Security Policies. As described in our RFC document]

 

 

The second iteration of Activiti Cloud Connectors was released as well, introducing bidirectional channels by default, which allows our connectors to talk back to Process Runtimes as well as receive IntegrationRequestEvents and send back IntegrationResultsEvents. You can find the source code here: [activiti-cloud-starter-connector]

You can find our published artifacts in [Maven Central]
and our Docker Images have been tagged so you can use the 7-EA201711 tag for each of our images. You can find more details on
[Activiti in Docker Hub]

[We updated our Roadmap and included new Milestones]

For December Milestone we want to include 2 new services (building blocks) to deal with Authoring aspects of the platform. For that reason we have two RFCs documents:

We also have an RFC document for our Notifications Service which we plan to have a PoC by the end of the month:

Ping us in Gitter if you want to contribute, give feedack, or if you need help reporting an issue: https://gitter.im/Activiti/Activiti7