Génération : instance v1

Contrat : instance.v1.yml
Modules écrits : 28, écartés : 2

Deux couvertures, et elles ne disent pas la même chose

Un seul chiffre ne suffit pas ici, et publier le plus flatteur en laissant croire qu’il désigne l’autre serait exactement le genre de maquillage que ce rapport existe pour empêcher.

ce qu’on mesure

ratio

ce que ça veut dire

opérations Day-2 classées pour génération automatique

97,5 % (39/40)

aucune règle ne demande de les écrire à la main

opérations Day-2 portées par un module que cette génération a écrit

95,0 % (38/40)

un module existe et les appelle

Le second dépend du périmètre demandé autant que du générateur : un module hors périmètre et un module que le modèle refuse de construire comptent pareil ici, et se distinguent dans la section suivante, où chaque écart porte sa raison. C’est là que l’écart entre les deux ratios se lit en entier, module par module.

Ce qui est écrit

  • instance_dashboard_info

  • instance_image

  • instance_image_info

  • instance_ip

  • instance_ip_action

  • instance_ip_info

  • instance_placement_group

  • instance_placement_group_info

  • instance_placement_group_server_info

  • instance_security_group

  • instance_security_group_info

  • instance_security_group_rule

  • instance_security_group_rule_info

  • instance_server

  • instance_server_action

  • instance_server_compatible_type_info

  • instance_server_info

  • instance_server_private_nic

  • instance_server_private_nic_info

  • instance_server_type_availability_info

  • instance_server_type_info

  • instance_server_user_data_info

  • instance_snapshot

  • instance_snapshot_action

  • instance_snapshot_info

  • instance_volume

  • instance_volume_info

  • instance_volume_type_info

Ce qui est écarté, et pourquoi

Un module absent sans explication serait indiscernable d’un module oublié. Chaque écart porte sa raison.

raison

modules

classe WORKFLOW : aucun renderer à ce stade (1)

instance_security_group_rules

instance_server_user_data : le contrat ne décrit aucun champ du corps de SetServerUserData, donc le module ne saurait pas quoi envoyer. Voir les limites du rapport : un requestBody hors application/json y est signalé par le parser. (1)

instance_server_user_data

Comment les modules de gestion comparent

Un module de gestion n’écrit que ce qui diffère, et « diffère » n’a pas le même sens pour un nom et pour une liste de tags. Le type décide ce qu’il peut ; le reste vient d’un override, avec sa raison.

ordered_list est un repli, pas une décision : le contrat ne dit ni l’ordre ni l’unicité d’un tableau. Un paramètre qui y tombe et que l’API réordonne rendra changed à chaque exécution, et c’est ce compte qui rend la dette visible.

stratégie

paramètres

id_list

2

mapping

3

ordered_list

8

scalar

36

Ce que le contrat ne dit pas

Rencontré au rendu, et signalé plutôt que comblé par une supposition.

  • action : 3 valeur(s) du contrat non exposées par override (backup, terminate, enable_routed_ip)

  • arch : aucune description dans le contrat, comblée par override

  • boot_type : aucune description dans le contrat, comblée par override

  • disable_ipv6 : paramètre du contrat masqué par override

  • dynamic_ip_required : aucune description dans le contrat, comblée par override

  • enable_ipv6 : aucune description dans le contrat, comblée par override

  • name : aucune description dans le contrat, comblée par override

  • name : paramètre du contrat masqué par override

  • organization : aucune description dans le contrat, comblée par override

  • private_nics : tableau sans type d’éléments dans le contrat, str par repli

  • project : aucune description dans le contrat, comblée par override

  • public : aucune description dans le contrat, comblée par override

  • public_ips : tableau sans type d’éléments dans le contrat, str par repli

  • security_group : aucune description dans le contrat, comblée par override

  • security_group_rule_id : aucune description dans le contrat, comblée par override

  • server : aucune description dans le contrat, comblée par override

  • tags : aucune description dans le contrat, comblée par override

  • tags : exposé en liste, joint par des virgules (override)

  • tags : tableau sans type d’éléments dans le contrat, str par repli

  • volumes : aucune description dans le contrat, comblée par override

  • volumes : paramètre du contrat masqué par override