Tape Pool supplyDestination from json and supply pool

What is the meaning of supplyDestination as seen in command cta-admin --json tp ls |jq?

With the same command json output what is the difference between supply and supplySource?

Hi Jeff,
The meaning of SupplyDestination of a tape pool is that the tape pool acts as supplier for the ones listed in the SupplyDestination field.

So for example if we set ctasystest_B as the supplier of ctasystest_C we will get: cta-admin tp ch --name ctasystest_C --supply ctasystest_B

 {
    "name": "ctasystest_B",
    "vo": "vo",
    "numTapes": "0",
    "numPartialTapes": "5",
    "numPhysicalFiles": "0",
    "capacityBytes": "0",
    "dataBytes": "0",
    "encrypt": false,
    "supply": "",
    "created": {
      "username": "ctaadmin1",
      "host": "cta-frontend-0",
      "time": "1749820934"
    },
    "modified": {
      "username": "ctaadmin1",
      "host": "cta-frontend-0",
      "time": "1749820934"
    },
    "comment": "ctasystest_B",
    "supplySource": [],
    "supplyDestination": [
      "ctasystest_C"
    ],
    "encryptionKeyName": "",
    "instanceName": "dev"
  },
  {
    "name": "ctasystest_C",
    "vo": "vo",
    "numTapes": "0",
    "numPartialTapes": "5",
    "numPhysicalFiles": "0",
    "capacityBytes": "0",
    "dataBytes": "0",
    "encrypt": false,
    "supply": "ctasystest_B",
    "created": {
      "username": "ctaadmin1",
      "host": "cta-frontend-0",
      "time": "1749820934"
    },
    "modified": {
      "username": "ctaadmin1",
      "host": "cta-frontend-0",
      "time": "1749821111"
    },
    "comment": "ctasystest_C",
    "supplySource": [
      "ctasystest_B"
    ],
    "supplyDestination": [],
    "encryptionKeyName": "",
    "instanceName": "dev"
  }

There is actually no difference in terms of contents between the fields “supply” and “supplySource”, logically they refer to the same thing, which tapepools act as suppliers for the present one, but their format is different.
supplySource is a newer field added in this merge request, and its contents are a list, making it easier to parse with json.
For compatibility reasons we have kept the old field supply, which returns the list of supplier tapepools concatenated into a string.

I hope this helps, let me know if anything needs further clarification!

Regards,
Konstantina