Salt Managed Systems

Last Updated: {{ time }}
Based On: {{ revinfo }}

The validation lab uses salt to manage x86 servers in the lab. This page lets you drill down on what we are managing.

LAVA Instances

{% for inst,hosts in lavaconfig.iteritems() %}

{{ inst }}

{% for host in hosts %} {{ host }} {% endfor %}
{% endfor %}

Lab Process Info

Ideally changes people need in the lab can be done via salt. Once a change has been merged into our salt-states repository, it can be deployed to a given host(s) from our ssh gateway (validation.linaro.org) with:

# as root:
cd /srv/salt
bzr pull
salt 'hostname' state.highstate
The remainder of this section outlines some common examples:

User Configuration for a System

Users on each system in the lab are kept in sync with launchpad groups. If you simply need a user to be added to a system, then put it in the proper launchpad group, and the cronjob on that system will sync the user within an hour of the change.

If you need to change the launchapd group(s) allowed, then submitting a merge proposal to our salt-states repo is ideal.

Changing who needs sudo access is managed in the same way using the same file as the user management process.

LAVA Configuration Changes

We keep things like device configs and url mapping files in our salt-states repository. Submitting a merge proposal is the best way to get the team to make a configuration change for you. The files are organized in a directory layout that's "HOSTNAME/INSTANCE_NAME".