kokuwaio / helm-maven-plugin

Simple plugin to package helm charts

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Deploying to artifactory using 'groupId' path

icstreispe opened this issue · comments

commented

I've created a pom.xml like this:

<groupId>com.xxx.prj.helm</groupId>
<artifactId>ui</artifactId>
<packaging>helm</packaging>
..
<properties>
     <release.url>https://artifactory.xxx.com/artifactory/hlm-all/</release.url>
     <snapshot.url>....</snapshot.url>
 </properties>
...
<plugin>
 <groupId>com.kiwigrid</groupId>
 <artifactId>helm-maven-plugin</artifactId>
 <version>5.6</version>
 <extensions>true</extensions>       <!-- for custom packaging -->
 <configuration>
     <chartVersion>${project.version}</chartVersion>
     <chartDirectory>${project.build.directory}</chartDirectory>

     <useLocalHelmBinary>true</useLocalHelmBinary>
     <autoDetectLocalHelmBinary>true</autoDetectLocalHelmBinary>
     <addDefaultRepo>false</addDefaultRepo>
     <uploadRepoStable>
         <name>hlm-public</name>
         <url>${release.url}</url>
         <type>ARTIFACTORY</type>
     </uploadRepoStable>
     <uploadRepoSnapshot>
         <name>hlm-private</name>
         <url>${snapshot.url></url>
         <type>ARTIFACTORY</type>
     </uploadRepoSnapshot>

 </configuration>
</plugin>

Settings.xml is correctly configured.
Then doing mvn clean deploy the plugin tries to deploy to:
https://artifactory.xxx.com/artifactory/hlm-all/ instead of using groupId path and deploying to:
https://artifactory.xxx.com/artifactory/hlm-all/com/xxx/prj/helm/ui/${project.version}/ as I think it should.

  1. Is there a way to force it to deploy to the 'groupId' path other than specifying the whole path in the <release.url> parameter?
  2. Is it possible to remove <url> attribute (from <uploadRepoStable> tag) so it can only use the <name>attribute to correctly identify the repository in the settings.xml in order to do a deploy?

In order to deploy using groupId in repo path, add useGrouId inside repo configuration. e.g.:

     <uploadRepoStable>
         <name>hlm-public</name>
         <url>${release.url}</url>
         <type>ARTIFACTORY</type>
         <useGroupId>true</useGroupId>
     </uploadRepoStable>

I have just checked inside my organization - works like a charm. 😉

commented

ok great
how about the second issue?

ok great

how about the second issue?

I'm not sure that such feature gives much conveniency, since you can always set property in settings.xml and reference it from pom.xml.

To my mind, it will only give pom.xml of smaller size.

But, if you insist, I'll take a look.

commented

yes it will keep pom.xml smaller/cleaner
if its simple to do it ok, if its too complicated we can forget it....

yes it will keep pom.xml smaller/cleaner

if its simple to do it ok, if its too complicated we can forget it....

I consider to raise separate issue/feature request for this.

commented

ok

@icstreispe please close this issue.
I've filed follow-up: #149