pasteScript templates to generate OpenBSD configuration's files
Switch branches/tags
Nothing to show
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.



PasteScript templates to generate OpenBSD configuration's files.

This project uses Python tools to automate some tasks and produce some configuration's file


  • carped interface
  • carped vlan interface

How to play with me

python -d

Now you have new entries in bin/

bin/paster create --list-templates
(thd)athena:OPENBSD jpcw$ bin/paster create --list-templates
Available templates:
  openbsd_carp_iface:  An Openbsd carp interface.
  openbsd_carp_vlan:   An Openbsd vlan carp interface.

We can now play with templates

(thd)athena:OPENBSD jpcw$ bin/paster create -t openbsd_carp_iface foo
Selected and implied templates:
  openbsd.templates#openbsd_carp_iface  An Openbsd carp interface.

  egg:      foo
  package:  foo
  project:  foo
Enter cidr_ip (A CIDR IP address : ['']:
Enter desc (description (max 48 bytes)) ['a default description']: Lan interface
Enter vhid (Virtual Hostname ID) ['']: 1
Enter carp_group (Add this iface to another carpgroup) ['']:
Creating template openbsd_carp_iface
Creating directory ./foo
  Recursing into master
    Creating ./foo/master/
    Copying hostname.carp+vhid+_tmpl to ./foo/master/hostname.carp1
  Recursing into slave
    Creating ./foo/slave/
    Copying hostname.carp+vhid+_tmpl to ./foo/slave/hostname.carp1

Let we check:

(thd)athena:OPENBSD jpcw$ cat foo/master/hostname.carp1
inet vhid 1 carpdev em1 pass secure description "Lan interface"
(thd)athena:OPENBSD jpcw$ cat foo/slave/hostname.carp1
inet vhid 1 carpdev em1 advskew 100 pass secure description "Lan interface"

templates are intercative for a minimum variables, others came from default values in src/openbsd/templates/etc/defaults.cfg

but you could set thems like this

bin/paster create -t openbsd_carp_iface foo advskew=80

Availables vars are :

  • iface
  • cidr_ip
  • vhid
  • desc
  • carp_group
  • advskew
  • password
  • vlan
  • sames as above
  • vlandev

Please note that for carp vlan interface we assume you want the same id on vhid and vlan_id to be consistent

Then if you play with vhid = 8 the carpdev will be vlan8, and template will create hostname.vlan8