cline / sequencer
Sequential migration and operation orchestration for Laravel
Installs: 3
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 0
Forks: 0
Open Issues: 0
pkg:composer/cline/sequencer
Requires
- php: ^8.4.0
Requires (Dev)
- cline/php-cs-fixer: ^1.2.1
- driftingly/rector-laravel: ^2.1.3
- ergebnis/composer-normalize: ^2.49@dev
- laravel/pint: ^1.25.1
- laravel/pulse: ^1.4.3
- laravel/telescope: ^5.15
- orchestra/testbench: ^10.7
- pestphp/pest: ^3.8.4
- pestphp/pest-plugin-drift: ^3.0
- pestphp/pest-plugin-laravel: ^3.2
- pestphp/pest-plugin-type-coverage: ^3.6.1
- phpstan/phpstan: ^2.1.32
- rector/rector: ^2.2.8
- symfony/var-dumper: ^7.3.5
README
A powerful Laravel package that orchestrates sequential execution of migrations and operations. Ensures database changes and business logic run in chronological order during deployments, preventing conflicts and maintaining data integrity.
Requirements
Requires PHP 8.4+ and Laravel 11+
Installation
composer require cline/sequencer
Quick Start
Create an operation, implement the handle() method, and execute sequentially with php artisan sequencer:process. See Getting Started for detailed examples.
Documentation
- Getting Started - Installation, configuration, and first operation
- Basic Usage - Core operations and sequential execution
- Monitoring & Status - Check pending, completed, and failed operations
- Orchestration Strategies - Sequential, batch, transactional, dependency-based, and scheduled execution
- Advanced Operations - Retries, timeouts, batching, chaining, middleware, unique operations, encryption, tags, lifecycle hooks
- Programmatic Usage - Facade API, conditional execution, status checks, error handling
- Events - Operation lifecycle events for logging, monitoring, and custom workflows
- Rollback Support - Automatic rollback on failures
- Dependencies - Explicit operation ordering
- Conditional Execution - Runtime execution conditions
- Skip Operations - Skip operations at runtime with SkipOperationException
- Advanced Usage - Transactions, async operations, observability
Key Features
- ✅ Orchestration Strategies - Sequential, batch, transactional, dependency-based, scheduled execution
- ✅ Flexible Execution - Switch strategies via config or fluent API
- ✅ Dependency Resolution - Explicit operation dependencies with topological sorting
- ✅ Conditional Execution - Skip operations based on runtime conditions
- ✅ Async Operations - Queue operations for background processing
- ✅ Retry Mechanisms - Automatic retries with configurable backoff
- ✅ Rollback Support - Automatic rollback of executed operations when failures occur
- ✅ Encryption - Automatic payload encryption for sensitive operations
- ✅ Lifecycle Hooks - Before/after/failed callbacks for operation execution
- ✅ Monitoring - Pulse/Telescope integration with lifecycle events
- ✅ Testing Helpers - Comprehensive testing support
- ✅ Atomic Locking - Prevent concurrent execution in multi-server environments
Change log
Please see CHANGELOG for more information on what has changed recently.
Contributing
Please see CONTRIBUTING and CODE_OF_CONDUCT for details.
Security
If you discover any security related issues, please use the GitHub security reporting form rather than the issue queue.
Credits
License
The MIT License. Please see License File for more information.