Atlas project development

aether

Multi-workflow script toolbox spanning SIS, directory, and asset operations. It ingests configuration files, database tables, CSV files, and service-account keys, then produces reports, CSV exports, API updates, and rendered HTML/email artifacts.

Type
Experiment
Lifecycle
Active
Last touched
2025-12-25
Visibility
Public

Purpose

Centralize operational scripts that keep SIS, directory, and asset workflows moving in sync.

Current state

Last touched: 2025-12-25. Functionality and completeness: Many scripts present; behavior must be verified per script.

Next step

Add baseline automated tests to cover critical flows; Add CI pipeline for build/test/lint; Document deployment/runtime environment (or add Dockerfile); Document interfaces (CLI flags, API endpoints, file formats); Add structured logging and basic health checks.

Interfaces

Inputs
  • Configuration files (TOML/YAML/JSON/INI/CONF), database tables (SQL scripts), CSV files, service-account keys
  • SQL queries
Outputs
  • Query results (reports/extracts), CSV files, API updates, rendered HTML/email artifacts
  • CSV exports
  • Log files

Reality to Action trace

Reality Ingestion

Contributes in this stage.

Canonical Storage

Not in scope.

Automation Engines

Not in scope.

Human Interfaces

Contributes in this stage.

Operational Adoption

Contributes in this stage.

Core workflow

TBD. Document the 5-10 steps that define the core workflow.

Artifacts

  • Script-specific; configs under conf.d/ and sql/ define schemas

Operational notes

Constraints and scars

  • Heterogeneous scripts with varying dependencies; lack of centralized documentation makes maintenance harder.

Reliability posture

Failure modes and safe behavior: Varies per script; errors often surface via exit codes and log files. Idempotency / retries / batching behavior: Varies per script; some scripts likely safe to re-run, others not documented.

Observability

  • Logs: Script-dependent logs written under log/ or logs/ (multiple per-run logs present)
  • Metrics/health checks: None documented
  • Logs: Multiple log files under log/ and logs/; output varies by script.

Security and privacy

Repository contains sensitive data (logs, CSV exports) and credentials; review before sharing and remove secrets. Sensitive secret material detected in aether/priv_key.json; ensure it is excluded from docs and CI. Sensitive secret material detected in aether/conf.d/priv_key.json; ensure it is excluded from docs and CI.

Dependencies

Upstream
  • Aeries, Active Directory, Google Workspace, Snipe-IT, TitanHST (based on script names)

Ownership

Owners

Josh Barton

Users

Josh Barton (owner)

aether

Architecture & Major Components

  • High-level diagram (text):

    • Entry/trigger -> core logic -> outputs (details per docs below)
  • Entry points: Multiple scripts in repo root (e.g., Push-*.sh, *_sync.sh)

  • Top-level folders: bin, conf.d, config, data, emails_sent, etc, import-mbox, js, lib, lock, log, logs, misc, sql, templates

  • Key abstractions: Script families (Push-*, *_sync.sh), config packs in conf.d/, SQL extracts in sql/, and HTML/email templates in templates/

Setup / Build / Run

  • Build system(s): None (script collection).
  • Run individual scripts as needed after configuring conf.d/ and credentials.