Repository navigation
fix(ca-server): commandes d'exploitation sans secret de HSM, et garde de CI contre les tests PostgreSQL ignorés - #27
Merged
Conversation
… de CI contre les tests PostgreSQL ignorés Config::load_without_hsm : ra list, ra approve, ra reject et operators bootstrap-admin n'ouvrent aucun token PKCS#11 et ne gravent aucune adresse dans un certificat. Elles n'exigent plus OPENEIDAS_ISSUING_PIN ni OPENEIDAS_PKI_PUBLIC_URL, ce qui évite de répandre ces valeurs dans les commandes d'exploitation. serve, ceremony et revoke les exigent toujours ; un test le vérifie, sans base, la configuration étant refusée avant toute connexion. Le reste (DSN, journal, durées) est validé comme avant. CI : les suites PostgreSQL s'ignoraient en restant vertes sans OE_CASTORE_TEST_DSN. Un service absent, ou une variable perdue dans un refactoring de workflow, et la CI ne prouvait plus rien sans le dire. L'étape échoue maintenant si la variable manque, si la base ne répond pas, ou si un test écrit « test PostgreSQL ignoré » (sortie lue avec --nocapture).
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Contenu
Deux petits correctifs, indépendants de la pile de PR (#19 à #26), issus du TODO.
Config::load_without_hsmra list,ra approve,ra rejectetoperators bootstrap-adminn'ouvrent aucun token PKCS#11 et ne gravent aucune adresse dans un certificat. Elles n'exigent donc plusOPENEIDAS_ISSUING_PINniOPENEIDAS_PKI_PUBLIC_URL: moins de secrets répandus dans les commandes d'exploitation.serve,ceremonyetrevokeles exigent toujours, ce qu'un test vérifie (sans base : la configuration est refusée avant toute connexion). Le reste (DSN, journal, durées) est validé comme avant.Garde de CI contre les tests PostgreSQL ignorés
Les suites PostgreSQL se gardent avec
OE_CASTORE_TEST_DSNet s'ignorent en restant vertes sans elle : un service absent, ou une variable perdue dans un refactoring de workflow, et la CI ne prouvait plus rien sans le dire. L'étape échoue maintenant :pg_isreadyne répond pas ;--nocapture).À relire en priorité
.github/workflows/ci.ymln'est validée que par le run de CI de cette PR : je n'ai pas de runner GitHub en local. Ce que j'ai vérifié : la syntaxe YAML, et la logique du script rejouée à la main sur deux vraies sorties (variable retirée : 7 messages de saut, code 1 ; variable définie : aucun, code 0). Vérifier que l'étape est bien verte ici, et qu'elle passe au rouge si l'on retire la variable (essai jetable).pg_isreadyest disponible surubuntu-latest(paquetpostgresql-client), mais je ne l'ai pas confirmé sur le runner.Ce qui reste (TODO)
operators recover-admin|audit|reconcilesurload_without_hsm(une ligne chacun).recover-adminavec SoftHSM s'ignore avec un autre message (« softhsm2-util absent ») que cette garde ne couvre pas : installersofthsm2en CI et étendre la garde.Vérifications
cargo fmt --check,cargo clippy --workspace --all-targets -- -D warnings,cargo test --workspace(avec PostgreSQL neuf, 59 suites),cargo audit --ignore RUSTSEC-2023-0071: verts.bootstrap_cli.rs:bootstrap-adminetra listsans PIN ni adresse publique ;serveetrevokerefusent sans l'un ou l'autre, avec le nom de la variable manquante.