External Mappings (Metadata for example; Locations, Products, Retailers, Users & Roles, etc.), Project Discovery, Out-Of-The-Box features, Ready for Launch process, Recommended Practices, Testing, and Project Checklists.
In this document we will describe how to work with workflows and workflow fragments using the Fluent CLI. Then delve into how the tool is tracking the installed workflows, fragments in the workflow log.
`workflowlog`
to manage the workflow and fragment lifecycleWorkflows are the backbone of the Fluent platform as they describe the lifecycle of an entity. Defining subsections or sub-processes within a workflow allows to manage and evolve them independently. Thus fostering loosely coupled and self-contained fragments with no duplication of shared or unchanged behavior of a baseline workflow.
On this page we will look at the different ways of structuring workflows into fragments and then how to optimally merge them into a final workflow that is used to orchestrate entities. Finally how to package both workflows and fragments into a module.
`workflows`
before `workflow-fragments`
.The Fluent Commerce Utility Bundles are a set of libraries designed to accelerate Rule development, reduce boilerplate code, and improve the overall quality and maintainability of implementations. They are the cornerstone of writing maintainable, reusable, and easily upgradeable Rules for the Fluent Commerce platform.
`util-core`
for essential daily tasks, `util-dynamic`
for building runtime queries, and `util-test`
for simplifying testing.`pom.xml`
, ensuring your implementation stays current.Modules are the package structure used by Fluent Commerce to ship preconfigured features and functions. They are designed to be self-describing, isolated, but inter-dependent assets that can work together with other modules, or be extended by custom modules, all while remaining upgradeable.
Here we'll look at the different designations of Modules and describe the Module's Package Structure and Project Structure.
`fluent module install`
only operate on the Module Archive or Module Structure