This repository contains tools which help working with IPFS during the ORCESTRA field campaign.
The file pinlist.yaml contains a list of Pin objects according to the IPFS Pinning Serices API Spec:
The pinlist contains descriptions of CIDs which are relevant for the field campaign an should be kept. The pinlist can an will be used by pinning services to pin those CIDs.
The only required attribute is the cid, however, the other attributes are recommended. name and meta help identifying the Pin object and origins can speed up retrieval.
It may be necessary to pin only subsets of all CIDs depending on available storage space and / or network bandwidth. In order to facilitate this selection, it is recommended to provide a list of tags within the Pin object metadata, e.g.:
cid: bafy...
name: Dropsonde data v1
meta:
tags: [dropsonde]
Currently known tags are:
bahamas: For BAHAMAS datacatalog: For catalogs: they are important and should be quickly retrievable for everyone, but usually aren't very big in size.dropsonde: For dropsonde dataradiosonde: For radiosonde data
A very simple way to pin everything contained in the pinlist would be using yq:
cat pinlist.yaml | yq .[].cid | xargs ipfs pin add -rA simple way to e.g pin only dropsonde data could be:
cat pinlist.yaml | yq '.[] | select(.meta.tags.[] == "dropsonde").cid' | xargs ipfs pin add -r