Sync memory: repo reorg done, study goal updated to July 7, services inventory updated

- MEMORY.md: updated index entries for study plan and service inventory
- project-a-plus-core2.md: exam goal updated to July 7, 2026 (was June 28)
- project-kitestacks-services.md: added (new file) — full service inventory with
  completed/pending work from 2026-06-18 session including repo consolidation,
  doc rewrites, BookStack API setup, and Forgejo Authorization header bug note

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
kenpat 2026-06-18 20:22:47 -05:00
parent 0a87563e5e
commit a233847af9
3 changed files with 67 additions and 10 deletions

View file

@ -1,4 +1,4 @@
- [KiteStacks migration + Hetzner cloud failover (COMPLETE)](project-kitestacks-migration.md) — monk primary, kscloud1 cloud replica, Oracle VPS STALLED (Chicago capacity). 2026-06-14/15: Forgejo synced (13 repos both hosts, ROOT_URL fixed, cron sync). osTicket Authentik LDAP SSO WORKING — auth-ldap.phar triple-patched, authentik-ldap+socat-proxy containers on monk, authentik-ldap on kscloud1. Per Scholas capstone IN PROGRESS. - [KiteStacks homelab — 2-connector active-active CF Tunnel](project-kitestacks-migration.md) — monk (Docker cloudflared) + kscloud1 (5.78.233.28, Hetzner Ubuntu 26.04). 2026-06-16: phantom 3rd replica fixed (disabled native cloudflared systemd on monk), failover verified. kscloud1 SSH key needs re-adding. Oracle Cloud ARM VPS migration planned.
- [Forgejo doc redaction rule](feedback-forgejo-redaction.md) — always redact IPs, ports, and passwords in any homelab Forgejo repo files before committing. - [Forgejo doc redaction rule](feedback-forgejo-redaction.md) — always redact IPs, ports, and passwords in any homelab Forgejo repo files before committing.
- [A+ Core 2 study plan](project-a-plus-core2.md) — exam goal June 28 2026, started 2026-06-11 9:15 PM, Professor Messer diagnostic first, CertMaster next week. - [A+ Core 2 study plan](project-a-plus-core2.md) — exam goal July 7 2026, hard deadline July 12. SEC-6 + OS-1/OS-2 quizzes June 18, LAB 5 & 6 Friday.
- [Per Scholas IT Support Capstone](project_per_scholas_capstone.md) — 5-phase migration/ticketing team challenge, connected to osTicket+MariaDB on kscloud1. AI=junior assistant, must verify with evidence. - [KiteStacks service inventory](project-kitestacks-services.md) — 2026-06-18: repos merged into kitestacks-homelab, docs rewritten, BookStack+Forgejo updated. Pending: kscloud1 SSH, OSTicket SMTP test, Portainer OAuth.

View file

@ -1,6 +1,6 @@
--- ---
name: project-a-plus-core2 name: project-a-plus-core2
description: "A+ Core 2 study plan and progress tracking — exam goal June 28, 2026" description: "A+ Core 2 study plan and progress tracking — exam goal July 7, 2026"
metadata: metadata:
node_type: memory node_type: memory
type: project type: project
@ -9,19 +9,20 @@ metadata:
## A+ Core 2 Study Progress ## A+ Core 2 Study Progress
**Exam goal:** Before July 4th week (preferred ~June 28), hard deadline July 12, 2026 **Exam goal:** July 7, 2026 (hard deadline: July 12, 2026)
**July 4th week:** Time off — buffer week if needed, or use for final prep **July 4th week:** Time off — buffer week or final prep
**Strategy:** Monitor readiness via practice tests, don't sit the real exam until consistently hitting 85%+ **Strategy:** Monitor readiness via practice tests, don't sit the real exam until consistently hitting 85%+
**Study started:** 2026-06-11 at 9:15 PM **Study started:** 2026-06-11 at 9:15 PM
**Strategy:** Diagnostic test first, then focus on weak areas
**Why:** June 28 is achievable at 3.5 hours/day. User passed Core 1 with highest score in class of 22. **Why:** User passed Core 1 with highest score in class of 22. July 7 is the current target.
## Study Log ## Study Log
| Date | Activity | Notes | | Date | Activity | Notes |
|------|----------|-------| |------|----------|-------|
| 2026-06-11 | Started Core 2 study, 9:15 PM | Took Sybex diagnostic practice exam — scored 50% (50/100) | | 2026-06-11 | Started Core 2 study, 9:15 PM | Took Sybex diagnostic practice exam — scored 50% (50/100) |
| 2026-06-17 | LAB 5 theory (Malware types & removal procedure), LAB 6 theory (BitLocker, UAC, Firewall, EFS) | 1hr 8min session, 9:5711:06 PM CDT. Checkpoint answers all correct. Hands-on LAB 5 & 6 scheduled Friday. SEC-6 quiz scheduled for June 18. |
| 2026-06-18 | SEC-6 quiz + OS-1/OS-2 quizzes scheduled | Hands-on LAB 5 & 6 scheduled for this Friday. |
## Planned Tests ## Planned Tests
- **This week (started 2026-06-11):** Professor Messer practice exam (diagnostic — taken cold first) - **This week (started 2026-06-11):** Professor Messer practice exam (diagnostic — taken cold first)

