#!/bin/bash # Simple script to create OVS database and start ovsdb-server # Configuration DATABASE=${DATABASE:-"/etc/openvswitch/conf.db"} DBSCHEMA="/usr/share/openvswitch/vswitch.ovsschema" DB_SOCKET=${DB_SOCKET:-"/var/run/openvswitch/db.sock"} RUNDIR="/var/run/openvswitch" # Create run directory mkdir -p "$RUNDIR" # Create database if it doesn't exist if [ ! -e "$DATABASE" ]; then echo "Creating database: $DATABASE" ovsdb-tool create "$DATABASE" "$DBSCHEMA" fi # Check if database needs conversion if [ "$(ovsdb-tool needs-conversion "$DATABASE" "$DBSCHEMA")" = "yes" ]; then echo "Converting database: $DATABASE" ovsdb-tool convert "$DATABASE" "$DBSCHEMA" fi # Start ovsdb-server echo "Starting ovsdb-server..." exec ovsdb-server \ --remote=punix:"$DB_SOCKET" \ --remote=db:Open_vSwitch,Open_vSwitch,manager_options \ --pidfile \ --detach \ "$DATABASE"