124 lines
3.2 KiB
Plaintext
Raw Permalink Normal View History

2025-10-07 10:59:52 +01:00
#!/usr/bin/env nu
# Provisioning Platform Installer - Nushell Module
#
# Main module export file that provides all deployment functionality.
# Import this module to access all deployment commands.
#
# USAGE:
# use mod.nu *
# deploy-interactive
# deploy-headless docker solo
# deploy-unattended file ./config.toml
# Export main deployment functions
export use deploy.nu [
deploy-interactive
deploy-headless
deploy-unattended
"deploy help"
]
# Export platform-specific deployment functions
export use platforms.nu [
deploy-docker
deploy-podman
deploy-kubernetes
deploy-orbstack
]
# Export helper functions
export use helpers.nu [
check-prerequisites
validate-deployment-params
build-deployment-config
save-deployment-config
load-config-from-file
validate-deployment-config
confirm-deployment
check-deployment-health
rollback-deployment
check-platform-availability
generate-secrets
create-deployment-manifests
get-installer-path
]
# Export integration functions
export use integration.nu [
load-config-from-mcp
load-config-from-api
notify-webhook
call-installer
run-installer-headless
run-installer-interactive
config-to-cli-args
deploy-with-installer
query-mcp-status
register-deployment-with-api
update-deployment-status
notify-slack
notify-discord
notify-teams
execute-mcp-tool
]
# Module metadata
export const VERSION = "1.0.0"
export const DESCRIPTION = "Provisioning Platform Installer - Nushell Deployment Scripts"
# Show module information
export def "module info" [] {
{
name: "provisioning-installer"
version: $VERSION
description: $DESCRIPTION
exported_functions: {
deployment: [
"deploy-interactive"
"deploy-headless"
"deploy-unattended"
"deploy help"
]
platforms: [
"deploy-docker"
"deploy-podman"
"deploy-kubernetes"
"deploy-orbstack"
]
helpers: [
"check-prerequisites"
"validate-deployment-params"
"build-deployment-config"
"save-deployment-config"
"load-config-from-file"
"validate-deployment-config"
"confirm-deployment"
"check-deployment-health"
"rollback-deployment"
"check-platform-availability"
"generate-secrets"
"create-deployment-manifests"
"get-installer-path"
]
integration: [
"load-config-from-mcp"
"load-config-from-api"
"notify-webhook"
"call-installer"
"run-installer-headless"
"run-installer-interactive"
"config-to-cli-args"
"deploy-with-installer"
"query-mcp-status"
"register-deployment-with-api"
"update-deployment-status"
"notify-slack"
"notify-discord"
"notify-teams"
"execute-mcp-tool"
]
}
}
}