Files
fn_registry/bash/functions/pipelines/setup_metabase_volume.md
T
egutierrez 988e901066 docs: params/output semántico en 506 funciones para composabilidad
Añade campos params y output al frontmatter YAML de las 506 funciones del registry.
Cada parámetro tiene descripción semántica (qué representa, unidades, rango típico)
y cada función describe qué produce su output. Permite a agentes razonar sobre
cadenas de composición (ej: prices → log_return → sharpe_ratio) sin leer código.
2026-04-05 18:45:16 +02:00

2.6 KiB

name, kind, lang, domain, version, purity, signature, description, tags, uses_functions, uses_types, returns, returns_optional, error_type, imports, params, output, tested, tests, test_file_path, file_path
name kind lang domain version purity signature description tags uses_functions uses_types returns returns_optional error_type imports params output tested tests test_file_path file_path
setup_metabase_volume pipeline bash pipelines 1.0.0 impure setup_metabase_volume([registry_db_path: string], [container_name: string], [dest_path: string]) -> void Copia registry.db al contenedor Docker de Metabase verificando existencia del archivo, disponibilidad de docker, estado del contenedor y coincidencia de tamaños. Todos los argumentos son opcionales con defaults razonables.
metabase
docker
setup
launcher
pipeline
bash
infra
assert_file_exists_bash_shell
assert_command_exists_bash_shell
assert_docker_container_running_bash_infra
docker_cp_file_bash_infra
false error_go_core
name desc
registry_db_path ruta a registry.db local (default: /home/lucas/fn_registry/registry.db)
name desc
container_name nombre del contenedor Metabase (default: metabase)
name desc
dest_path ruta destino dentro del contenedor (default: /registry.db)
sin salida directa; verifica transferencia con coincidencia de tamaños false
bash/functions/pipelines/setup_metabase_volume.sh

Ejemplo

# Con defaults
./functions/pipelines/setup_metabase_volume.sh

# Con argumentos explícitos
./functions/pipelines/setup_metabase_volume.sh \
  /home/lucas/fn_registry/registry.db \
  metabase \
  /registry.db

Flujo

  1. assert_file_exists — verifica que registry.db existe localmente y obtiene su tamaño
  2. assert_command_exists — verifica que docker está disponible en PATH
  3. assert_docker_container_running — verifica que el contenedor destino está activo; si falla, muestra lista de contenedores activos
  4. docker_cp_file — ejecuta docker cp y verifica que los tamaños local y remoto coinciden

Notas

El pipeline usa set -euo pipefail — cualquier fallo en una función individual detiene la ejecución.

Las funciones individuales se sourcean desde sus rutas en el registry, relativas a REGISTRY_ROOT detectado automáticamente desde la ubicación del script.

Defaults:

  • REGISTRY_DB_PATH: /home/lucas/fn_registry/registry.db
  • CONTAINER_NAME: metabase
  • DEST_PATH: /registry.db

Nota de persistencia: docker cp copia al contenedor en ejecución. Si el contenedor se reinicia, el archivo se pierde. Para persistencia real, montar el directorio como volumen en docker-compose:

volumes:
  - /home/lucas/fn_registry:/fn_registry:ro

Y usar --registry-db-path /fn_registry/registry.db.