Project

General

Profile

Architecture #13622

Updated by Alexis Mousset about 6 years ago

This lib will be part of 20_cfe_basics. 

 It will allow storing a persisting database of flags that will be usable in the agents. Flags are somehow like persistent conditions but: 

 * They have no expiration date 
 * They are kept when resetting agent state 

 This will allow use cases like executing a command only once on a system. 

 The storage format will be a json file containing: 

 <pre> 
 { 
   "flag_name_1": { "created": "20181008-...." }, 
   "flag_name_2": { "created": "20181008-...." } 
 } 
 </pre> 

 The file is by default in @/var/rudder/agent-data/flags.json@, and configurable in @ncf.conf@. 

 This library should provide methods to: 

 * Load the flags into a variable 
 * Reserve a flag (set the persistent class, fails of already present) 
 * Set a flag 
 * (Get a flag) 
 * (Unset a flag) 

Back