{
  "name": "Docker registry cleanup workflow",
  "nodes": [
    {
      "id": "6b1865a7-f150-4d2b-b1f7-37c68b2173d6",
      "name": "Fetch Manifest Digest",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        920,
        -300
      ]
    },
    {
      "id": "3c1daca9-3897-4596-b62d-db561f8cb047",
      "name": "Remove Old Tags",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        840,
        -40
      ]
    },
    {
      "id": "6974749e-8c85-4334-a7e7-e964f057ed6f",
      "name": "Retrieve Image Tags",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        400,
        -300
      ]
    },
    {
      "id": "30857c32-508e-4f95-8e26-c9f2fc84e074",
      "name": "List Images",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        40,
        -300
      ]
    },
    {
      "id": "c5965a6a-28e6-4217-a846-a849de153430",
      "name": "Extract Image Names",
      "type": "n8n-nodes-base.code",
      "position": [
        220,
        -300
      ]
    },
    {
      "id": "b13eb6e5-1a16-4992-b0bd-9b228559fecf",
      "name": "Identify Tags to Remove",
      "type": "n8n-nodes-base.code",
      "position": [
        600,
        -40
      ]
    },
    {
      "id": "da15ae49-09ee-4658-86a5-9b0a2180c637",
      "name": "Scheduled Trigger",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        -140,
        -300
      ]
    },
    {
      "id": "bcc347be-5520-46c0-aac9-0b14ddd8b184",
      "name": "Send Notification Email",
      "type": "n8n-nodes-base.emailSend",
      "position": [
        840,
        180
      ]
    },
    {
      "id": "2c3770ef-cb4c-4007-8897-f4eb7ad3b7cf",
      "name": "Split Tags",
      "type": "n8n-nodes-base.splitOut",
      "position": [
        580,
        -300
      ]
    },
    {
      "id": "4fffa947-02cf-4608-acab-8284250cf622",
      "name": "Filter Valid Tags",
      "type": "n8n-nodes-base.filter",
      "position": [
        740,
        -300
      ]
    },
    {
      "id": "c023ba14-d12d-497c-9b30-97db04a34c1b",
      "name": "Fetch Manifest Digest for Blob",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -120,
        -40
      ]
    },
    {
      "id": "f054b91e-abd4-4854-9bfa-e4a2b70f7e2c",
      "name": "Update Fields",
      "type": "n8n-nodes-base.set",
      "position": [
        60,
        -40
      ]
    },
    {
      "id": "54405505-8445-491a-8f5d-232da8c842d2",
      "name": "Group Tags by Image",
      "type": "n8n-nodes-base.code",
      "position": [
        420,
        -40
      ]
    },
    {
      "id": "980aab86-44cd-47d5-b3b7-42cbae26eb09",
      "name": "Sort by Creation Date",
      "type": "n8n-nodes-base.sort",
      "position": [
        240,
        -40
      ]
    },
    {
      "id": "0561efb9-4903-4bec-bc1a-8131e5f5de67",
      "name": "Send Failure Notification Email",
      "type": "n8n-nodes-base.emailSend",
      "position": [
        1120,
        80
      ]
    },
    {
      "id": "eaa28914-351c-4934-ba1c-0d39faf67ef3",
      "name": "Execute Garbage Collection",
      "type": "n8n-nodes-base.ssh",
      "position": [
        1120,
        -100
      ]
    }
  ],
  "connections": {
    "Split Tags": {
      "main": [
        [
          {
            "node": "Filter Valid Tags",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "List Images": {
      "main": [
        [
          {
            "node": "Extract Image Names",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Update Fields": {
      "main": [
        [
          {
            "node": "Sort by Creation Date",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Remove Old Tags": {
      "main": [
        [
          {
            "node": "Execute Garbage Collection",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Send Failure Notification Email",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Filter Valid Tags": {
      "main": [
        [
          {
            "node": "Fetch Manifest Digest",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Scheduled Trigger": {
      "main": [
        [
          {
            "node": "List Images",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Extract Image Names": {
      "main": [
        [
          {
            "node": "Retrieve Image Tags",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Group Tags by Image": {
      "main": [
        [
          {
            "node": "Identify Tags to Remove",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Retrieve Image Tags": {
      "main": [
        [
          {
            "node": "Split Tags",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Fetch Manifest Digest": {
      "main": [
        [
          {
            "node": "Fetch Manifest Digest for Blob",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Sort by Creation Date": {
      "main": [
        [
          {
            "node": "Group Tags by Image",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Identify Tags to Remove": {
      "main": [
        [
          {
            "node": "Remove Old Tags",
            "type": "main",
            "index": 0
          },
          {
            "node": "Send Notification Email",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Fetch Manifest Digest for Blob": {
      "main": [
        [
          {
            "node": "Update Fields",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}