Huzzah! Helm is now part of Nexus Repository Manager. Version 3.21 includes the Helm plugin by default. The plugin source code is now in nexus-public in nexus-repository-helm.
Filing issues: Upgrade to the latest version of Nexus Repository Manager 3, to get the latest fixes and improvements, before filing any issues or feature requests at https://issues.sonatype.org/.
Upgrading: If you are using a version prior to 3.21 and upgrade to a newer version you will not be able to install the community plugin. No other changes are required and your existing data will remain intact.
Also, there is a good amount of information available at Bundle Development
To build the project and generate the bundle use Maven
mvn clean package
If everything checks out, the bundle for Helm should be available in the target
folder.
In the examples below, substitute <helm_version>
with the current version of the helm format plugin.
docker build -t nexus-repository-helm:<helm_version> .
docker run -d -p 8081:8081 --name nexus nexus-repository-helm:<helm_version>
For further information like how to persist volumes check out the GitHub repo for our official image.
After allowing some time to spin up, the application will be available from your browser at http://localhost:8081.
To read the generated admin password for your first login to the web UI, you can use the command below against the running docker container:
docker exec -it nexus cat /nexus-data/admin.password && echo
Once logged into the application UI as admin
using the generated password, you may also want to
turn on "Enable anonymous access" when prompted by the setup wizard.
We have detailed instructions on how to get started here!
The table below outlines what version of Nexus Repository the plugin was built against
Plugin Version | Nexus Repository Version |
---|---|
v0.0.6 | 3.13.0-01 |
v0.0.7 | 3.14.0-04 |
v0.0.8 | 3.15.2-01 |
v0.0.9 | 3.16.2-01 |
v0.0.10 | 3.17.0-01 |
v0.0.11 | 3.18.0-01 |
v0.0.12 | 3.18.0-01 |
v0.0.13 | 3.18.0-01 |
v1.0.2 In product | 3.21.0+ |
All released versions can be found here.
Feature | Implemented |
---|---|
Proxy | :heavy_check_mark: |
Hosted | :heavy_check_mark: |
Group |
In Nexus Repository Manager 3.21+ Helm
format is already included. So there is no need to install it. But if you want to reinstall the plugin with your improvements then following instructions will be useful.
Note: Using an unofficial version of the plugin is not supported by the Sonatype Support team.
<nexus_dir>/system/org/sonatype/nexus/plugins/nexus-repository-helm/<helm_version>/nexus-repository-helm-<helm_version>.jar
Edit <nexus_dir>/system/org/sonatype/nexus/assemblies/nexus-cma-feature/3.x.y/nexus-cma-feature-3.x.y-features.xml
changing helm to your build version (examples, the actual lines surrounding may vary):
<feature version="3.a.b">nexus-repository-p2</feature>
<feature version="<helm_version>">nexus-repository-helm</feature>
<feature version="3.x.y.xy">nexus-repository-raw</feature>
</feature>
And
<feature name="nexus-repository-helm" description="org.sonatype.nexus.plugins:nexus-repository-helm" version="<helm_version>">
<details>org.sonatype.nexus.plugins:nexus-repository-helm</details>
<bundle>mvn:org.sonatype.nexus.plugins/nexus-repository-helm/<helm_version></bundle>
</feature>
This will cause the plugin to be loaded and started with each startup of Nexus Repository Manager.
NOTE: The file location changed in version 3.21. For older versions, edit these files:
<nexus_dir>/system/com/sonatype/nexus/assemblies/nexus-oss-feature/3.x.y/nexus-oss-feature-3.x.y-features.xml
<nexus_dir>/system/com/sonatype/nexus/assemblies/nexus-pro-feature/3.x.y/nexus-pro-feature-3.x.y-features.xml
Additionally, prior to 3.21 the lines did not exist so they'd need to be added instead of edited.
Starting from version 3.21+ the Helm
plugin is supported by Sonatype, but still is a contribution of ours
to the open source community (read: you!)
Phew, that was easier than I thought. Last but not least of all:
Have fun creating and using this plugin and the Nexus platform, we are glad to have you here!
Looking to contribute to our code but need some help? There's a few ways to get information: