Skip to content

Instantly share code, notes, and snippets.

View sandromello's full-sized avatar

Sandro Mello sandromello

View GitHub Profile
@sandromello
sandromello / projects.lua
Created September 4, 2024 12:49
wezterm config
-- $HOME/.config/wezterm/projects.lua
local wezterm = require 'wezterm'
local module = {}
local function project_dirs()
return {
'~/work/personal/joi2',
'~/work/hoopdev/hoop',
'~/work/hoopdev/documentation',
-- ... keep going, list all your projects
@sandromello
sandromello / lb-controller.tf
Created July 31, 2024 17:47
lb-controller.tf
provider "aws" {
region = local.region
}
data "terraform_remote_state" "eks" {
backend = "s3"
config = {
bucket = "tfstate"
key = "infra/eks"
apiVersion: apps/v1
kind: Deployment
metadata:
name: postgres
spec:
selector:
matchLabels:
app: postgres
strategy:
type: Recreate
@sandromello
sandromello / run_system_agent.sh
Last active July 11, 2024 18:41
System Agent
#!/bin/bash
SECRET_KEY=xagt-$(LC_ALL=C tr -dc A-Za-z0-9_ < /dev/urandom | head -c 43 | xargs)
set -eo pipefail
SECRET_KEY_HASH=$(echo -n $SECRET_KEY | sha256sum |awk {'print $1'})
psql -v ON_ERROR_STOP=1 "$POSTGRES_DB_URI" <<EOF
BEGIN;
DELETE FROM agents WHERE name = 'system';
INSERT INTO agents (id, org_id, name, mode, key_hash, status)
VALUES ('9A7C5A60-C910-4AD1-8A70-997E37123894', (SELECT id from private.orgs), 'system', 'standard', '$SECRET_KEY_HASH', 'DISCONNECTED')
ON CONFLICT DO NOTHING;
mkdir -p /opt/hoop/migrations
curl https://hoopartifacts.s3.amazonaws.com/release/1.22.22/hoopgateway_1.22.22-Linux_amd64.tar.gz -o hoopgateway.tar.gz && \
rm -rf /opt/hoop/migrations
tar --extract --file hoopgateway.tar.gz -C / --strip 1 && rm -f hoopgateway.tar.gz
chown -R root: /opt/hoop
mkdir -p /etc/hoopgateway.d
cat - > /etc/hoopgateway.d/config <<EOF
PLUGIN_AUDIT_PATH=/opt/hoop/sessions
PLUGIN_INDEX_PATH=/opt/hoop/sessions/indexes
mkdir -p /opt/hoop/pgdata
PGUSER=hoopdevuser
PGDATABASE=hoopdevdemo
PGPASSWORD="1a2b3c4d"
docker run -p 5432:5432 -d --rm --name hoopdevpg \
-e POSTGRES_USER=$PGUSER \
-e POSTGRES_DB=$PGDATABASE \
-e POSTGRES_PASSWORD=$PGPASSWORD \
-e PGUSER=$PGUSER \
@sandromello
sandromello / hoop-install-vm.md
Last active May 23, 2024 15:38
Hoop VM installation

Create database and permissions

CREATE DATABASE hoopdb;
CREATE USER hoopuser WITH ENCRYPTED PASSWORD 'my-secure-password' CREATEROLE;
-- switch to the created database
\c hoopdb
GRANT ALL PRIVILEGES ON DATABASE hoopdb TO hoopuser;
GRANT ALL PRIVILEGES ON SCHEMA public to hoopuser;
GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA public TO hoopuser;
@sandromello
sandromello / target-to-connection.go
Last active July 4, 2024 19:43
Hoop Target to Connection
package main
import (
"bytes"
"encoding/json"
"flag"
"fmt"
"math/rand"
"os"
"strings"
@sandromello
sandromello / postgres-manifest.yaml
Created December 6, 2023 19:00
Postgres Deployment
apiVersion: apps/v1
kind: Deployment
metadata:
name: postgres
spec:
replicas: 1
selector:
matchLabels:
app: postgres
strategy:
@sandromello
sandromello / manifest.yaml
Created December 6, 2023 18:26
Hoop Self Hosted Yaml
---
# Source: hoop-chart/templates/secret-configs.yaml
apiVersion: v1
kind: Secret
metadata:
name: hoop-config
type: Opaque
stringData:
XTDB_ADDRESS: "http://127.0.0.1:3001"
POSTGRES_DB_URI: "postgresql://<user>:<pwd>@<host>:5432/<db>"