Chef · Arazzo Workflow

Chef Decommission a Node

Version 1.0.0

Capture a node's final state, delete the node object, and confirm it left the inventory.

1 workflow 1 source API 1 provider
View Spec View on GitHub Application DeliveryAutomationComplianceConfiguration ManagementDevOpsDevSecOpsHabitatInfrastructure as CodeInSpecArazzoWorkflows

Provider

chef

Workflows

decommission-node
Archive and remove a retired node from the Chef Infra Server.
Reads the node's final state for the archive record, deletes it, and relists nodes to confirm the object is gone.
3 steps inputs: nodeName outputs: archivedEnvironment, archivedRunList, deletedNode, remainingNodes
1
captureFinalState
Read the node one last time so its environment, run list, and attributes can be archived before the object is destroyed.
2
deleteNodeObject
Delete the node object from the organization. The Infra Server returns the deleted node document in the response body.
3
confirmRemoval
Relist the organization's nodes and assert the retired name is no longer present, closing the loop on the decommission.

Source API Descriptions

Arazzo Workflow Specification

Raw ↑
arazzo: 1.0.1
info:
  title: Chef Decommission a Node
  summary: Capture a node's final state, delete the node object, and confirm it left the inventory.
  description: >-
    The offboarding half of node lifecycle management, and the one most often
    skipped. When a machine is retired its node object lingers on the Infra
    Server, keeping stale inventory and a valid client identity in play. This
    workflow reads the node one last time so its run list and environment can be
    archived, deletes the node object, and then relists the organization's nodes
    to prove the removal took. Note that this removes the node object only; the
    matching client identity is listed separately and is not deleted here. Each
    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: nodesApi
  url: ../openapi/chef-nodes-api-openapi.yml
  type: openapi
workflows:
- workflowId: decommission-node
  summary: Archive and remove a retired node from the Chef Infra Server.
  description: >-
    Reads the node's final state for the archive record, deletes it, and relists
    nodes to confirm the object is gone.
  inputs:
    type: object
    required:
    - nodeName
    properties:
      nodeName:
        type: string
        description: The node being retired (e.g. web-01.example.com).
  steps:
  - stepId: captureFinalState
    description: >-
      Read the node one last time so its environment, run list, and attributes
      can be archived before the object is destroyed.
    operationId: getNode
    parameters:
    - name: nodeName
      in: path
      value: $inputs.nodeName
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      finalRunList: $response.body#/run_list
      finalEnvironment: $response.body#/chef_environment
      finalAttributes: $response.body#/normal
  - stepId: deleteNodeObject
    description: >-
      Delete the node object from the organization. The Infra Server returns the
      deleted node document in the response body.
    operationId: deleteNode
    parameters:
    - name: nodeName
      in: path
      value: $inputs.nodeName
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      deletedNode: $response.body#/name
  - stepId: confirmRemoval
    description: >-
      Relist the organization's nodes and assert the retired name is no longer
      present, closing the loop on the decommission.
    operationId: listNodes
    successCriteria:
    - condition: $statusCode == 200
    - context: $response.body
      condition: $[?(@property == '$inputs.nodeName')] empty true
      type: jsonpath
    outputs:
      remainingNodes: $response.body
  outputs:
    deletedNode: $steps.deleteNodeObject.outputs.deletedNode
    archivedRunList: $steps.captureFinalState.outputs.finalRunList
    archivedEnvironment: $steps.captureFinalState.outputs.finalEnvironment
    remainingNodes: $steps.confirmRemoval.outputs.remainingNodes

Work with this as data

Every workflow here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for arazzo workflows

4 MCP tools reach this
  • find_arazzoBrowse and filter every workflow in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This workflow
curl "https://apis.io/api/v1/arazzo/chef-node-decommission-workflow"
All arazzo workflows
curl "https://apis.io/api/v1/arazzo?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.