JFrog · Arazzo Workflow

JFrog Attach Build Evidence

Version 1.0.0

Create signed evidence for a build then verify its signature.

1 workflow 1 source API 1 provider
View Spec View on GitHub ArtifactoryCI/CDContainer RegistryDevOpsMLOpsPackage ManagementSecuritySoftware Supply ChainArazzoWorkflows

Provider

jfrog

Workflows

attach-build-evidence
Attach evidence to a build and verify it.
Creates evidence for a build subject with a predicate and key alias, then verifies the resulting evidence record's signature.
2 steps inputs: buildName, buildNumber, keyAlias, predicate, predicateType outputs: evidenceId, verificationResult
1
createEvidence
createEvidence
Create a signed evidence record attached to the build subject using the supplied predicate and signing key alias.
2
verifyEvidence
verifyEvidence
Verify the cryptographic signature of the newly created evidence record.

Source API Descriptions

Arazzo Workflow Specification

jfrog-attach-build-evidence-workflow.yml Raw ↑
arazzo: 1.0.1
info:
  title: JFrog Attach Build Evidence
  summary: Create signed evidence for a build then verify its signature.
  description: >-
    Software supply-chain attestation with the JFrog Evidence service. The
    workflow creates a signed evidence record attached to a build subject, then
    verifies the evidence's cryptographic signature against registered keys.
    Every step spells out its request inline so the flow can be read and executed
    without opening the underlying OpenAPI description.
  version: 1.0.0
sourceDescriptions:
- name: evidenceApi
  url: ../openapi/jfrog-evidence-openapi.yml
  type: openapi
workflows:
- workflowId: attach-build-evidence
  summary: Attach evidence to a build and verify it.
  description: >-
    Creates evidence for a build subject with a predicate and key alias, then
    verifies the resulting evidence record's signature.
  inputs:
    type: object
    required:
    - buildName
    - buildNumber
    - predicateType
    - keyAlias
    properties:
      buildName:
        type: string
        description: The build name to attach evidence to.
      buildNumber:
        type: string
        description: The build number to attach evidence to.
      predicateType:
        type: string
        description: The URI identifying the predicate type.
      keyAlias:
        type: string
        description: The alias of the registered signing key.
      predicate:
        type: object
        description: The evidence predicate content.
  steps:
  - stepId: createEvidence
    description: >-
      Create a signed evidence record attached to the build subject using the
      supplied predicate and signing key alias.
    operationId: createEvidence
    requestBody:
      contentType: application/json
      payload:
        subject_type: build
        subject:
          build_name: $inputs.buildName
          build_number: $inputs.buildNumber
        predicate: $inputs.predicate
        predicate_type: $inputs.predicateType
        key_alias: $inputs.keyAlias
    successCriteria:
    - condition: $statusCode == 201
    outputs:
      evidenceId: $response.body#/id
  - stepId: verifyEvidence
    description: >-
      Verify the cryptographic signature of the newly created evidence record.
    operationId: verifyEvidence
    parameters:
    - name: evidenceId
      in: path
      value: $steps.createEvidence.outputs.evidenceId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      verificationResult: $response.body
  outputs:
    evidenceId: $steps.createEvidence.outputs.evidenceId
    verificationResult: $steps.verifyEvidence.outputs.verificationResult