From c324093c0a2fc24fd8f1eb33e4414d0d1d622bbb Mon Sep 17 00:00:00 2001 From: merios Date: Thu, 15 Oct 2026 11:59:23 -0300 Subject: [PATCH] docs: autoria institucional del laboratorio Agrega el credito "Laboratorio de investigacion en Software Libre Gugler - FCyT" en el encabezado y la seccion Licencia del README, y como pie en ambos documentos de docs/. Se documenta la exencion institucional en la politica de publicacion anonima: el nombre del laboratorio y git.gugler.com.ar son publicos por decision propia y no se anonimizan. El verificador recibe una lista blanca que separa autores institucionales de los que hay que revisar, y excluye el dominio del laboratorio del filtro de emails. --- README.md | 4 +++- docs/arquitectura.md | 5 +++++ docs/http-https.md | 5 +++++ docs/publicacion-anonima.md | 6 ++++++ tools/verificar-anonimato.sh | 21 +++++++++++++++++---- 5 files changed, 36 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 5b7a19a..b3dec6d 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,7 @@ # TrafficServerLocal +> Autoría: **Laboratorio de investigacion en Software Libre Gugler - FCyT**. + Infraestructura base para alojar múltiples proyectos Docker detrás de un único proxy inverso **Traefik v3**, con soporte para **HTTP y HTTPS**: @@ -443,7 +445,7 @@ usar, estudiar, copiar, modificar y redistribuir este software. Si lo distribuís o lo desplegás para terceros, debés publicar también las fuentes de tus modificaciones bajo la misma licencia. -Autoría: Laboratorio de Investigación en Software Libre. +**Autoría:** Laboratorio de investigacion en Software Libre Gugler - FCyT. ### Racional de la licencia diff --git a/docs/arquitectura.md b/docs/arquitectura.md index 51d345a..02d90b5 100644 --- a/docs/arquitectura.md +++ b/docs/arquitectura.md @@ -243,3 +243,8 @@ Sugerencia de rotación (crontab diario a las 3:00): | Dominios locales | `.local` | | Certificados `.local` | `~/srv/core/data/certs/` + `dynamic_tls.yml` | | Certificados públicos | Let's Encrypt vía `acme.json` | + +--- + +**Autoría:** Laboratorio de investigacion en Software Libre Gugler - FCyT. +Distribuido bajo GPL-3.0 (ver [`LICENSE`](../LICENSE)). diff --git a/docs/http-https.md b/docs/http-https.md index dcc4aac..7a2ce32 100644 --- a/docs/http-https.md +++ b/docs/http-https.md @@ -245,3 +245,8 @@ curl -sk https://miapp.local -I # respuesta del backend (-k ignora el cert) | `...middlewares.X.redirectscheme.scheme=https` | Redirige HTTP → HTTPS | | `...middlewares.X.redirectscheme.permanent=true` | 301 en vez de 302 | | `...middlewares.X.basicauth.users=file` | Protección básica | + +--- + +**Autoría:** Laboratorio de investigacion en Software Libre Gugler - FCyT. +Distribuido bajo GPL-3.0 (ver [`LICENSE`](../LICENSE)). diff --git a/docs/publicacion-anonima.md b/docs/publicacion-anonima.md index b7976a1..1e98d2f 100644 --- a/docs/publicacion-anonima.md +++ b/docs/publicacion-anonima.md @@ -23,6 +23,12 @@ dominios, credenciales ni la identidad de las personas que despliegan. | Credenciales | `` | `${DB_PASSWORD}` | | Ruta interna | `/var/lib//produccion` | `/var/lib/miapp` | +> **Exención institucional.** El nombre del laboratorio — +> `Laboratorio de investigacion en Software Libre Gugler - FCyT`— y las +> referencias a `git.gugler.com.ar` son públicos por decisión propia y **no se +> anonimizan**. La anonimización protege los datos de las personas y de la +> infraestructura del servidor, no a la entidad que publica el código. + --- ## 2. Checklist antes de publicar diff --git a/tools/verificar-anonimato.sh b/tools/verificar-anonimato.sh index bea76eb..e4630ac 100755 --- a/tools/verificar-anonimato.sh +++ b/tools/verificar-anonimato.sh @@ -18,6 +18,10 @@ set -uo pipefail REPO="${1:-.}" cd "$REPO" || { echo "No se pudo acceder a: $REPO"; exit 1; } +# Nombres de la entidad que publica el codigo: son publicos por decision propia +# y no se anonimizan (ver docs/publicacion-anonima.md, exencion institucional). +ALLOWLIST_INSTITUCIONAL='Gugler|FCyT' + RED='\033[0;31m' GREEN='\033[0;32m' YELLOW='\033[1;33m' @@ -95,7 +99,7 @@ fi # ----------------------------------------------------------------------------- section "Emails y dominios" MAILS=$(git grep -nEi '[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,}' -- . 2>/dev/null \ - | grep -vEi '@(localhost|example\.(com|org|net)|gnu\.org|fsf\.org|w3\.org|iana\.org|localhost\.localdomain)' \ + | grep -vEi '@(localhost|example\.(com|org|net)|gnu\.org|fsf\.org|w3\.org|iana\.org|localhost\.localdomain)|@?(gugler\.com\.ar)' \ | head -10 || true) if [ -n "$MAILS" ]; then while IFS= read -r l; do hit "$l" "MEDIO"; done <<< "$MAILS" @@ -116,9 +120,18 @@ fi section "Autores en el historial" AUTHORS=$(git log --format='%an <%ae>' --all 2>/dev/null | sort -u | head -10 || true) if [ -n "$AUTHORS" ]; then - printf ' %sAutores registrados:%s\n' "$YELLOW" "$NC" - while IFS= read -r a; do printf ' - %s\n' "$a"; done <<< "$AUTHORS" - printf ' %s Revisá que no expongan datos institucionales.%s\n' "$YELLOW" "$NC" + INST=$(printf '%s\n' "$AUTHORS" | grep -E "$ALLOWLIST_INSTITUCIONAL" || true) + REV=$(printf '%s\n' "$AUTHORS" | grep -Ev "$ALLOWLIST_INSTITUCIONAL" || true) + + if [ -n "$INST" ]; then + printf ' %sAutores institucionales (exentos):%s\n' "$GREEN" "$NC" + while IFS= read -r a; do printf ' - %s\n' "$a"; done <<< "$INST" + fi + if [ -n "$REV" ]; then + printf ' %sAutores a revisar:%s\n' "$YELLOW" "$NC" + while IFS= read -r a; do printf ' - %s\n' "$a"; done <<< "$REV" + printf ' %s Revisá que no expongan datos institucionales.%s\n' "$YELLOW" "$NC" + fi else printf ' %s✓%s sin commits\n' "$GREEN" "$NC" fi