diff --git a/stack-orchestrator/compose/docker-compose-laconic-shopify-faucet.yml b/stack-orchestrator/compose/docker-compose-laconic-shopify-faucet.yml new file mode 100644 index 0000000..8aea38d --- /dev/null +++ b/stack-orchestrator/compose/docker-compose-laconic-shopify-faucet.yml @@ -0,0 +1,27 @@ +services: + faucet: + restart: unless-stopped + image: cerc/laconic-shopify-faucet:local + command: ["bash", "-c", "./start-faucet.sh"] + environment: + CERC_SCRIPT_DEBUG: ${CERC_SCRIPT_DEBUG} + CERC_LACONICD_RPC_ENDPOINT: ${CERC_LACONICD_RPC_ENDPOINT:-http://laconicd:26657} + CERC_FAUCET_KEY: ${CERC_FAUCET_KEY} + CERC_LACONICD_CHAIN_ID: ${CERC_LACONICD_CHAIN_ID:-laconic_9000-1} + volumes: + - faucet-data:/app/db + - ../config/laconic-shopify-faucet/start-faucet.sh:/app/start-faucet.sh + - ../config/laconic-shopify-faucet/config-template.toml:/app/environments/config-template.toml + ports: + - 3000 + healthcheck: + test: ["CMD", "nc", "-vz", "127.0.0.1", "3000"] + interval: 10s + timeout: 5s + retries: 10 + start_period: 5s + extra_hosts: + - "host.docker.internal:host-gateway" + +volumes: + faucet-data: diff --git a/stack-orchestrator/config/laconic-shopify-faucet/config-template.toml b/stack-orchestrator/config/laconic-shopify-faucet/config-template.toml new file mode 100644 index 0000000..1a4e570 --- /dev/null +++ b/stack-orchestrator/config/laconic-shopify-faucet/config-template.toml @@ -0,0 +1,12 @@ +[upstream] + rpcEndpoint = "REPLACE_WITH_CERC_LACONICD_RPC_ENDPOINT" + chainId = "laconic_9000-1" + denom = "alnt" + prefix = "laconic" + gasPrice = "1" + faucetKey = "REPLACE_WITH_CERC_FAUCET_KEY" + +[server] + port=3000 + enableRateLimit=false + dbDir = "db" diff --git a/stack-orchestrator/config/laconic-shopify-faucet/start-faucet.sh b/stack-orchestrator/config/laconic-shopify-faucet/start-faucet.sh new file mode 100755 index 0000000..cdf2d02 --- /dev/null +++ b/stack-orchestrator/config/laconic-shopify-faucet/start-faucet.sh @@ -0,0 +1,26 @@ +#!/bin/bash + +set -e +set -u +if [ -n "$CERC_SCRIPT_DEBUG" ]; then + set -x +fi + +config_template=$(cat environments/config-template.toml) +target_config="./environments/local.toml" + +# Check if faucet key is set +if [ -z "${CERC_FAUCET_KEY:-}" ]; then + echo "Error: CERC_FAUCET_KEY is not set. Exiting..." + exit 1 +fi + +echo "Using laconicd RPC endpoint: $CERC_LACONICD_RPC_ENDPOINT" + +FAUCET_CONFIG=$(echo "$config_template" | \ + sed -E "s|REPLACE_WITH_CERC_FAUCET_KEY|${CERC_FAUCET_KEY}|g; \ + s|REPLACE_WITH_CERC_LACONICD_RPC_ENDPOINT|${CERC_LACONICD_RPC_ENDPOINT}|g; ") + +echo "$FAUCET_CONFIG" > $target_config +echo "Starting faucet..." +node dist/index.js diff --git a/stack-orchestrator/container-build/cerc-laconic-shopify-faucet/build.sh b/stack-orchestrator/container-build/cerc-laconic-shopify-faucet/build.sh new file mode 100755 index 0000000..07186a4 --- /dev/null +++ b/stack-orchestrator/container-build/cerc-laconic-shopify-faucet/build.sh @@ -0,0 +1,5 @@ +#!/usr/bin/env bash + +# Build cerc/laconic-shopify-faucet +source ${CERC_CONTAINER_BASE_DIR}/build-base.sh +docker build -t cerc/laconic-shopify-faucet:local ${build_command_args} ${CERC_REPO_BASE_DIR}/laconic-faucet diff --git a/stack-orchestrator/stacks/laconic-shopify-faucet/README.md b/stack-orchestrator/stacks/laconic-shopify-faucet/README.md new file mode 100644 index 0000000..ea93e17 --- /dev/null +++ b/stack-orchestrator/stacks/laconic-shopify-faucet/README.md @@ -0,0 +1 @@ +# Laconic Shopify Faucet diff --git a/stack-orchestrator/stacks/laconic-shopify-faucet/stack.yml b/stack-orchestrator/stacks/laconic-shopify-faucet/stack.yml new file mode 100644 index 0000000..800a342 --- /dev/null +++ b/stack-orchestrator/stacks/laconic-shopify-faucet/stack.yml @@ -0,0 +1,9 @@ +version: "1.0" +name: laconic-shopify-faucet +description: "Faucet for shopify app" +repos: + - git.vdb.to/cerc-io/laconic-faucet@sk-shopify-faucet +containers: + - cerc/laconic-shopify-faucet +pods: + - laconic-faucet