Skip to content

Tools helping to work with IPFS during ORCESTRA

Notifications You must be signed in to change notification settings

hgloeckner/ipfs_tools

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

69 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ORCESTRA IPFS Tools

This repository contains tools which help working with IPFS during the ORCESTRA field campaign.

Pinlist

The file pinlist.yaml contains a list of Pin objects according to the IPFS Pinning Serices API Spec:

Pin Object

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 data
  • catalog: For catalogs: they are important and should be quickly retrievable for everyone, but usually aren't very big in size.
  • dropsonde: For dropsonde data
  • radiosonde: For radiosonde data

Pinning the list

A very simple way to pin everything contained in the pinlist would be using yq:

cat pinlist.yaml | yq .[].cid | xargs ipfs pin add -r

A 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

About

Tools helping to work with IPFS during ORCESTRA

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%