vocount - tally the results of an election
vocount ready snap-directory
vocount mount|umount snap-directory/readyCount-date
vocount --help
Service utility vocount tallies the results of an election, and makes them available for other tools and processes. It does this in separate, staged invocations, with these action arguments:
|
1. |
ready to capture the parameters for the count, and record them in the snapshot store |
||
|
2. |
mount to cascade the votes, sum the results, and make them available for analysis and reporting |
||
|
3. |
umount to undo a prior mount, and free up system resources |
Repeated invocations of mount/umount will re-generate the same results. The results depend only on the files of the snapshot store, and on the particular versions of system software in use. This means that anyone with a copy of the files (obtained through the watchdog interface for instance) may do a re-count, and use the results to verify previous reports.
ready
Capture and record the parameters for the count. This action takes for an argument a snap-directory, containing a snapshot of the voter input as created by the vosnap(1) utility. It stores within that directory any administrative input that will be needed by subsequent ’mount’ actions. In the process it creates a new ready directory, the path of which it prints to standard out:
snap-directory/readyCount-date
In this directory, a symbolic link named ’readyList’ is also created:
snap-directory/readyCount-date/readyList
It points to a ready directory of the electoral register, in which the voter list is to be compiled. It is created as a copy of the ’_readyList_report’ symbolic link (which must already exist) in the register’s snapshot output store:
output-store-base/register-service-name/_readyList_report
mount
Tally the results and make them available. This action takes for an argument a ready directory created by a previous ’ready’ action. It reads the stored voter and administrative input. It dereferences the symbolic link to the ready directory of the electoral register (which must already be mounted as a compiled voter list), and uses it to check the eligibility of voters. It cascades and sums the votes, and writes the results to the database and filebase for other tools and processes to read.
umount
Unmount the results. This action reverses a previous ’mount’ action, erasing the results from the database and filebase. The ready directory and its input data are not deleted, but remain available for re-mounting.
Unlike a mounted file system, a mounted count persists across system re-starts until explictly unmounted. So ’mount’ is something of a misnomer.
Use vosnap(1) to capture the snapshot of voter input, for use by vocount and volist.
Use volist(1) to compile a list of voters, prior to using vocount.
See Votorola(7) for an overview of Votorola.