events:fusion18:tally

At Fusion 2018 we ran a two camera setup for recording only. With the flight cases for room 1 and room 2 came two tallycoms whose config differed from their label and whose config was inconsistent.

Status

device ipv4 /etc/issue config
tallycom2-1 10.73.2.15/16 Raspbian GNU/Linux 9 partially ansibilised, please redo completely for next event
tallycom3-2 10.73.2.17/16 (should be 10.73.3.16/16) Raspbian GNU/Linux 8 partially ansibilised, please redo completely for next event

Getting voctolight on both tallycoms to (manually) work took unnecessarily much time. It boils down to being new to the matter, wrong labels, wrong config and different behaviour after correcting the config, due to different base OS versions (https://www.raspberrypi.org/forums/viewtopic.php?t=187225).

Step for step rebuild

This section describes how to (re-)setup a tallycom from scratch, that should enable a VOC rookie with a linux laptop to go right ahead. WARNING: Due to time constraints no tallycom was actually re-flashed and the steps below are incomplete. If anything, they should be seen as a rough guide. Feel free to extend.

1. Prerequisites
  1. Ensure that you have access to this wiki. If you haven't, you can't read this. :brain_explosion:
  2. If DHCP doesn't work, have someone from the VOC team reserve and hand you a 10.73.100.{1..254}/16 address. Configure it manually.
    IP: 10.73.100.X
    SNM: 255.255.0.0
    GW: 10.73.0.254
    DNS: 10.73.0.254
  3. Install ansible and git
    user@laptop$ sudo {dnf,yum,apt-get} install ansible git
2. Flash latest Raspberry lite
  1. Download + unzip the latest Raspbian lite - https://downloads.raspberrypi.org/raspbian_latest (at the time of writing April 2018)
    WARNING: 350 MB - A lot in case of shitty/shared uplink…
    user@laptop$ cd ~/Downloads
    user@laptop$ wget http://director.downloads.raspberrypi.org/raspbian_lite/images/raspbian_lite-2018-04-19/2018-04-18-raspbian-stretch-lite.zip
  2. Unpack and write the Raspbian image to a microSD card (replace /dev/sdX with the correct device name)
    More details here: https://www.raspberrypi.org/documentation/installation/installing-images/linux.md
    user@laptop$ cd ~/Downloads
    user@laptop$ unzip -p 2018-04-18-raspbian-stretch-lite.zip | sudo dd of=/dev/sdX bs=4M conv=fsync
3. Setup ansible + VOC cm repo
  1. Install ansible and git
    user@laptop$ sudo {dnf,yum,apt-get} install ansible git
  2. Clone the VOC cm repo
    user@laptop$ mkdir -p ~/Documents/voc/
    user@laptop$ cd ~/Documents/voc/
    user@laptop$ git clone https://github.com/voc/cm.git
    OR
    user@laptop$ git clone git@mng.ber.c3voc.de:cm
4. Run ansible
  1. Get acquainted with the VOC Ansible repo structure
  2. Checkout the feature/tally-pis branch (for now)
    user@laptop$ cd ~/Documents/voc/cm/
    user@laptop$ git checkout feature/tally-pis
  3. Check if the event inventory file contains correct mapping of tallycom IP to the variables that end up in the voctolight config
    user@laptop$ egrep '(tally|cam)' ~/Documents/voc/cm/ansible/event 
    [tally-pis]
    10.73.1.15 cam=cam2 encoder=encoder1.lan.c3voc.de
    10.73.1.16 cam=cam3 encoder=encoder1.lan.c3voc.de
    10.73.2.15 cam=cam2 encoder=encoder2.lan.c3voc.de
    10.73.2.16 cam=cam3 encoder=encoder2.lan.c3voc.de
    10.73.3.16 cam=cam3 encoder=encoder3.lan.c3voc.de
    10.73.4.15 cam=cam2 encoder=encoder4.lan.c3voc.de
    10.73.4.16 cam=cam3 encoder=encoder4.lan.c3voc.de
    #10.73.3.15 cam=cam1 encoder=encoder3.lan.c3voc.de
  4. Check/extend the roles to be applied to the tallycoms
    user@laptop$ cat ~/Documents/voc/cm/ansible/tally-pis.yml 
    ---
      - hosts: tally-pis
        roles:
          - { role: common, tags: ['common'] }
          - { role: tally, tags: ['tally'] }
  5. Run on multiple tallycoms - WARNING: placeholder only
    user@laptop$ cd ~/Documents/voc/cm/
    user@laptop$ ./ansible-playbook-keepass -u voc –ask-pass –become –become-method=sudo –ask-become-pass \
    --inventory-file event \
    --tree tally \
    -l 10.73.1.15,10.73.1.16,10.73.2.15,10.73.2.16,10.73.3.16,10.73.4.15,10.73.4.16 \
    -t tally \
    tally-pis.yml

Conclusion

The tallycoms were in an undefined state. They should either be checked prior to sending them out to the next event or a solution should be provided to quickly reset them at the event. One solution could be to have (pre-baked) working images per device (on e.g. the local encoder), which just need to be flashed to a microSD card, stuck back into the tallycom and $profit. If pre-baked images seem overkill, the process of flashing them with a base OS and running ansible against them should be made more straight forward/documented better.

Sources/Hints

  • events/fusion18/tally.txt
  • Last modified: 2024/03/31 13:09
  • by kunsi