• Stars
    star
    246
  • Rank 164,726 (Top 4 %)
  • Language
    Python
  • License
    Other
  • Created over 11 years ago
  • Updated 3 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A library and stand-alone CLI tools to access a salt-api instance

Pepper

https://travis-ci.com/saltstack/pepper.svg?branch=develop https://img.shields.io/badge/license-Apache2-blue.svg?maxAge=3600

Pepper contains a Python library and CLI scripts for accessing a remote salt-api instance.

pepperlib abstracts the HTTP calls to salt-api so existing Python projects can easily integrate with a remote Salt installation just by instantiating a class.

The pepper CLI script allows users to execute Salt commands from computers that are external to computers running the salt-master or salt-minion daemons as though they were running Salt locally. The long-term goal is to add additional CLI scripts maintain the same interface as Salt's own CLI scripts (salt, salt-run, salt-key, etc).

It does not require any additional dependencies and runs on Python 2.5+ and Python 3. (Python 3 support is new, please file an issue if you encounter trouble.)

Installation

pip install salt-pepper

Usage

Basic usage is in heavy flux. You can run pepper using the script in %PYTHONHOME%/scripts/pepper (a pepper.cmd wrapper is provided for convenience to Windows users).

export SALTAPI_USER=saltdev SALTAPI_PASS=saltdev SALTAPI_EAUTH=pam
pepper '*' test.ping
pepper '*' test.kwarg hello=dolly

Examples leveraging the runner client.

pepper --client runner reactor.list
pepper --client runner reactor.add event='test/provision/*' reactors='/srv/salt/state/reactor/test-provision.sls'

Configuration

You can configure pepper through the command line, using environment variables or in a configuration file $HOME/.pepperrc with the following syntax :

[main]
SALTAPI_URL=https://localhost:8000/
SALTAPI_USER=saltdev
SALTAPI_PASS=saltdev
SALTAPI_EAUTH=pam

Contributing

Please feel free to get involved by sending pull requests or join us on the Salt mailing list or on IRC in #salt or #salt-devel.

This repo follows the same contributing guidelines as Salt and uses separate develop and master branches for in-progress additions and bug-fix changes respectively.

More Repositories

1

salt

Software to automate the management and configuration of any infrastructure or application at scale. Get access to the Salt software package repository here:
Python
14,092
star
2

salt-bootstrap

Generic Salt Bootstrap Script
Shell
925
star
3

kitchen-salt

SaltStack provisioner for test-kitchen
Ruby
200
star
4

salt-winrepo-ng

Jinja templated winrepo
SaltStack
106
star
5

salt-winrepo

Salt Windows Software Package Manager Repo
SaltStack
105
star
6

libnacl

Python ctypes wrapper for libsodium
Python
76
star
7

salt-ci-images

Salt states used to create AWS AMI's
HCL
62
star
8

pytest-helpers-namespace

PyTest Helpers Namespace
Python
56
star
9

salt-enhancement-proposals

Let's Enhance Salt!
37
star
10

salt-windows-msi

Windows MSI installer build toolkit
C#
30
star
11

community

SaltStack Community
30
star
12

salt-pylint

PyLint Plugins Used In SaltStack's Projects
Python
28
star
13

relenv

Re-producible and Re-relocatable Python Environments
Python
23
star
14

salt-extension

Tool to simplify the creation of a new salt extension
Jinja
21
star
15

pytest-salt-factories

PyTest Salt Factories Plugin
Python
19
star
16

salt-ext-modules-vmware

Salt Extension Modules for VMware
Python
19
star
17

salt-get-started

Content source files for the SaltStack Get Started Guide.
17
star
18

awesome-saltproject

A collaborative curated list of awesome Salt Project resources, tutorials and other salted stuff (originally maintained by the since-archived repo https://github.com/hbokh/awesome-saltstack)
HTML
17
star
19

pytest-shell-utilities

Simple pytest(pytest.org) plugin which provides fixtures and code to help with running shell commands on tests
Python
14
star
20

salt-describe

Automated infrastructure-as-code using Salt
Python
13
star
21

salt-analytics-framework

Salt Analytics Framework
Python
9
star
22

salt-pack-py3

Shell
8
star
23

pop-awesome

Awesome POP projects
7
star
24

salt-auto-pack

SaltStack
7
star
25

pip-tools-compile-impersonate

Pre-commit pip-compile wrapper capabable of "impersonating" platforms
Python
7
star
26

istr

Case-insensitive string matching
Python
6
star
27

pr-commands

Commands used on PRs
Python
5
star
28

salt-ci-containers

Containers Used In Salt's Test Suite
Shell
4
star
29

python-tools-scripts

Python Tools Scripts
Python
4
star
30

salt-windows-nsis

Scripts for building a NullSoft Salt installer for Windows
PowerShell
4
star
31

saltwinshell

Agentless Salt for Windows, compatible with salt-ssh
PowerShell
4
star
32

salt-extensions-index

Tools to generate an extension index with Salt and Python compatability information
Python
3
star
33

pytest-skip-markers

A Pytest plugin which implements a few useful skip markers
Python
3
star
34

docs-hub

Community Working Group for Salt Documentation
3
star
35

pytest-system-statistics

Pytest Plugin Which Reports System Usage Statistics
Python
3
star
36

salt-jenkins-pipeline-libs

Salt Jenkins Pipeline Libraries
Groovy
3
star
37

saltext-presentation

Presentation Test Extension
Python
3
star
38

relenv-gdb-debug

Debug a running salt process
Python
2
star
39

invoke-pre-commit

Pre-Commit Invoke mirror
Python
1
star
40

salt-test-suite-ansible-playbooks

This repository is used for testing running ansible playbooks from SaltStack orchestration
1
star
41

mirrors-nox

Pre-Commit Mirror For The Nox Project
Python
1
star
42

salt-ext-heist

Salt Extension for Heist
Python
1
star
43

salt-rewrite

A set of Bowler code to rewrite parts of Salt
Python
1
star
44

pre-commit-remove-import-headers

Pre-commit hook which removes import header comments from python files
Python
1
star
45

great-module-migration

Python
1
star