Worker to publish SLSA provenance statements

Why are we doing this work

As a part of Phase 2: Generate provenance statement in control plane , we need a Sidekiq worker that performs two actions:

  1. Generate a SLSA provenance statement using #546150 (closed).
  2. Upload that statement as a job artifact using #546153 (closed).

The worker delegates to a service class (created in previous MR).

The worker and service take a job as an input.

Suggested names for the worker:

  • Ci::Slsa::PublishStatementWorker

More information:

  • Documentation page on services.
  • Documentation page on workers.

Relevant links

See &17702 (comment 2564759663)

Non-functional requirements

  • Documentation: Covered by #426764 (closed).
  • Feature flag: Not a behavior change.
  • Performance: add a stackprof benchmark on the MR and analyze its output https://docs.gitlab.com/development/performance/#profiling-with-stackprof
  • Testing: See verification steps below.

Implementation plan

  • Implement worker and service class.

Verification steps

On GDK, enqueue the Sidekiq job and check the provenance statement that's been publihsed.

Edited Jul 01, 2025 by Sam Roque-Worcel
Assignee Loading
Time tracking Loading