feat: Add main setup script and Makefile for unified control
This commit is contained in:
parent
b283911134
commit
4c6f8259af
2 changed files with 72 additions and 0 deletions
36
Makefile
Normal file
36
Makefile
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
# =============================================================================
|
||||
# Knowledge Genome - Makefile
|
||||
# Orchestrates the setup and management of the knowledge base.
|
||||
# =============================================================================
|
||||
|
||||
include config.env
|
||||
export $(shell sed 's/=.*//' config.env)
|
||||
|
||||
.PHONY: setup add-genome status lint clean help
|
||||
|
||||
help:
|
||||
@echo "Available commands:"
|
||||
@echo " make setup - Full system initialization"
|
||||
@echo " make add-genome - Register and scaffold a new genome"
|
||||
@echo " make status - Check submodule and encryption status"
|
||||
@echo " make lint - Verify schema, privacy flags, and metadata"
|
||||
|
||||
lint:
|
||||
@bash scripts/lint-genomes.sh
|
||||
|
||||
setup:
|
||||
@bash scripts/setup.sh
|
||||
|
||||
add-genome:
|
||||
@if [ -z "$(NAME)" ] || [ -z "$(DESC)" ]; then \
|
||||
echo "Error: NAME and DESC are required."; \
|
||||
echo "Usage: make add-genome NAME=my-genome DESC='My description'"; \
|
||||
exit 1; \
|
||||
fi
|
||||
@bash scripts/add-genome.sh "$(NAME)" "$(DESC)"
|
||||
|
||||
status:
|
||||
@echo "--- Master Status ---"
|
||||
@git submodule status
|
||||
@echo "--- Encryption Status (First 10 files) ---"
|
||||
@git-crypt status | head -n 10
|
||||
36
scripts/setup.sh
Normal file
36
scripts/setup.sh
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
#!/usr/bin/env bash
|
||||
# =============================================================================
|
||||
# scripts/setup.sh
|
||||
# Main entry point for the Knowledge Genome framework initialization.
|
||||
# Orchestrates dependency checks, master repo setup, and genome provisioning.
|
||||
# =============================================================================
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
# Resolve script directory and source core components
|
||||
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
||||
source "${SCRIPT_DIR}/lib/output.sh"
|
||||
source "${SCRIPT_DIR}/config.env"
|
||||
source "${SCRIPT_DIR}/lib/deps.sh"
|
||||
|
||||
step "Starting Knowledge Genome Setup"
|
||||
|
||||
# 1. Environment and Dependency Validation
|
||||
info "Validating system dependencies..."
|
||||
check_deps
|
||||
check_git_identity
|
||||
|
||||
# 2. Master Repository Provisioning
|
||||
info "Initializing Master Repository..."
|
||||
bash "${SCRIPT_DIR}/scripts/setup-master.sh"
|
||||
|
||||
# 3. Genomes Provisioning (as defined in config.env)
|
||||
info "Provisioning registered Genomes..."
|
||||
bash "${SCRIPT_DIR}/scripts/setup-genomes.sh"
|
||||
|
||||
success "Setup process completed successfully!"
|
||||
|
||||
box "Next Steps:" \
|
||||
"1. Navigate to master: cd ${WORK_DIR}/${MASTER_REPO}" \
|
||||
"2. Secure your keys: Upload contents of ${KEYS_DIR} to Vaultwarden" \
|
||||
"3. Start building: Add files to raw/articles/ and run your agents"
|
||||
Loading…
Add table
Reference in a new issue