Skip to content

liquid-collective/terraform-provider-fireblocks

Repository files navigation

Terraform Provider Fireblocks

GoDoc Go Report Card Release Codecov License Build Status

Fireblocks Terraform Provider is a plugin for managing resources on Fireblocks using Terraform.


Documentation

Getting Started

Requirements

Installation

This provider is available on Terraform Registry.

To use it this provider, copy and paste the following code into your Terraform configuration.

terraform {
  required_providers {
    fireblocks = {
      source = "liquid-collective/fireblocks"
    }
  }
}

provider "fireblocks" {
  api_key = "<api-key>"
  rsa_private_key = "<api-key>"
  abi_path = "<path-to-abi-json>"
}

Then, run

$ terraform init

Features

Supported Fireblocks API objects

API object Terraform Method Supported Comment
Vault Account Create 🟢
Vault Account Update 🟢 Vault account can be renamed and hidden from console
Vault Account Delete 🟠 Fireblocks API does not allow to archive vault account (while it is possible on the Fireblocks console)
Vault Account Import 🟢
Vault Account Asset Create 🟢 Only for listed assets. Fireblocks API does not allow to create an asset with custom address
Vault Account Asset Update Fireblocks API does not allow to update Vault Account Wallet
Vault Account Asset Delete 🟠 Fireblocks API does not allow to archive vault account asset (while it is possible on the Fireblocks console)
Vault Account Asset Import 🟢
External Wallet Create 🟢
External Wallet Update Fireblocks API does not allow to update External Wallet
External Wallet Delete 🟢
External Wallet Import 🟢
External Wallet Asset Create 🟢
External Wallet Asset Update Fireblocks API does not allow to update External Wallet Asset
External Wallet Asset Delete 🟢
External Wallet Asset Import 🟢
Transaction Create 🟢 Some Fireblocks API parameters are not supported yet
Transaction Udpate Fireblocks API does not allow to update Transaction
Transaction Delete 🟢
Transaction Import 🟢

Ethereum support

This provider allows to load an ABI and craft any Ethereum transaction using terraform configuration to parametrize method and argument.