Cannot find correct artifact via External Feed

Hi all,

I’m having trouble with the Transfer a Package step in a Release that I’m building. I have an external repository to Artifactory configured, and it can see my build artifact, including version information.

The issue I’m running into is that the artifact that’s being sent to Artifactory has this name (example):
test-cicd-1.0.112-mule-application.jar

When I try to do a deployment in Octopus, it cannot find the artifact. Looking at request logs on Artifactory shows that Octopus is trying to find:
test-cicd-1.0.112.jar

I have not been able to override the artifact name in the build environment by using .

Any suggestions on how I can get Octopus to find the correct artifact name?

Hi Phillip,

Welcome to the Octopus Forum!

I believe the issue is stemming from the fact that we use semantic versioning. I believe the -mule-application might be causing an issue. Are you able to verify if your file follows semantic versioning using the instructions in the below link?

Please let me know the results of the test when you get a chance.

Thanks,
Jeremy

The repository within Artifactory is a Maven repository, not NuGet.

Hi,

Would you be able to post a screenshot of the versions Octopus sees when you create a release? That might help us get a better understanding of what Octopus sees in the repository.

Something like this:

Would you also be able to send me your maven-metadata.xml file?

Thanks,
Jeremy

Hi Jeremy,
Here’s a screenshot similar to what you have above. I have also attached the maven-metadata.xml file as requested.

maven-metadata.xml (545 Bytes)

Hi pvanhelden,

Thanks for the quick response. I’m going to investigate this further, I will keep you updated. Have you tried to change the filename so that the version is at the end of the file and see if Octopus succeeds in grabbing the file? For example test-cicd-mule-application-1.0.112.

Thanks,
Jeremy

Hi Jeremy,
I did do a test where I changed the name of the artifact within Artifactory to be test-cicd-1.0.112.jar, and then Octopus was able to find the artifact. I have renamed the artifact back, so that the environment exists the way that it was previously, reflecting what would be coming out of the build server.

Thanks,
Phil

Hi pvanhelden,

I’m by no means a maven repository guru, but I did some digging and it looks like your maven metadata.xml is losing filename information as well. If you take a look at the example here, you will see their xml has the “-snapshot” intact. I am going to talk to the engineer who integrated Maven into Octopus but he is on a different shift so I won’t be able to get you information til 8pm~ est or tomorrow morning.

I will keep you updated, but please feel free to reach out in the mean time with any questions.

Thanks,
Jeremy

Hi Jeremy,

I’ve also uploaded the pom.xml file for the maven build, if that can shed any additional light. I’ve been told that using is not an option.

Thanks,
Phil

pom.xml (2.1 KB)

Hey Phil,

Are you able to download the file correctly using a maven command? If so, could you please share the command you would run to download it?

Thanks,
Jeremy

I’m not using Maven to pull down my artifact, just wanted to provide the pom for it though in case something needed to be modified in it.

Hi Phil,

The reason why I asked is because if I saw the maven command you would use to download the file, I could determine if the -mule-application portion is being treated as a classifier, which unfortunately we currently do not support with maven feeds in Octopus. This feature is slated to be released along with 2020.3, as well as file type selection. Do you know if that part is a classifier?

Thanks,
Jeremy

I’m not sure - I have not worked with classifiers and I’m not seeing anything in the pom.xml. What I’ve done for now is create a powershell script to call an Artifactory API to rename the build artifact (eliminating -mule-application), and then I was able to get Octopus to find the artifact and do the deployment. This is being done as part of the build process.

Hi Phil,

I’m glad you have a workaround for now. If it is a classifier it would be added with a plugin in maven or in some other part of the build process. I do believe this is a classifier which we unfortunately do not support in our current version. I spoke with an engineer and he confirmed that in 2020.3 we will have support for them. Please reach out with any other questions or concerns. Sorry I don’t have better news for you.

Thanks,
Jeremy

This topic was automatically closed 31 days after the last reply. New replies are no longer allowed.