The purpose of this project is to provide an easy method for managing Nexus 3 with Salt using the REST API. Sonatype has disabled execution of groovy scripts by default for security reasons (https://help.sonatype.com/repomanager3/rest-and-integration-api/script-api).
Installation:
Extension package installation (supported path):
Install from source for development:
pip install -e .
The legacy file_root sync layout (_modules, _states, _utils) has been removed from this branch.
Development commands:
make test
make test-integration
make lint
make docs-sphinx
make changelog-draft
Docs:
The files under tests/files/salt/nexus3 and tests/files/salt/pillar can be used as examples for using these modules.
The nexus3 execution modules depend on the python requests library which should already be installed from the installation of the salt minion.
Configuration: In order to connect to Nexus 3, credentials can be provided through the minion configuration in yaml format:
Example:
nexus3:
hostname: '127.0.0.1:8081'
username: 'admin'
password: 'admin123'
If setting up Nexus for the first time, set the admin (or whichever user you choose to use) password and log then log out.