JFrog Artifactory · Arazzo Workflow

Artifactory Decommission Repository

Version 1.0.0

Read a repository's config, confirm it exists, then delete it.

1 workflow 1 source API 1 provider
View Spec View on GitHub ArtifactsDevOpsCI/CDDocker RegistryMavenPackage ManagementRepositoryArazzoWorkflows

Provider

artifactory

Workflows

decommission-repository
Confirm a repository exists, then delete it.
Fetches a repository's configuration to confirm it exists and record its package type, then deletes the repository.
2 steps inputs: accessToken, repoKey outputs: deleteStatus, packageType
1
getRepository
getRepository
Read the repository configuration to confirm it exists and capture its package type before deletion.
2
deleteRepository
deleteRepository
Delete the repository and its content now that its configuration has been confirmed.

Source API Descriptions

Arazzo Workflow Specification

artifactory-decommission-repository-workflow.yml Raw ↑
arazzo: 1.0.1
info:
  title: Artifactory Decommission Repository
  summary: Read a repository's config, confirm it exists, then delete it.
  description: >-
    A safe teardown flow for JFrog Artifactory. The workflow reads the
    configuration of a repository to confirm it exists and capture its package
    type before deleting the repository and its content. 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: artifactoryRestApi
  url: ../openapi/artifactory-rest-api-openapi.yml
  type: openapi
workflows:
- workflowId: decommission-repository
  summary: Confirm a repository exists, then delete it.
  description: >-
    Fetches a repository's configuration to confirm it exists and record its
    package type, then deletes the repository.
  inputs:
    type: object
    required:
    - accessToken
    - repoKey
    properties:
      accessToken:
        type: string
        description: Bearer access token for authenticating with Artifactory.
      repoKey:
        type: string
        description: The repository key to decommission.
  steps:
  - stepId: getRepository
    description: >-
      Read the repository configuration to confirm it exists and capture its
      package type before deletion.
    operationId: getRepository
    parameters:
    - name: Authorization
      in: header
      value: Bearer $inputs.accessToken
    - name: repoKey
      in: path
      value: $inputs.repoKey
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      packageType: $response.body#/packageType
      rclass: $response.body#/rclass
  - stepId: deleteRepository
    description: >-
      Delete the repository and its content now that its configuration has been
      confirmed.
    operationId: deleteRepository
    parameters:
    - name: Authorization
      in: header
      value: Bearer $inputs.accessToken
    - name: repoKey
      in: path
      value: $inputs.repoKey
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      deleteStatus: $statusCode
  outputs:
    packageType: $steps.getRepository.outputs.packageType
    deleteStatus: $steps.deleteRepository.outputs.deleteStatus