Plus que 4 forgerons en gtest, un candidat forgeron attend une invitation sur la gtest

Suite à la perte du nœud forgeron de @BulmAnanaBelle (voir ce topic), nous n’avons plus que 4 forgerons sur la GTest :

@HugoTrentesaux, @Moul, @Rebirth35 et @Sleoconnect.

Sur le groupe Telegram des forgerons, @Frederic_LASSAVE attend de recevoir une invitation pour devenir forgeron, afin de se faire la main sur la GTest avant, peut-être, de devenir éventuellement forgeron sur la Ğ1 à l’avenir.

@BulmAnanaBelle l’avait invité, mais entre-temps, son nœud a subi un incident et elle ne fait donc plus partie des forgerons actifs. Son invitation a par conséquent été supprimée par la blockchain.

Est-ce que l’un de vous quatre pourrait inviter @Frederic_LASSAVE (identité 17479), afin que nous ayons un forgeron de plus sur la GTest ?

Merci !

gcli --url wss://gtest.pagu.re --no-indexer -v HugoGtest smith invite fredlassave

:partying_face: :partying_face: :partying_face: Merci !!! J’ai accepté l’invitation :hugs:
Plus qu’à obtenir les certifications :grin:

Je rebondis sur le cheminement de @Frederic_LASSAVE , pour mon pod, actuellement il est en réseau local en mode light si j’ai bien compris ce que m’a raconté mon @Claude lors de l’installation.

Mais Il y a 2 éléments nouveaux :

  • Maintenant nous travaillons sur la Gtest sur le dunipod
  • dimanche prochain je vais en Ardèche pour environ 2 semaines donc, travail réduit sur Claude code, ouf je vais laisser un peu de place, mais aussi c’est l’occasion de voir mon serveur a distance.

Aussi j’en profite pour savoir comment faire pour

  • d’une part le sécuriser ;
  • le mettre a jour.
  • installer gclic : pour le moment je n’ai pas compris comment faire ;
  • puis l’inscrire officiellement.

Je devrais pouvoir travailler la dessus avec Claude par navigateur jusqu’à vendredi.

@elois

Certifié !

Bonsoir

j’ai suivi le pad de @BulmAnanaBelle 🧬 Intégrer la Toile de Confiance et devenir Forgeron (Smith) sous Duniter v2s - CodiMD pour créer mon compte apprenti forgeron

j’ai un serveur avec dunipod dessus en version light si j’ai bien compris @Claude , qui tourne actuellement en local
donc l’idée est de pouvoir passer en forgeron Gtest sur dunipod

j’ai donc créé mon compte avec G1cli
g1KGpREm7A5YMJ9ZBMMgJkQdLPrTbETC6j3Vqa2StJNcZSUAa
et ai pu verser des GT dessus

je pense que l’étape suivante est une invitation
puisque je ne vois pas mon compte sur duniter panel

:face_blowing_a_kiss:

Je n’avais pas encore communiqué à ce sujet, mais j’ai effectivement prévu que le nœud Duniter associé à une instance Dunipod puisse être forgeron.

Pour cela, il faut ajouter la variable suivante dans le fichier compose.env :

DUNITER_VALIDATOR=true

Lors d’une mise à jour de votre instance Dunipod, dunipodctl vérifiera automatiquement si le nœud Duniter associé doit également être mis à jour.

Si c’est le cas, dunipodctl vérifiera que votre nœud forgeron est bien hors ligne et refusera de procéder à la mise à jour dans le cas contraire.

En revanche, si le nœud Duniter associé à l’instance Dunipod n’a pas besoin d’être mis à jour, dunipodctl s’assurera de ne pas l’interrompre pendant la mise à jour de Dunipod.

Et pour ceux qui utilisent nixOS, il faut appliquer la configuration:

services.dunipod.duniter.validator = true;

ok

c’est ajouté

concernant duniter panel
@BulmAnanaBelle me dit que je peux prendre un compte test deja existant!
donc g1P5ovLSTM4czQWXaSYTdgfyxaaLYRExrY9ViJcnGaDxTdarj

on verra demain !

Merci !! :folded_hands:

Merci @HugoTrentesaux :folded_hands:
Est ce que tu pourrais aussi me certifier, stp ? :slight_smile:

Tu devrais passer Smith avec ma certification et celle de @Sleoconnect :slight_smile:
Welcome !

