Francismar Nascimento da Silva e268d8026a docs: arquitetura, SSO, tema, operacao e o que sabemos do LearnHouse
Documenta como o cursos.overia.com.br e construido (LearnHouse 1.3.6 community
no NAS4, login pelo Keycloak via oauth2-proxy e ponte, tema overia injetado pelo
nginx, aulas por proxy /aulas), as armadilhas ja encontradas, o runbook de
publicacao, rollback, backup e atualizacao, e as decisoes e pendencias.

learnhouse-upstream.md resume o repositorio e a documentacao oficiais e marca onde
a doc diverge do codigo da imagem (cookies LH_*, politica de login por organizacao).

deploy/publicar-tema.sh publica deploy/theme e o nginx.prod.conf com nginx -t e
volta automatica; recebe host, porta, usuario e senha por variaveis de ambiente.

O repositorio e publico: nenhum IP, porta, usuario, conta ou segredo nos arquivos.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-04 00:03:45 -03:00

cursos

Pipeline + conteúdo de cursos para publicar em cursos.overia.com.br (LearnHouse), um curso por tecnologia.

Estrutura

courses/<slug>/course.json
courses/<slug>/<NN> - <Nome do Capítulo>/<NN> - <Nome da Aula>.md

course.json guarda os metadados do curso (name, description, about, public). Nome de capítulo/aula vem do nome da pasta/arquivo, prefixado por um número de ordem (ex: 01 - Introdução, 02 - Instalando o Python.md).

.env

LEARNHOUSE_API_TOKEN=
LEARNHOUSE_BASE_URL=
LEARNHOUSE_ORG_ID=
LEARNHOUSE_ORG_SLUG=
GITEA_RAW_BASE=

GITEA_RAW_BASE é a base usada pra montar a URL de cada aula Markdown. Use https://cursos.overia.com.br/aulas: o nginx do LearnHouse repassa /aulas/<caminho>.md pra https://git.xenserver.com.br/ai-bot/cursos/raw/branch/main/courses/<caminho>.md. Não use a URL raw do Gitea direto: ela não envia Access-Control-Allow-Origin e o navegador bloqueia a leitura (a aula mostra "Failed to fetch").

Uso

uv run python -m scripts.publish <slug> [--dry-run|--publish]
  • --dry-run: mostra a árvore de curso/capítulos/aulas e as URLs geradas, sem chamar a API.
  • --publish: além de criar/atualizar o curso, marca atividades e curso como publicados. Sem essa flag, tudo fica em rascunho.
Description
Serie de cursos para cursos.overia.com.br (LearnHouse) - pipeline de publicacao + conteudo
Readme 303 KiB
Languages
Python 56.9%
CSS 36.6%
Shell 3.6%
JavaScript 2.9%