CoderFunda
  • Home
  • About us
    • Contact Us
    • Disclaimer
    • Privacy Policy
    • About us
  • Home
  • Php
  • HTML
  • CSS
  • JavaScript
    • JavaScript
    • Jquery
    • JqueryUI
    • Stock
  • SQL
  • Vue.Js
  • Python
  • Wordpress
  • C++
    • C++
    • C
  • Laravel
    • Laravel
      • Overview
      • Namespaces
      • Middleware
      • Routing
      • Configuration
      • Application Structure
      • Installation
    • Overview
  • DBMS
    • DBMS
      • PL/SQL
      • SQLite
      • MongoDB
      • Cassandra
      • MySQL
      • Oracle
      • CouchDB
      • Neo4j
      • DB2
      • Quiz
    • Overview
  • Entertainment
    • TV Series Update
    • Movie Review
    • Movie Review
  • More
    • Vue. Js
    • Php Question
    • Php Interview Question
    • Laravel Interview Question
    • SQL Interview Question
    • IAS Interview Question
    • PCS Interview Question
    • Technology
    • Other

19 April, 2022

Manage Job Workflows with Venture

 Programing Coderfunda     April 19, 2022     Laravel, Packages     No comments   

 Venture is a package to help you build and manage complex, asynchronous workflows in your Laravel applications. Here’s an example from the documentation which illustrates a workflow defined when publishing a podcast:

1Workflow::new('Publish new podcast')
2 ->addJob(new ProcessPodcast($podcast))
3 ->addJob(new OptimizePodcast($podcast))
4 ->addJob(new PublishPodcastOnTransistorFM($podcast), [
5 ProcessPodcast::class,
6 OptimizePodcast::class
7 ]);

In the above example, publishing the podcast depends on the processing and optimization of job completion.

At the heart of this package is the WorkflowStep trait that you’ll need to add to jobs to use them within a workflow. This trait enables Venture to track a job’s dependencies and other dependent jobs.

Another neat feature is performing an action after a workflow has finished:

1Workflow::new('Example Workflow')
2 ->addJob(new ExampleJob())
3 ->then(function (Workflow $workflow) {
4 // This will get called once every job in the workflow has finished.
5 // It gets passed the workflow instance.
6 })
7 ->start();
8 
9// You can also use an invokable class with the `then()` method.
10class SendNotification
11{
12 public function __invokable(Workflow $workflow)
13 {
14 // Do something with the workflow...
15 }
16}
17 
18Workflow::new('Example Workflow')
19 ->addJob(new ExampleJob())
20 ->then(new SendNotification())
21 ->start();

Venture also helps you deal with failures in a workflow, failed steps, and things like canceling the workflow. You can learn more about this package, get full installation instructions, and view the source code on GitHub at ksassnowski/venture.

  • Share This:  
  •  Facebook
  •  Twitter
  •  Google+
  •  Stumble
  •  Digg
Email ThisBlogThis!Share to XShare to Facebook

Related Posts:

  • Media Upload Component for Vue 3 Media Upload Component for Vue 3The media-upload package is a Vue 3 component for multi-image upload with preview. Media Upload suppor… Read More
  • Alpine.js Focus Plugin Alpine.js Focus PluginWhat's neat about this plugin is that it allows you to trap focus within an element via the x-trap directive. He… Read More
  • Migrator is a GUI Migration Manager for Laravel Migrator is a GUI Migration Manager for LaravelMigrator is a GUI migration manager for Laravel in which you can create, migrate, delete, an… Read More
  • OpenAI SDK for PHPOpenAI SDK for PHPThe orhanerday/open-ai package is a PHP SDK for accessing the OpenAI GPT-3 API. It supports the complete, search, answer, … Read More
  • Generate Intervals of Time With the Laravel Hours HelperGenerate Intervals of Time With the Laravel Hours HelperWith the Laravel Hours Helper package, you can create a collection of dates and/of t… Read More
Newer Post Older Post Home