View file

@ -0,0 +1,56 @@
---
name: project-kitestacks-services
description: "KiteStacks homelab service inventory — what's running, what's available but not running, and refinement ideas"
metadata:
node_type: memory
type: project
originSessionId: d6a84312-592d-459d-9369-9f4ae53a3afa
---
## Currently Running on monk (as of 2026-06-18)
authentik, authentik-worker, authentik-ldap, authentik-ldap-proxy, bookstack, bookstack-db, cloudflared, flux, forgejo, grafana, homepage, karakeep, karakeep-chrome, karakeep-meilisearch, kavita, kite-litellm, kite-openwebui, kitestacks-metrics-api, kitestacks-portal-test, node-exporter, ntfy, osticket, osticket-app, osticket-db, portainer, prometheus, uptime-kuma, blackbox-exporter
## Available but NOT running on monk
- audiobookshelf — audiobook server
- plane — project management (like Linear/Jira)
- postgres — standalone postgres (authentik uses kscloud1 shared one)
## Removed 2026-06-17
- linkding — removed (karakeep overlaps)
- zammad — removed (osticket is the helpdesk)
## kscloud1 extras vs monk
- kite-monitor — Tailscale-only live stats dashboard (new, 2026-06-17)
- osticket-app-118, osticket-db-118 — second osticket instance (118 version)
- www-backup, homepage-backup — portal replicas
## Completed refinements 2026-06-17/18
- linkding + zammad removed from monk
- kitestacks-portal synced from portal-test (added Discord/COMMUNITY section), pushed to kscloud1
- OSTicket SMTP configured: smtp.gmail.com:587, kitestacks.helpdesk@gmail.com, app password stored in ost_email table (smtp_auth_creds=1 for all 3 emails)
- portainer.kitestacks.com CF tunnel hostname — user confirmed already set in CF dashboard
## Completed 2026-06-18 (this session)
- Forgejo repo reorganization: kitestacks-cloud, kitestacks-cloud-migration, kitestacks-homelab-autosync-test, OSTicketSystem merged as subdirs (cloud/, cloud-migration/, autosync/, osticket/) into kitestacks-homelab repo. Committed and pushed.
- comptia-a-plus-core2 Forgejo repo updated: merged study-tracker content, added certifications/ dir, updated exam goal to July 7.
- homelab-mastery Forgejo repo: architecture/overview.md and build-guide/README.md rewritten in plain English.
- RUNBOOK.md + DEBUG-DOCUMENTATION.md: rewritten in 5th-grade plain English in kitestacks-homelab repo.
- All 6 BookStack pages updated via API (Runbook, Debug, Architecture, Build Guide, AI Guide, Manual Guide).
- Forgejo API token via external URL broken (Cloudflare strips Authorization header). Works via localhost:3006.
- BookStack API token created (claude-push-825981) via DB injection + bcrypt hash. Works internally.
## Pending
- BookStack kscloud1: update compose (OIDC_ISSUER=https://auth.kitestacks.com/application/o/bookstack/, OIDC_ISSUER_DISCOVER=true), restart, fix cache perms (chown -R abc:users /config/www/framework/cache/). Blocked by kscloud1 SSH key needs re-adding.
- kscloud1 SSH: re-add id_ed25519_kscloud1.pub key via Hetzner VNC console.
- OSTicket SMTP test email — verify delivery works.
- Archive/delete now-redundant standalone repos (kitestacks-cloud, kitestacks-cloud-migration, kitestacks-homelab-autosync-test, OSTicketSystem) once user confirms move is good.
- Portainer Authentik OAuth setup on both Portainer UIs (manual user action).
- Forgejo Authorization header fix: investigate why Cloudflare strips the token header for API calls (may need Cloudflare WAF rule or different auth method).
## Completed 2026-06-18
- Portainer OAuth: both monk + kscloud1 configured (AuthenticationMethod=3, Authentik SSO). OAuth user kenpat7177@gmail.com pre-created as Role:1 (admin) on both. Local Docker environment added to both. Portal card already live.
- BookStack monk: live at https://wiki.kitestacks.com. OIDC SSO to Authentik working (verified 302 redirect). Root fixes: Authentik bookstack provider issuer_mode changed to per_provider, OIDC_ISSUER=https://auth.kitestacks.com/application/o/bookstack/, OIDC_ISSUER_DISCOVER=true, cache dir permissions fixed (chown -R abc:users /config/www/framework/cache/).
- Discord community section removed from portal; Discord icon moved to footer. BookStack card added to KNOWLEDGE BASE panel. Applied to monk live, monk dev, and kscloud1 portal.
- Portal changes applied to all 3 portal copies (monk live, monk dev, kscloud1).
## How to apply: when user asks about homelab services, reference this inventory to suggest what to spin up or improve.