Hello,

J’ai retrouvé mon 2ème compte Gtest membre que j’ai invité en tant que Smith pour le faire forger sur la machine où j’ai mis Dunipod en Gtest.

g1KuS4LKQhE3hqHF2biZhKkXNZN1hnvSkKRRKaKLTuVXeiWGw

J’ai certifié Chiara et Fred ces derniers jours et @Sleoconnect a certifié @Frederic_LASSAVE qui n’a plus qu’à passer online.
Demain, je pourrais passer online si tout va bien avec un autre Smith Gtest sur le dunipod :slight_smile:

Merci beaucoup !! :folded_hands:
Je regarde pour passer online ^^

C’est parti !!! :partying_face:
(supervision de mon Home Assistant :slightly_smiling_face: )

ouah tu peux partager ton code pour Home Assistant ? @Sleoconnect pourra faire pareil chez nous :wink:

Je ne sais comment dire que c’est une réponse de Gemini ? :sweat_smile: (il m’a semblé lire sur le forum que l’on devait indiquer quand c’était un IA qui avait fait le texte)

Voici un message prêt à être copié-collé sur le forum Duniter. Il est clair, complet et détaille à la fois le YAML de la carte et la façon d’obtenir ces capteurs précis (via les appels RPC de Duniter v2 combinés à Docker/Glances).


Titre suggéré :

[Partage] Monitoring d’un nœud forgeron Duniter v2 dans Home Assistant (Carte Lovelace & Sensors)


Contenu du sujet :

Bonjour à tous,

À la demande d’AnnaBelle, je partage ici la configuration de mon tableau de bord Home Assistant pour monitorer mon nœud forgeron ĞTest (qui tourne sous Docker avec Glances sur ma machine locale).