0 comments:

Post a Comment

Thanks

Meta

Popular Posts

  • Vue3 :style backgroundImage not working with require
    I'm trying to migrate a Vue 2 project to Vue 3. In Vue 2 I used v-bind style as follow: In Vue 3 this doesn't work... I tried a...
  • SQL ORDER BY Keyword
      The SQL ORDER BY Keyword The ORDER BY keyword is used to sort the result-set in ascending or descending order. The ORDER BY keyword sorts ...
  • failed to load storage framework cache laravel excel
       User the export file and controller function  ..         libxml_use_internal_errors ( true ); ..Good To Go   public function view () : ...
  • Features CodeIgniter
    Features CodeIgniter There is a great demand for the CodeIgniter framework in PHP developers because of its features and multiple advan...
  • Enabling authentication in swagger
    I created a asp.net core empty project running on .net6. I am coming across an issue when I am trying to enable authentication in swagger. S...

Categories

  • Ajax (26)
  • Bootstrap (30)
  • DBMS (42)
  • HTML (12)
  • HTML5 (45)
  • JavaScript (10)
  • Jquery (34)
  • Jquery UI (2)
  • JqueryUI (32)
  • Laravel (1017)
  • Laravel Tutorials (23)
  • Laravel-Question (6)
  • Magento (9)
  • Magento 2 (95)
  • MariaDB (1)
  • MySql Tutorial (2)
  • PHP-Interview-Questions (3)
  • Php Question (13)
  • Python (36)
  • RDBMS (13)
  • SQL Tutorial (79)
  • Vue.js Tutorial (68)
  • Wordpress (150)
  • Wordpress Theme (3)
  • codeigniter (108)
  • oops (4)
  • php (853)

Social Media Links

  • Follow on Twitter
  • Like on Facebook
  • Subscribe on Youtube
  • Follow on Instagram

Pages

  • Home
  • Contact Us
  • Privacy Policy
  • About us

Blog Archive

  • September (100)
  • August (50)
  • July (56)
  • June (46)
  • May (59)
  • April (50)
  • March (60)
  • February (42)
  • January (53)
  • December (58)
  • November (61)
  • October (39)
  • September (36)
  • August (36)
  • July (34)
  • June (34)
  • May (36)
  • April (29)
  • March (82)
  • February (1)
  • January (8)
  • December (14)
  • November (41)
  • October (13)
  • September (5)
  • August (48)
  • July (9)
  • June (6)
  • May (119)
  • April (259)
  • March (122)
  • February (368)
  • January (33)
  • October (2)
  • July (11)
  • June (29)
  • May (25)
  • April (168)
  • March (93)
  • February (60)
  • January (28)
  • December (195)
  • November (24)
  • October (40)
  • September (55)
  • August (6)
  • July (48)
  • May (2)
  • January (2)
  • July (6)
  • June (6)
  • February (17)
  • January (69)
  • December (122)
  • November (56)
  • October (92)
  • September (76)
  • August (6)

  • Failed to install 'cordova-plugin-firebase': CordovaError: Uh oh - 9/21/2024
  • pyspark XPath Query Returns Lists Omitting Missing Values Instead of Including None - 9/20/2024
  • SQL REPL from within Python/Sqlalchemy/Psychopg2 - 9/20/2024
  • MySql Explain with Tobias Petry - 9/20/2024
  • How to combine information from different devices into one common abstract virtual disk? [closed] - 9/20/2024

Laravel News

  • Simplify API Responses with Fluent Methods - 6/6/2025
  • Fathom Analytics Events for Laravel Livewire - 6/6/2025
  • Replace String Prefixes Precisely with Laravel's replaceStart Method - 5/31/2025
  • Clean Up Your Code with the whenHas Method - 6/5/2025
  • Laravel OpenRouter - 6/4/2025

Copyright © 2025 CoderFunda | Powered by Blogger
Design by Coderfunda | Blogger Theme by Coderfunda | Distributed By Coderfunda