Skip to Content
TestingSovelluksen ympäristömuuttujat

Sovelluksen ympäristömuuttujat

OpenFactory voi tallentaa sovellus- ja tilitason ympäristöarvot, salata ne at rest ja renderöidä ne candidate app -VM:ään deployn aikana. Kyseessä on varhainen file-backed secret store, ei hallittu vault.

Laajuus ja etusija

  • Tilitason arvot ovat uudelleenkäytettäviä oletuksia jokaiselle kyseisen tilin sovellukselle.
  • Sovellustason arvot korvaavat saman nimiset tilitason arvot.
  • Managed values kirjoittaa konfiguroitu producer token ja tallentaa avaimen omistavan tuottajan.
  • Muuttunut arvo kasvattaa env_version-arvoa; onnistunut deploy tallentaa käytetyn version. Ero tarkoittaa, että redeploy vaaditaan.

Nimien on oltava uppercase environment identifiers, ne on rajattu 128 merkkiin eivätkä ne saa käyttää varattua etuliitettä OPENFACTORY_. User values on rajoitettu 8 KiB:iin ja sovellus 100 keyhin.

MCP-työnkulku

List operations peittävät arvot aina. Paljasta yksi arvo vain tarvittaessa:

set_app_env( app_id="550e8400-e29b-41d4-a716-446655440000", set={"API_BASE_URL": "https://api.example.internal"} ) list_app_env(app_id="550e8400-e29b-41d4-a716-446655440000") reveal_app_env( app_id="550e8400-e29b-41d4-a716-446655440000", name="API_BASE_URL" )

Sama kaava on käytettävissä nimillä set_account_env, list_account_env ja reveal_account_env. Sovellustason set/delete palauttavat env_version- ja redeploy_hint-arvot; arvon asettaminen ei muuta käynnissä olevaa VM:ää.

REST-pinta

MethodPathPurpose
GET/api/apps/{app_id}/envPeitetty app-key -lista ja version tila
PUT/api/apps/{app_id}/envTransaktionaalinen set/delete app keyille
POST/api/apps/{app_id}/env/revealAuditoidtu plaintext reveal yhdelle app keylle
GET/api/account/envPeitetty account-key -lista
PUT/api/account/envTransaktionaalinen set/delete account keyille
POST/api/account/env/revealAuditoidtu plaintext reveal yhdelle account keylle
PUT/api/apps/{app_id}/env/managedKonfiguroitu producer julkaisee managed keys
DELETE/api/apps/{app_id}/env/managed/{name}Producer poistaa omistamansa managed keyn

Käyttäjäpinnat pakottavat ratkaistun omistajakontekstin. Managed endpoints käyttävät <kid>.<secret> bearer credentialia operaattorin konfiguroimasta producer-token-tiedostosta; ilman tiedostoa producer API palauttaa unavailable.

Deploy-käyttäytyminen

Deployn aikana backend purkaa tilitason arvot, päällekkäistää sovellustason arvot, lisää alustan runtime fields -kentät ja kirjoittaa /etc/openfactory/app.env VM:ään mode 0600. Prosessi käynnistetään kyseisellä tiedostolla ympäristönä. Jos salauksen purku, tiedoston toimitus tai käynnistys epäonnistuu, candidatea ei promootata.

Turvaraja

  • Tallennetut arvot käyttävät Fernet-salausta. Operaattorin on toimitettava ja suojattava OPENFACTORY_ENV_MASTER_KEY; avaimen menettäminen tai vaihtaminen tekee olemassa olevista arvoista purkamattomia.
  • List responses on peitetty. Nimenomaiset reveals ja mutaatiot lisäävät JSONL audit event -tapahtuman.
  • Nykyinen storage ja audit trail ovat paikallisia tiedostoja. Ne eivät tarjoa hardware-backed keys -tukea, multi-party approval -hyväksyntää, tamper-evident loggingia, automatic rotationia tai disaster-recovery guarantee -takuuta.
  • Sovellus- ja deploy-lokit eivät vielä tarjoa täydellistä secret-redaction boundarya. Prosessi, joka tulostaa ympäristönsä, credential-bearing URL:n tai secretin errorissa, voi paljastaa sen lokeissa ja test evidence -aineistossa.

Älä siksi käytä tätä preview storea production credentials -tarkoituksiin ennen kuin deploymentissä on riippumattomat access controls, varmuuskopiointi- ja palautustestit, log-redaction validation, retention rules ja dokumentoitu key-rotation procedure. Älä koskaan sijoita secrets-arvoja recipes-, source code-, commands-, URLs-, test descriptions- tai assertion expectations -kohtiin.

Katso App deployment candidate promotion flow -kulusta.