Le monitoring repose sur deux volets :

  1. Les capteurs (sensors) dans Home Assistant (qui interrogent le RPC JSON Substrate local http://127.0.0.1:9944 et le conteneur Docker).
  2. Le code YAML de la carte Lovelace pour le rendu visuel.

1. Configuration des Capteurs (configuration.yaml)

Dans votre fichier configuration.yaml (ou dans votre dossier packages/), ajoutez ces capteurs REST pour alimenter les entités de la carte :

sensor:
  # Rôle du nœud (Full node vs Authority / Forgeron)
  - platform: rest
    name: "Duniter GTest Node Role"
    unique_id: duniter_gtest_node_role
    resource: "http://127.0.0.1:9944"
    method: POST
    headers:
      Content-Type: "application/json"
    payload: '{"id":1, "jsonrpc":"2.0", "method": "system_nodeRoles", "params":[]}'
    value_template: >
      {% if 'Authority' in value_json.result %}
        Authority (Forgeron)
      {% else %}
        Full Node
      {% endif %}
    scan_interval: 60

  # Nombre de pairs connectés (Peers)
  - platform: rest
    name: "Duniter GTest Peers"
    unique_id: duniter_gtest_peers
    resource: "http://127.0.0.1:9944"
    method: POST
    headers:
      Content-Type: "application/json"
    payload: '{"id":1, "jsonrpc":"2.0", "method": "system_health", "params":[]}'
    value_template: "{{ value_json.result.peers }}"
    unit_of_measurement: "pairs"
    scan_interval: 30

  # État de synchronisation du nœud
  - platform: rest
    name: "Duniter GTest Syncing"
    unique_id: duniter_gtest_syncing
    resource: "http://127.0.0.1:9944"
    method: POST
    headers:
      Content-Type: "application/json"
    payload: '{"id":1, "jsonrpc":"2.0", "method": "system_health", "params":[]}'
    value_template: >
      {% if value_json.result.isSyncing %}
        En synchronisation
      {% else %}
        Synchronisé
      {% endif %}
    scan_interval: 30

  # Dernier bloc validé (Best block)
  - platform: rest
    name: "Duniter GTest Best Block"
    unique_id: duniter_gtest_best_block
    resource: "http://127.0.0.1:9944"
    method: POST
    headers:
      Content-Type: "application/json"
    payload: '{"id":1, "jsonrpc":"2.0", "method": "chain_getHeader", "params":[]}'
    value_template: "{{ value_json.result.number | int(base=16) }}"
    scan_interval: 10

  # Blocs forgés par l'identité (Authored blocks)
  # À adapter : peut être interrogé via l'extrinsèque / RPC ou via un script / commande curl
  - platform: rest
    name: "Duniter GTest Authored Blocks"
    unique_id: duniter_gtest_authored_blocks
    resource: "http://127.0.0.1:9944"
    method: POST
    headers:
      Content-Type: "application/json"
    payload: '{"id":1, "jsonrpc":"2.0", "method": "system_syncState", "params":[]}'
    value_template: "{{ value_json.result.currentBlock | default(0) }}"
    scan_interval: 60

binary_sensor:
  # Clés de session chargées en mémoire du nœud (hasSessionKeys)
  - platform: rest
    name: "Duniter GTest Keys Valid"
    unique_id: duniter_gtest_keys_valid
    resource: "http://127.0.0.1:9944"
    method: POST
    headers:
      Content-Type: "application/json"
    # Remplacez la chaîne par votre concaténation hexadécimale de vos 4 session keys (128 octets)
    payload: '{"id":1, "jsonrpc":"2.0", "method": "author_hasSessionKeys", "params":["0xVOS_CLES_CONCATENEES"]}'
    value_template: "{{ value_json.result == true }}"
    scan_interval: 300

Note :

  • Pensez à ajuster l’IP locale (http://127.0.0.1:9944 ou l’IP du serveur hébergeant Docker).
  • Le nœud Duniter doit exposer son port RPC au réseau local ou être sur le même sous-réseau Docker (--rpc-methods Unsafe ou Safe selon l’accès aux méthodes RPC).
  • Les ressources hardware (CPU, RAM, état up/down du conteneur) remontent automatiquement via l’intégration Glances ou l’intégration Docker native.

2. Code YAML de la carte (Dashboard Lovelace)

Une fois les entités créées et Home Assistant rechargé, vous pouvez ajouter une carte Manuel (Code) dans votre tableau de bord :

type: vertical-stack
cards:
  - type: heading
    heading: Nœud Duniter ĞTest

  - type: entities
    title: État du nœud
    show_header_toggle: false
    entities:
      - entity: sensor.duniter_gtest_node_role
        name: Rôle du nœud
        icon: mdi:shield-account
      - entity: binary_sensor.duniter_gtest_keys_valid
        name: Clés de session
        icon: mdi:key-check
      - entity: sensor.duniter_gtest_authored_blocks
        name: Blocs forgés
        icon: mdi:hammer-wrench
      - entity: sensor.duniter_gtest_syncing
        name: Synchronisation
        icon: mdi:sync
      - entity: sensor.duniter_gtest_peers
        name: Pairs connectés
        icon: mdi:account-network
      - entity: sensor.duniter_gtest_best_block
        name: Dernier bloc
        icon: mdi:cube-outline

  - type: gauge
    name: Pairs connectés
    entity: sensor.duniter_gtest_peers
    needle: true
    severity:
      green: 3
      yellow: 1
      red: 0
    min: 0
    max: 15

  - type: history-graph
    title: Bloc Duniter (24h)
    hours_to_show: 24
    entities:
      - entity: sensor.duniter_gtest_best_block
        name: Best Block

En espérant que ça serve à d’autres forgerons qui utilisent Home Assistant pour surveiller leur infrastructure !

Je suis vraiment un feignant :sweat_smile: , mais le coeur y est :grin:

Bonjour Éloïs,

je viens d’accepter l’invitation de @BulmAnanaBelle

il me faudrait maintenant 3 certifications s’il vous plait pour la Gtest
suis sur dunipod test

@Moul @Frederic_LASSAVE @HugoTrentesaux @Sleoconnect @Rebirth35

:smiling_face_with_three_hearts:

Fait ! ^^

Est-ce que c’est également acceptable pour le réseau de prod de mettre le nœud associé comme forgeron ?

Oui, si j’ai prévu ce mode, c’est parce qu’il n’y a pas de raison de l’interdire en production. Je vous recommande cependant d’attendre la prochaine version de Dunipod (0.17), afin que je puisse améliorer la documentation et ajouter quelques vérifications de sécurité pour m’assurer, par exemple, que le nœud n’expose pas son API RPC publiquement.

Hello,

J’ai fait l’install Gtest avec mon dunipod de test mis à jour :slight_smile:
Tu peux vérifier que mon noeud forgeron n’expose pas son API RPC publiquement @elois ?
Merci :folded_hands: