Skip to main content

Salt Extension Modules for VMware

Project description

Salt Extension Modules for VMware

This is a collection of Salt-maintained extension modules for use with VMware vSphere, vCenter, ESXi, and friends.

Security

If you think you've found a security vulnerability, see Salt's security guide.

User Documentation

This README is more for contributing to the project. If you just want to get started, check out the User Documentation. Note: See the Managing VMC SDDC with Salt section for more information about how to configure properties required for VMC operations

Contributing

The salt-ext-modules-vmware project team welcomes contributions from the community. If you wish to contribute code and you have not signed our contributor license agreement (CLA), our bot will update the issue when you open a Pull Request. For any questions about the CLA process, please refer to our FAQ.

The Salt Contributing guide has a lot of relevant information, but if you'd like to jump right in here's how to get started:

# Clone the repo
git clone --origin salt git@github.com:saltstack/salt-ext-modules-vmware.git

# Change to the repo dir
cd salt-ext-modules-vmware

# Create a new venv, after sourcing activate `python` will refer to python3.
python3 -m venv env --prompt vmw-ext
source env/bin/activate

# On mac, you may need to upgrade pip
python -m pip install --upgrade pip

# On WSL or some flavors of linux you may need to install the `enchant`
# library in order to build the docs
sudo apt-get install -y enchant

# Install extension + test/dev/doc dependencies into your environment
python -m pip install -e .\[tests,dev,docs\]

# Run tests!
python -m nox -e tests-3

# skip requirements install for next time
export SKIP_REQUIREMENTS_INSTALL=1

# Build the docs, serve, and view in your web browser:
python -m nox -e docs && (cd docs/_build/html; python -m webbrowser localhost:8000; python -m http.server; cd -)

# If you want to run tests against an actual vCenter:

# 1. Make a local salt dir
mkdir -p local/etc/salt

# 2. Make a local dir for salt state files
mkdir -p local/srv/salt

# 3. Make a local dir for salt pillar files
mkdir -p local/srv/pillar

# 4. Create a minion config
cat << EOF> local/etc/salt/minion
user: $(whoami)
root_dir: $PWD/local/
file_root: $PWD/local
master: localhost
id: saltdev
master_port: 55506
pillar_roots:
  base:
    - $PWD/local/srv/pillar
EOF

# 5. Make a Saltfile
cat << EOF> Saltfile
salt-call:
  local: true
  config_dir: local/etc/salt
EOF

# 6. Create a pillar file for you configuration
cat << EOF> local/srv/my_vsphere_conf.sls
# vCenter
saltext.vmware:
  # Or use IP address, e.g. 203.0.113.42
  host: vsphere.example.com
  password: CorrectHorseBatteryStaple
  user: BobbyTables
EOF

# 7. Create a pillar top file
cat << EOF>  local/srv/pillar.sls
base:
  saltdev:
    - my_vsphere_conf
EOF

# 8. (deprecated but not removed yet) If you're contributing to the project and need to run the tests, create a test config file:
python tools/test_value_scraper.py -c local/vcenter.conf

# 9. (deprecated but not removed yet) Create a test config file for VMC:
python tools/test_value_scraper_vmc.py --help
This command will return the required information.

For code contributions, as part of VMware we require a signed CLA. If you've already signed the VMware CLA, you're probably good to go.

Of course, writing code isn't the only way to contribute! We value contributions in any of these areas:

You could also contribute in other ways:

  • Writing blog posts
  • Posting on social media about how you used Salt+VMware to solve your problems, including videos
  • Giving talks at conferences
  • Publishing videos
  • Asking/answering questions in IRC, Slack, or email groups

Any of these things are super valuable to our community, and we sincerely appreciate every contribution!

For more information, build the docs and head over to http://localhost:8000/ — that's where you'll find the rest of the documentation.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

oms-saltext-vmware-24.3.14.tar.gz (257.8 kB view details)

Uploaded Source

Built Distribution

oms_saltext_vmware-24.3.14-py2.py3-none-any.whl (342.2 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file oms-saltext-vmware-24.3.14.tar.gz.

File metadata

  • Download URL: oms-saltext-vmware-24.3.14.tar.gz
  • Upload date:
  • Size: 257.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.10.12

File hashes

Hashes for oms-saltext-vmware-24.3.14.tar.gz
Algorithm Hash digest
SHA256 a9040144e8c732d29c1599dccd3134a7fc8f55e72259404a989442c855fb87d5
MD5 a6577f81a0f1d6e6413a5b16a7135805
BLAKE2b-256 349688b8c2fec69d91f7660a73fa70bb8fbc9f883f1578f2114d45f409243d9c

See more details on using hashes here.

File details

Details for the file oms_saltext_vmware-24.3.14-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for oms_saltext_vmware-24.3.14-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 a7f5dd657879f28b5b3c40c5a4cae3bf346a314e4dc75f0a280ba789959db6fc
MD5 2cbc0eaf0e540a9339762e0cfeae5786
BLAKE2b-256 59ff1e0e74f4101d6001279b26edd9e80cad8940374fa883d0ee435a1379cde2

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page