Socket
Socket
Sign inDemoInstall

@akashnetwork/topup-deployment

Package Overview
Dependencies
4
Maintainers
2
Versions
6
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    @akashnetwork/topup-deployment

Ever have an Akash deployment go down because the escrow ran out? Yeah, lets fit that!


Version published
Weekly downloads
7
increased by75%
Maintainers
2
Install size
72.8 MB
Created
Weekly downloads
 

Readme

Source

Akash Top-Up Script for Pipedream

Simple script that updates the escrow for an Akash deployment if it detects the account is running low.

Integrations

Pipedream

To setup with pipedream, create a new JS custom set, and use the following template:

import { topUp } from "@akashnetwork/topup-deployment";

const deploymentKey = 'WEBSITE_KEY'

export default {
  key: "my-topup-component",
  name: "My Topup Component",
  version: "0.0.1",
  type: "action",
  run({ $ }) {
    return topUp(deploymentKey, { dryRun: false });
  }
}

Set the deployment key to some unique value for the specific deployment. The key can be whatever you want, but must be unique for each deployment you're monitoring. For each deployment you'll need to define the following keys in the env settings for your pipeline account.

<KEY>_OWNER_ADDR
<KEY>_DSEQ
<KEY>_TOPUP_THRESHOLD
<KEY>_TOPUP_TARGET
<KEY>_WALLET_DATA
<KEY>_WALLET_KEY

To monitor multiple deployment, you can simply create multiple pipelines, using a unique key for each deployment.

Notifications Only

If you don't need the automation to automatically send funds, and would prefer to handle that yourself; you can set the dryRun flag which will put the script into notification-only mode. This will check if the deployment escrow is below the threshold, but won't attempt to send any funds to top it up.

import { topUp } from "@akashnetwork/topup-deployment";

const deploymentKey = 'WEBSITE_KEY'

export default {
  key: "my-topup-component",
  name: "My Topup Component",
  version: "0.0.1",
  type: "action",
  run({ $ }) {
    return topUp(deploymentKey, { dryRun: true });
  }
}

If you are using this mode, you don't need to define the environment fields specific to sending signed messages. Specifically the following variables are not required.

<KEY>_TOPUP_TARGET
<KEY>_WALLET_DATA
<KEY>_WALLET_KEY

Notification Types

Reporting can be sent to any of the supported methods in Pipedream. The output of the Top Up component will be a report object, with a subject and message field.

Email

After the top up script, click to + button to add a step and select "Send Email" from the pop-up window. In the subject, put {{steps.code.$return_value.subject}} and in the "text" field put {{steps.code.$return_value.message}}.

Slack Notifications

After the top up script, click to + button to add a step and select "Slack" from the pop-up window. In the next screen, choose the appropriate channel type for where you want to send a message.

In the next screen click the slack account field. If you've never setup a slack integration for this work flow, you'll be asked to authorize Pipedream to send message to slack on your behalf.

Select the channel or user the message should be sent to (according to the channel type you selected in the previous step). In the "Text" field, enter {{steps.code.$return_value.message}}.

FAQs

Last updated on 28 Apr 2022

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc