HEX
Server: Apache/2.4.52 (Ubuntu)
System: Linux spn-python 5.15.0-89-generic #99-Ubuntu SMP Mon Oct 30 20:42:41 UTC 2023 x86_64
User: arjun (1000)
PHP: 8.1.2-1ubuntu2.20
Disabled: NONE
Upload Files
File: //snap/certbot/current/usr/share/augeas/lenses/dist/pgbouncer.aug
(*
Module: Pgbouncer
 Parses Pgbouncer ini configuration files.

Author: Andrew Colin Kissa <andrew@topdog.za.net>
 Baruwa Enterprise Edition http://www.baruwa.com

About: License
 This file is licensed under the LGPL v2+.

About: Configuration files
 This lens applies to /etc/pgbouncer.ini See <filter>.

About: TODO
 Create a tree for the database options
*)

module Pgbouncer =
autoload xfm

(************************************************************************
 * Group:                 USEFUL PRIMITIVES
 ************************************************************************)

let comment  = IniFile.comment IniFile.comment_re IniFile.comment_default

let sep = IniFile.sep "=" "="

let eol = Util.eol

let entry_re = ( /[A-Za-z][:#A-Za-z0-9._-]+|\*/)

(************************************************************************
 * Group:                       ENTRY
 *************************************************************************)

let non_db_line = [ key entry_re . sep . IniFile.sto_to_eol? . eol ]

let entry = non_db_line|comment

let title   = IniFile.title IniFile.record_re

let record  = IniFile.record title entry

(******************************************************************
 * Group:                   LENS AND FILTER
 ******************************************************************)

let lns = IniFile.lns record comment

(* Variable: filter *)
let filter = incl "/etc/pgbouncer.ini"

let xfm = transform lns filter