Skip to content

Textile Buckets

Actions
Create, update, destroy folders on IPFS, IPNS and HTTP
v25
Latest
Star (10)

Push to IPFS, IPNS, Textile Buckets in CI

Use buckets to create, update or remove a directory on a remote IPFS node of the Textile Hub.

Buckets provide you easy access to multiple protocols for sharing or moving data. When you create a Bucket on the Textile Hub, you will get an IPFS hash of the latest content, an IPNS address that will update with each change, and a unique subdomain to share your latest updates.

Example output

Usage

Add a step to your github actions.

name: "Textile Bucket - Deploy"
on:
  push:
    branches:
      - master
  pull_request:
    branches:
      - master

jobs:
  bucket_push:
    runs-on: ubuntu-latest
    name: push textile bucket
    steps:
    - name: push action
      id: bucket
      uses: textileio/github-action-buckets@master
      with:
        key: ${{ secrets.TEXTILE_ACCOUNT_KEY }}
        secret: ${{ secrets.TEXTILE_ACCOUNT_SECRET }}
        bucket: '<BUCKET_NAME>'
        thread: '<THREAD_ID>'
        path: '<DIRECTORY_PATH>'
        pattern: '<FILE_PATTERN>'
        remove: '<REMOVE_BUCKET?>'
    # Use the output from the `hello` step
    - run: echo "bucket key: ${{ steps.bucket.outputs.key }}"
    - run: echo "ipfs: ${{ steps.bucket.outputs.ipfs }}"
    - run: echo "ipfs link: ${{ steps.bucket.outputs.ipfsUrl }}"
    - run: echo "ipns: ${{ steps.bucket.outputs.ipns }}"
    - run: echo "ipns link: ${{ steps.bucket.outputs.ipnsUrl }}"
    - run: echo "hub: ${{ steps.bucket.outputs.hub }}"
    - run: echo "www: ${{ steps.bucket.outputs.www }}"

Parameters

  • key: a textile hub account key for you or your organization (docs).
  • secret: a textile hub account key for you or your organization (docs).
  • thread: thread id for thread holding bucket. (docs see output of bucket init or cat .textile/config.yml).
  • bucket: remote bucket path name. (docs name you set when you created the bucket).
  • path: (optional) the path within the repo that you want pushed to your bucket (default: '.').
  • pattern: (optional) file search filter to limit which files you push to the remote bucket (default: '**/*').
  • remove: (optional) set to 'true' if you wish to remove the bucket not update/create it. this cannot be undone.

You must use an existing ThreadID (thread) to push your Bucket. If you use an existing Bucket name (bucket) it will update that bucket, if you use a new name it will create a new bucket in the thread.

To create a Thread for your Bucket, first setup a bucket locally.

// create your account
hub init
// login
hub login
// go to your project rep
cd project
// init a bucket
// you will select a bucket name and thread. copy the thread id (and optionally the same name) to use as parameters here.
hub bucket init

You can also keep ThreadID private by supplying it from your SECRETs.

For more information on using Textile Buckets, see the documentation.

Textile Buckets is not certified by GitHub. It is provided by a third-party and is governed by separate terms of service, privacy policy, and support documentation.

About

Create, update, destroy folders on IPFS, IPNS and HTTP
v25
Latest

Textile Buckets is not certified by GitHub. It is provided by a third-party and is governed by separate terms of service, privacy policy, and support documentation.