From e08969bee511612bf9aed91c89584c479e0e8d00 Mon Sep 17 00:00:00 2001 From: Patrick Balsiger Date: Tue, 2 Jul 2024 17:32:35 +0200 Subject: [PATCH] Minimize cloud-init config --- cloud-init/cloud-config-small.yaml | 56 ++++++++++++++++++++++++++++++ cloud-init/cloud-config.yaml | 2 +- main.tf | 7 +++- templates/bot/config.yaml.tpl | 2 +- 4 files changed, 64 insertions(+), 3 deletions(-) create mode 100644 cloud-init/cloud-config-small.yaml diff --git a/cloud-init/cloud-config-small.yaml b/cloud-init/cloud-config-small.yaml new file mode 100644 index 0000000..7980604 --- /dev/null +++ b/cloud-init/cloud-config-small.yaml @@ -0,0 +1,56 @@ +#cloud-config +groups: + - ubuntu: [root,sys] + - docker + - bot + +users: + - default + - name: keeper + gecos: keeper + shell: /bin/bash + primary_group: bot + sudo: ALL=(ALL) NOPASSWD:ALL + groups: users, admin, docker + lock_passwd: false + +packages: + - apt-transport-https + - ca-certificates + - curl + - gnupg-agent + - software-properties-common + - chrony + - docker.io + - docker-compose + +ntp: + enabled: true + ntp_client: chrony + servers: + - ${ntp_server} + +runcmd: + - systemctl stop snapd && systemctl disable snapd + - git clone https://github.com/0x1d/drift-keeper /app/bot + - cp -rT /transfer /app/bot && rm -rf /transfer + - chown -R keeper:bot /app/bot + - cd /app/bot && sudo -u keeper -g bot -- docker-compose up -d + +write_files: + - path: /transfer/.env + encoding: b64 + owner: root:root + permissions: '0750' + content: ${env_file} + - path: /transfer/config.yaml + encoding: b64 + owner: root:root + permissions: '0750' + content: ${config_file} + - path: /transfer/docker-compose.yaml + encoding: b64 + owner: root:root + permissions: '0750' + content: ${docker_compose_file} + \ No newline at end of file diff --git a/cloud-init/cloud-config.yaml b/cloud-init/cloud-config.yaml index 837e0ea..d8694ab 100644 --- a/cloud-init/cloud-config.yaml +++ b/cloud-init/cloud-config.yaml @@ -32,7 +32,7 @@ ntp: runcmd: - systemctl stop snapd && systemctl disable snapd - - git clone -b feature/scaling https://github.com/0x1d/drift-keeper /app/bot + - git clone https://github.com/0x1d/drift-keeper /app/bot - cp -rT /transfer /app/bot && rm -rf /transfer - chown -R keeper:bot /app/bot - cd /app/bot && sudo -u keeper -g bot -- docker-compose up -d diff --git a/main.tf b/main.tf index 361698f..8cb0f98 100644 --- a/main.tf +++ b/main.tf @@ -1,4 +1,9 @@ terraform { + backend "consul" { + address = "sophon:8500" + scheme = "http" + path = "terraform/drift-keeper" + } required_providers { linode = { source = "linode/linode" @@ -29,7 +34,7 @@ locals { prometheus_password_bcrypt = bcrypt(var.monitoring.prometheus_password) })) } - cloud_config = { for s in concat(var.linode_instances, var.digitalocean_instances) : s.label => templatefile("cloud-init/cloud-config.yaml", { + cloud_config = { for s in concat(var.linode_instances, var.digitalocean_instances) : s.label => templatefile("cloud-init/cloud-config-small.yaml", { ntp_server = s.ntp_server env_file = base64encode(templatefile("templates/bot/env.tpl", merge(var.bot, { jito_block_engine_url = s.jito_block_engine_url diff --git a/templates/bot/config.yaml.tpl b/templates/bot/config.yaml.tpl index 3c760d2..2a487cc 100644 --- a/templates/bot/config.yaml.tpl +++ b/templates/bot/config.yaml.tpl @@ -43,7 +43,7 @@ global: # end after the deposit transaction is sent #forceDeposit: 1000 - websocket: false # use websocket for account loading and events (limited support) + websocket: true # use websocket for account loading and events (limited support) eventSubscriber: false # disables event subscriber (heavy RPC demand), this is primary used for counting fills runOnce: false # Set true to run once and exit, useful for testing or one off bot runs debug: false # Enable debug logging