CI Docs === Build Servers --- ### Public Servers 3 Public Build Servers * Windows * MacOS * Linux Can run on any branch Only contains build tools Never contains credentials Running on V-Servers on a public Root-Server ### Internal Servers 3 Internal Build Servers * Windows * MacOS * Linux Used for Signing and Deployment Signing Key are local on the Internal Build Servers Only run on CD Branches Protected Enviroments Manual Rollouts CD Docs === Borepin and BFFH are deployed in 3 stages * Internal * Beta * Production Internal(innov) Stage --- Tag Borepin: alpha Tag BFFH: alphav0.1.0- Borepin deploys to "FabAccess Testing - Intern and Beta" BFFH deploys to docker-tag "internal" Versionnumber is JobID Internal is only for "InnovisionLab" Foo builds --- Tag BFFH: `v0\.[0-9]+\.[0-9]+` * Keine Stabilitätsgarantie * Minor version Client<->Server **muss** ident sein * Config kann inkompatibel sein letzte alpha: `v0.N.M` Bar builds ----- Tag BFFH: `v0.X.Y` X > N * Begrenzte Stabilitätsgarantie * API is nie wieder broken bis zur v0.X+2.0 * Automatische updates *sollten* nichts kaputt machen * Wenn schon nicht 1a kompatibel dann wenigstens konvertieren * ... * ... #### Test builds Tag BFFH: `v0.X.Y+1-<git tag>` Stable release --- Tag BFFH: `v1.0.0` * Was auf uns dependet geht nicht kaputt Beta Stage --- Branche Borepin: beta Branche BFFH: beta Borepin deploys to "FabAccess - Beta" BFFH deploys to docker-tag "beta" Versionnumber is JobID Beta is for external Testers Production Stage --- Branche Borepin: main Branche BFFH: main Borepin deploys to "FabAccess - Production" BFFH deploys to docker-tag "latest" Versionnumber is Git-Tag Production is for all Users