Workers Comparison Guide

Workers Vs User Plugins

πŸ“˜

Note

JFrog Workers is the newer, recommended way to easily extend the JFrog Platform (not just Artifactory) in a Cloud-native way. While plugins are supported, we strongly suggest using JFrog Workers whenever possible.

Both Workers and User Plugins are automated mechanisms triggered by events that you can define.

The following table describes the differences between Workers and User Plugins:

Feature

Workers

User Plugins

Purpose

Extend JFrog Platform functionality via a built-in serverless execution environment. You can create Workers that are triggered when events occur in the JFrog Platform.

Workers offer an alternative to Artifactory user plugins, enabling you to extend the JFrog Platform using cloud-native, scalable, and secure solutions.

Customize and extend Artifactory's features. Essentially, they provide a flexible way to tailor Artifactory to your specific workflows and requirements.

Language

TypeScript

Groovy

Triggering Mechanism

Event-driven/task-based execution

Lifecycle events

Complexity

Generally easier to set up for automation tasks

More complex that requires coding and understanding of APIs

Integration

Seamless integration with CI/CD tools

Interfaces directly with core features

Execution Context

Runs in isolated task context

Can modify behavior at any stage of the lifecycle

Scalability

Scalable based on task needs

Typically runs in the context of artifact management tasks

Error Handling

Built-in error handling and logging

Custom error handling as defined by the plugin

Use Cases

Scheduling tasks, event handling, automation in CI/CD

Implementing custom policies, artifact validation, complex workflows

Access Control

Fine-grained permissions can be applied to workers

Customizable using the plugin logic

Development Effort

Lower development effort - more user-friendly

Higher development effort - more flexible and powerful

Workers Vs Webhooks

Both Workers and Webhook are automated mechanisms triggered by events that you can define.

Workers and webhooks complement each other by providing different ways to connect, launch and automate software applications, and by enabling real-time communications and data exchange between different systems.

The following table describes the differences between Workers and Webhooks:

WorkersWebhooks
Use to customize and control your execution flowsUse to automate auditing or send notifications only
SynchronousAsynchronous
May impact action results and response timeNo impact on user actions
Logic runs on JFrog infrastructure (SaaS)Logic runs on customer infrastructure
Can run a script that can perform calculations and/or send several HTTP requestsCan perform only one HTTP request