go build -o agent.so -buildmode=c-shared main.goNo dependencies required
| # 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://[PG_USER]:[PG_PASSWORD]@[PG_HOST]:[PG_PORT]/[PG_DB]" | |
| API_URL: "[HOOP_GATEWAY_DNS_NAME]" |
| --- | |
| # 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>" |
| apiVersion: apps/v1 | |
| kind: Deployment | |
| metadata: | |
| name: postgres | |
| spec: | |
| replicas: 1 | |
| selector: | |
| matchLabels: | |
| app: postgres | |
| strategy: |
| package main | |
| import ( | |
| "bytes" | |
| "encoding/json" | |
| "flag" | |
| "fmt" | |
| "math/rand" | |
| "os" | |
| "strings" |
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;| 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 \ |
| 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 |
| #!/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; |