Ir al contenido

Secretos del Repositorio

En Parlant~ utiliza GitHub Actions para compilar los binarios de lanzamiento para Windows, macOS y Linux. El pipeline de CI necesita credenciales para la firma de código, la firma de actualizaciones, el escaneo de virus y la URL del servidor relay multijugador. Estos se almacenan como secretos del repositorio de GitHub — valores cifrados que GitHub inyecta en las ejecuciones de los workflows pero que nunca muestra.

Si haces un fork de En Parlant~ y quieres producir tus propias compilaciones firmadas, necesitarás configurar tus propios secretos. Las compilaciones seguirán funcionando sin ellos, pero los binarios no estarán firmados, las actualizaciones no se verificarán y el paso de escaneo de VirusTotal se omitirá.

Azure Trusted Signing (firma de código para Windows)

Sección titulada «Azure Trusted Signing (firma de código para Windows)»

Los usuarios de Windows reciben una advertencia de SmartScreen (“Windows protegió su PC”) cuando ejecutan un .exe sin firmar. La firma de código elimina esa advertencia e indica a Windows que el binario proviene de un editor verificado.

En Parlant~ utiliza Azure Trusted Signing para esto. La compilación de Tauri invoca trusted-signing-cli durante el paso de compilación de Windows, que se comunica con Azure para firmar el ejecutable.

SecretoPropósito
AZURE_CLIENT_IDID de aplicación del service principal
AZURE_CLIENT_SECRETCredencial del service principal
AZURE_TENANT_IDTenant de Azure AD
AZURE_SUBSCRIPTION_IDSuscripción de Azure
AZURE_CODE_SIGNING_ACCOUNTNombre de la cuenta de Trusted Signing
AZURE_CODE_SIGNING_ENDPOINTURL del endpoint de Trusted Signing
AZURE_CODE_SIGNING_PROFILENombre del perfil de certificado

Para configurar el tuyo propio: Crea una cuenta de Azure, configura un recurso de Trusted Signing, crea un perfil de certificado y registra un service principal con los permisos apropiados. El inicio rápido de Trusted Signing de Microsoft te guía a través del proceso.

Si omites esto: Las compilaciones de Windows seguirán funcionando, pero tus usuarios serán recibidos por la temida pantalla azul de SmartScreen — ya sabes cuál. Todos hemos hecho clic en “Ejecutar de todos modos” y esperado lo mejor. Las compilaciones de macOS y Linux no se ven afectadas.

El actualizador integrado de Tauri verifica que las actualizaciones provengan del editor real, no de una fuente manipulada. Cuando la aplicación busca una nueva versión, descarga la actualización y verifica su firma contra una clave pública incorporada en la aplicación. La clave privada que crea esas firmas reside en el CI.

SecretoPropósito
TAURI_PRIVATE_KEYClave privada Ed25519 para firmar actualizaciones
TAURI_KEY_PASSWORDContraseña que protege la clave privada

Para configurar el tuyo propio: Genera un par de claves con pnpm tauri signer generate. Coloca la clave privada y la contraseña en los secretos de tu repositorio, y la clave pública en tauri.conf.json bajo plugins.updater.pubkey.

Si omites esto: La aplicación se compila correctamente, pero el actualizador automático no funcionará. Los usuarios tendrían que descargar las nuevas versiones manualmente.

Después de compilar los artefactos de lanzamiento, el pipeline de CI sube cada binario (.exe, .dmg, .deb, .rpm, .AppImage) a VirusTotal para un escaneo automatizado de malware. Esto es una señal de confianza — los usuarios pueden verificar que las compilaciones oficiales están limpias.

SecretoPropósito
VIRUSTOTAL_API_KEYClave de API para la API v3 de VirusTotal

Para configurar el tuyo propio: Crea una cuenta gratuita de VirusTotal y copia tu clave de API desde tu perfil.

Si omites esto: El paso de escaneo de VirusTotal falla silenciosamente. Las compilaciones siguen teniendo éxito y se publican normalmente — simplemente no tendrás resultados de escaneo automatizados.

La URL del servidor relay multijugador se inyecta en tiempo de compilación para que la aplicación sepa dónde conectarse para las partidas en línea.

SecretoPropósito
VITE_RELAY_URLURL de WebSocket para el servidor relay multijugador (p. ej., wss://your-relay.fly.dev)

Para configurar el tuyo propio: Despliega tu propio servidor relay (consulta la guía de configuración del Servidor Multijugador) y establece esta variable con su URL pública.

Si omites esto: El modo multijugador sigue funcionando si configuras la URL del relay en los ajustes de la aplicación en tiempo de ejecución. Este secreto solo establece el valor predeterminado para que los usuarios no tengan que configurarlo manualmente.

Grupo de SecretosNecesario para¿Se puede omitir?
Azure (7 secretos)Compilaciones firmadas de WindowsSí — las compilaciones funcionan, los usuarios reciben la advertencia de SmartScreen
Tauri (2 secretos)Actualizador automáticoSí — las compilaciones funcionan, sin actualización automática
VirusTotal (1 secreto)Informes de escaneo de malwareSí — las compilaciones funcionan, sin resultados de escaneo
URL del Relay (1 secreto)Servidor multijugador predeterminadoSí — los usuarios pueden configurarlo en los ajustes de la aplicación

Ninguno de estos secretos es necesario para compilar y ejecutar la aplicación localmente. Solo importan para las compilaciones de lanzamiento mediante CI/CD.