-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Description
Feature: GitHub Action for Filecoin Pin Uploads
We’d like to create a reusable GitHub Action to streamline uploads to Filecoin via filecoin-pin, supporting static site hosting and other workflows currently handled by Fleek.
Action Name
filecoin-pin-upload-action
Inputs
github_token
- github token for authorization to perform actions against repo, comment, and upload artifacts.privateKey
– Wallet private key to use for funding uploads.minDuration
– Minimum duration to lock funds, used to calculate top-up requirements.minBalance
– Minimum FIL balance to keep deposited (consumed over time vialockupRate
).maxTopUp
– Maximum allowed top-up amount.
Outputs
-
GitHub Comment on PR/issue with:
- Root CID
- Link to preview (TBD, dependent on infra readiness).
-
GitHub Artifacts:
- CAR file uploaded
- Provider info
- Dataset ID
- Root CID
Use Cases
- Trustless gateway publishes the root CID added with filecoin-pin and makes it available for retrieval.
- Replacement for Fleek-style static site hosting workflows.
Example Usage
Consumers should be able to use the Action in their repo with a minimal workflow file like:
name: Upload site to Filecoin
on:
push:
branches: [main]
jobs:
upload:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Build site
run: npm run build
- name: Upload to Filecoin
uses: filecoin-project/filecoin-pin-upload-action@v1
with:
privateKey: ${{ secrets.FILECOIN_WALLET_KEY }}
minDuration: "10d"
minBalance: "5"
maxTopUp: "50"
Dependencies
-
Filcoin Pin - required to support the inputs for this github action
-
IPNI in Curio – required for content indexing.
-
cid.contact – currently broken; Shipyard is building an IPNI filecoin-pin instance in the meantime.
-
SP Indexing CAR Files –
- CARs are just bytes with pieceCID; storage providers need to be able to index CARs locally (CIDs + offsets in DB).
- Possible to use FilBeam without SP indexing if user enables
withCDN
.
-
Coordination with Miro (Space Meridian / FilBeam).
Next Steps
- Define preview link flow (depends on infra readiness).
- Confirm integration approach with IPNI + FilBeam.
- Draft initial Action implementation and test against existing
ipld.io
or FilOz repos.