This Saltstack formula will install Nexus OSS Repository onto any linux (tested with debian jessie, CentOS 5,6,7).
Requires Nexus Sonatype Version 3 and above.
In your formula matching sls just add
nexus
- Make certificates importable, official CA etc.
- Make java keystore replaceable if changes in the pillar occur. delete old one etc.
- Obscure password in jetty-https.xml
- Make this formula updateable
- Set the symlink to the new version
- Do not touch the sonatype-work folder
- Copylivedata
- Problem that after running the copyjob, another salt-call has to be done, so that the configuration files will be created correctly.
Questions regarding "how to configure nexus" take a look at the sonatype documentation website. http://books.sonatype.com/nexus-book/reference3/index.html
1.) Requires Java JRE
2.) Knowledge in Nexus OSS
The default state is nexus
this one will install, configure and creates a systemd entry for nexus.
There is also nexus.v3.copylivedata
which will copy data from another host, to this local system.
Needs an existing ssh key on the host system.
1.) HTTPS will be configured and a self signed certificate is going to be created if applicationportssl
is uncommented.
2.) The passwords for the java keystore is neither encrypted nor obscured in the jetty-https.xml
.
1.) Run Nexus OSS behind a reverseproxy. No issues with the self signed certificate will occur.
Every variable is setable. If nothing is specified in the pillar it will be set via the defaults.yaml
.
Use the pillar.example, every variable is commented.
Nexus OSS can be installed anywhere on linux. Per default it will be installed onto /opt
the following directories will be created
nexus
is a symlink pointing to the installed version.
nexus-versionnumber
is created while extracting, can be set via install.path
in pillar
sonatype-work
is created while extracting, can be set via install.datapath
in pillar symlink in install.path
will be created
The following file will be created and modified via salt
jetty-https.xml
used for https activation, stores the password to the java keystore
nexus.properties
used for https activation, autoredirects, ssl and non ssl ports, and many more
nexus.rc
used to run nexus as the specified user
nexus.service
creates a systemctl entry, runs nexus as the specified user
nexus.vmoptions
used to edit java vm preferences
Formula to set up and configure a Sonatype Nexus server.
See the full `Salt Formulas installation and usage instructions
<http://docs.saltstack.com/en/latest/topics/development/conventions/formulas.html>`_.
contents:
local:
- ``nexus``
Downloads the tarball in version nexus:version (currently defaults to 3.11.0-01) from sonatype configured as either a pillar or grain. Then unpacks the archive into nexus:prefix (defaults to /opt/nexus). Depends on the sun-java-formula for its JDK/JRE. Tested with jre1.8.0_172.