Esta es la página web de la materia Ingenieria del Software 2 de la Facultad de Ingenieria de la Universidad de Buenos Aires.
Warning
Ejecutá git config core.hooksPath .githooks una unica vez por clon del repo.
Esto habilita ./.githooks/pre-commit, que actualiza data/autogenerated.json a partir de data/material.yaml.
Por limitaciones de red/entorno de los runners de GitHub Actions, esta generación no es confiable en CI (ni con proxies ni cambiando runtime/librería: Go, Node o Python), así que se hace localmente.
El hook sólo corre cuando cambia data/material.yaml, reindexa data/autogenerated.json automáticamente y deja la metadata generada dentro del mismo commit.
# Clonar el repo
git clone https://github.com/ingenieria-del-software-2/ingenieria-del-software-2.github.io
# Entrar al directorio
cd ingenieria-del-software-2.github.io
# Configurar hooks versionados del repo
git config core.hooksPath .githooks
# Levantar entorno local (Hugo en :1313)
npm run dev# Instalar dependencias node
npm ci
# Build de producción local (equivalente al workflow principal)
npm run build
# Build de preview para PR/MR (equivalente a pages-preview.yaml)
PREVIEW_URL="https://<owner>.github.io/<repo>/pr-preview/pr-<numero>/" npm run build:prod:mr-previewEn el workflow .github/workflows/pages-preview.yaml, PREVIEW_URL sigue el patrón:
https://<owner>.github.io/<repo>/pr-preview/pr-<numero>/
El repo incluye un workflow de GitHub Actions en .github/workflows/pages.yaml para publicar el sitio en GitHub Pages (gratis).
Si querés más detalle, mirá:
- Publishing with a custom GitHub Actions workflow
- GitHub Pages: Custom GitHub Actions workflows (beta)
hugo mod get -u
hugo mod tidyMás info en la doc oficial: Update modules
En cada cuatrimestre, normalmente hay que tocar estas cosas:
- Habilitar el link de inscripción: en
hugo.yaml, cargar el link del Google Form enparams.inscripcion.url. Si queda vacío (""), el botón se muestra bloqueado. - Actualizar material: agregar las clases nuevas en su categoría correspondiente en
data/material.yaml(videos, recursos, temas, etc.). - Actualizar el equipo docente: agregar/modificar docentes en
data/team.yaml(nombre, foto, mail y GitHub). - Actualizar fechas de la línea de tiempo (home): al inicio de cada cuatrimestre, cargar el nuevo calendario en
data/fechas.yamlcon formatoYYYY-MM-DD.- La home (
layouts/home.html) consume estas claves para ubicar los hitos en la timeline y el mrcadorHOY.
- La home (
inicio: "2026-03-09"
individual: "2026-03-19"
checkpoint1: "2026-04-13"
checkpoint2: "2026-05-11"
checkpoint3: "2026-06-04"
final: "2026-06-25"