flowpack/prunner

Integration of prunner (an embedded pipeline task runner) in Neos

Installs: 49

Dependents: 0

Suggesters: 0

Security: 0

Stars: 0

Watchers: 11

Forks: 0

Type:neos-package

0.2.3 2021-10-13 13:19 UTC

This package is auto-updated.

Last update: 2021-11-13 13:32:38 UTC


README

An embeddable task / pipeline runner for Neos and Flow.

For a full introduction, see the README of the prunner repo.

Components

prunner

A single process, written in go, that provides the REST API, pipeline runner and persistence. It needs to be started in the background for integration into other applications.

prunner-ui

A minimalistic React UI to start and view pipelines, jobs and task details.

Flowpack.Prunner (this repository)

A Neos/Flow PHP package providing a backend module for the current pipeline state, and a PHP API.

Installation

# add the package
composer require flowpack/prunner

# patch main composer.json to add Flowpack\Prunner\Composer\InstallerScripts::postUpdateAndInstall to post-install-cmd and post-update-cmd 
./flow prunner:setupProject

# run composer install again, to download prunner.
composer install

# prunner is now installed in your project root, as "prunner/prunner"

Now, start up prunner via the following command:

prunner/prunner --path Packages --data Data/Persistent/prunner

This will parse all packages for pipelines.yml files.

Overriding the Prunner Version

By default, the prunner version configured in Flowpack\Prunner\Composer\InstallerScripts::DEFAULT_VERSION_TO_INSTALL will be downloaded. However, it is possible to override this via extra.prunner-version in the root composer.json:

{
  "extra": {
    "prunner-version": "0.4.0"
  }
}

Building the UI package

In prunner-ui, run yarn build for the production build.

Then, copy the index.js and index.css files to this package:

export PRUNNERUI=/path/to/prunner-ui
cp $PRUNNERUI/build/dist/index.js* Resources/Public/prunner-ui/
cp $PRUNNERUI/build/index.css Resources/Public/prunner-ui/index.css 

License

MIT - see LICENSE.