salt-api 0.6.0

salt-api inches closer to prime-time with 0.6.0. This release adds the beginnings of a universal interface for accessing Salt components via the tried and true method of passing low-data to functions (a core component of Salt's remote execution and state management).

Low-data interface

A new view accepts :http:post: requests at the root URL that accepts raw low-data as :http:post: data and passes that low-data along to a client interface in Salt. Currently only LocalClient and RunnerClient interfaces have been implemented in Salt with more coming in the next Salt release.

External authentication

Raw low-data can contain authentication credentials that make use of Salt's new external_auth system.

The following is a proof-of-concept of a working eauth call. (It bears repeating this is a pre-alpha release and this should not be used by anyone for anything real.)

% curl -si localhost:8000 \
    -d client=local \
    -d tgt='*' \
    -d fun='test.ping' \
    -d arg \
    -d eauth=pam \
    -d username=saltdev \
    -d password=saltdev

Participation

salt-api is just getting off the ground so feedback, questions, and ideas are critical as we solidify how this project fits into the overall Salt infrastructure management stack. Please get involved by filing issues on GitHub, discussing on the mailing list, and chatting in #salt-devel on Freenode.