ipfs-action
IPFS upload GitHub Action. It allows uploading DApps or content to IPFS in a GitHub pipeline.
Inputs
Parameter | Required | Description |
---|---|---|
path |
Yes | Directory's path to upload. |
pin |
No | Pin object when adding. (Default true ) |
pinName |
No | Human name for pin. |
service |
No | Type of target service to upload. Supported services [ipfs , pinata , infura , filebase ]. (Default ipfs ) |
timeout |
No | Request timeout. (Default 60000 (1 minute)) |
verbose |
No | Level of verbosity [false - quiet, true - verbose]. (Default false ) |
host |
No | [ipfs] IPFS host. Default ipfs.komputing.org |
port |
No | [ipfs] IPFS host's port. (Default 443 ) |
protocol |
No | [ipfs] IPFS host's protocol. (Default https ) |
headers |
No | [ipfs] IPFS headers as json object. (Default {} ) |
key |
No | [ipfs] IPNS key name. IPNS key will be published when the key parameter is provided. The key will be created if it does not exist. (Default undefined ) |
pinataKey |
No | [pinata] API Key. Required for pinata service. |
pinataSecret |
No | [pinata] Secret Key. Required for pinata service. |
pinataPinName |
No | [pinata] Human name for pin. Obsolete, use pinName instead. |
filebaseBucket |
No | [filebase] Bucket to store pin in. Required for filebase service. |
filebaseKey |
No | [filebase] S3 Access Key. Required for filebase service. |
filebaseSecret |
No | [filebase] S3 Secret Key. Required for filebase service. |
infuraProjectId |
No | [infura] Project ID. Required for infura service. |
infuraProjectSecret |
No | [infura] Project Secret. Required for infura service. |
Outputs
hash
- IPFS CIDcid
- IPFS CIDipfs
- IPFS CIDipns
- IPNS CID if applicable
Documentation
Take a look DApps Delivery Guide
Examples
Pinata starter
uses: aquiladev/ipfs-action@master
with:
path: ./build
service: pinata
pinataKey: ${{ secrets.PINATA_KEY }}
pinataSecret: ${{ secrets.PINATA_SECRET }}
Infura starter
uses: aquiladev/ipfs-action@master
with:
path: ./build
service: infura
infuraProjectId: ${{ secrets.INFURA_PROJECT_ID }}
infuraProjectSecret: ${{ secrets.INFURA_PROJECT_SECRET }}
Filebase starter
uses: aquiladev/ipfs-action@v1
with:
path: ./build
service: filebase
pinName: 'ipfs-action'
filebaseBucket: ${{ secrets.FILEBASE_BUCKET }}
filebaseKey: ${{ secrets.FILEBASE_KEY }}
filebaseSecret: ${{ secrets.FILEBASE_SECRET }}