Direct download URL for universal package in Azure artifacts - azure-artifacts

we would like to share a URL pointing to an universal package to our company internal customers.
By opening the link the referenced universal package file shall be directly downloaded.
I know that I can use the Azure CLI for achieving the same goal but forcing the people to install and properly configure the Azure CLI only for downloading the package file is not ideal.
Therefore I am interested if there is a way to have a direct download link for a universal package.
Thank you

The answer is No.
1,If your customers donot have access to your azure devops project.
The most direct workaround i can think of is to create a azure repo and upload the universal package to this repo. Then create a PAT with only Code-read scope. Then you can share below commands with your customers. They can download the universal package directly with below git command.
git clone https://{PAT}#dev.azure.com/{Org}/{Proj}/_git/{repoName}
The PAT created above may have the access to your other azure repos. To create a more secure PAT with access to only one repo, you can refer to this thread Giving a script Git access to a single Azure Repo
2,If your customers have access to your azure devops project.
They can use their own credential to git clone the universal package azure repo directly.
Pulish the universal package to azure pipeline server as build artifacts as Torsten mentioned is workable too. But it is a little complicated.
You have to create a pipeline to publish the package and call Get Artifacts rest API to get the download url of the build artifacts. The download url will authenticate Your customers to download the artifacts.(So This is only workable if customers have access to your azure devops project)

You must use the Azure CLI to download the package. Azure DevOps [currently] doesn't support direct HTTP/HTTPS download links or other ways to download the package.
Build/pipeline artifacts can be downloaded, though.

Related

Is there a way to host binaries on Azure DevOps kind of like GitHub allows?

I develop mostly desktop apps and class libraries, and I am struggling to find an way to host them using pipeline automation.
I know I can push them to a UNC, but then people need to know that path to find them. It works, but is not very user friendly.
What I would like is a way to host them on DevOps Server, like GitHub. On GitHub there is a Release section that you can go to and download the binaries of a project. I know Azure DevOps is geared toward webapps, but has anyone found a way to use build/release pipelines to automate the hosting of binary files?
I think what you are looking for is the Atifacts which is under the Test Plans in your project in Azure DevOps.
You can publish and download your binaries very easily here. Create a Feed and connect to it with any kinds of packages, including built in ones like NuGet and Maven, or you can customize it which called Universal packages in it.
You may find more useful information at Azure Artifacts documentation, learn what is Azure Artifacts and how you can publish and download you binaries via the CLI tool.

Where does Azure Artifacts code get stored in On-Premise solutions?

We have an On-Premise version of TFS 2018. I am interested in utilizing the packages (now Azure Artifacts) feature within TFS. I am wondering where the source code of the packages that are built and deployed gets stored. For example, if I build a version of an NPM package, does that source code live on our on-premise server or somewhere in the cloud?
The answer: It depends.
If you publish it to an internal feed, it's stored in your TFS database.
If you publish it to an external feed, it's stored there.
The source code is present under Code.
The artifacts that are generated after building the code is present under Pipelines->Build
Click to the build marked red in above.
The build view will have the Artifact option to access the build artifacts.
You can download the artifacts from above by clicking the three dots.

How to set up artifcatory in Jenkins Free Style Project?

I am using Free Style Projects (in Jenkins) to schedule a regression test.
1. Get Source From BitBucket
2. Execute Windows Batch Command.
Earlier we are allowed to upload the jar files in Bitbucket. So we did not face any issue. Now Presently due to some changes in the process, we are not allowed to upload binaries which is affecting to upload jars in the Bitbucket.
Now, They gave given the artifactory url to set up for Maven. But we don't have any Maven projects.
It seems that artifactory is getting populated when it is hosted in the local. But we wanted to use the artifactory which is shared..
Can any one let me know the set up for free style project and the artifactory hosted in other machine and we have only URL.
Thanks
Here is documentation:
https://www.jfrog.com/confluence/display/RTF/Jenkins+Artifactory+Plug-in
I recommend to use Maven Project.

Repository manager that manages binary dll files (Embedded C/C++ project artifacts) and that integrates with Jenkins

Is there any Repository manager that manages the binary dll files and also integrates well with the Jenkins?
Can Nexus be used to manage the dll files as these files are created as a part of Embedded C/C++ Projects and not sure if Nexus Artifact Manager supports/integrates well with such Projects as it mainly supports the Java projects?
Is there a way to automatically manage the upload and download of such project artifacts from Nexus/other artifact managers without the use of POM file?
Suggest in case there are other Artifact Managers that supports binary artifacts.
Artifactory can be used to store any type of binaries.
Starting with Artifactory 4.0, you can create generic repositories which allows uploading packages of any type. You will not need to upload any POM files and Artifactory will not need to calculate any metadata (for example Maven metadata).
To deploy files you can use the REST API or the UI, for example:
curl -uUSER:PASS -T file.dll http://localhost:8081/artifactory/dll-local/path/to/file.dll
If you have a certain layout you would like to use for this repository you can create a custom layout and associate it with the repository. This can be useful for automatic snapshot/integration versions cleanup and other module management tasks.
Disclaimer: I'm affiliated with Artifactory
The Nexus repository manager is java oriented, but can be used to store any files you want. Binaries of all types or even just text configuration files.
To automate the file upload process, you can use maven from command line:
mvn deploy:deploy-file -DgroupId=com.you -DartifactId=file -Dversion=1.0 -Dpackaging=exe -Dfile=c:\out\file.exe -Durl=http://yourserver/nexus/content/repositories/releases -DrepositoryId=releases
Then, to get the file, you should be able to get it directly with the following URL:
wget http://yourserver/nexus/content/repositories/releases/com/you/file/1.0/file-1.0.exe
This is a simple approach to using Nexus as a general artifact repository.
I hope this helps.
The open source version of Nexus (Nexus OSS) is supports many repository formats out of the box including Maven, NuGet, NPM, RubyGems and others. Nexus just runs on Java (e.g. like Jenkins). It is not Java only...
Depending on how you plan to get the DLL files from the repository, different formats might be more or less suited to your usage. You could even use a custom format, but then you rely custom tools.
The scenarios I have seen at many customers are
using a Maven repo and pulling the files in either in a Maven build together with the Maven NAR Plugin (used for native development with C/C++)
using a Maven repo and pulling via plan HTTP GET calls using your scripting language/build tool of choice
using NuGet format and store the DLLs in NuGet packages in the repo and using nuget to retrieve them for the projects
All of these work well.

How to install Jira Subversion plugin and upload source code

it's my first use of my Jira account, and i created a project, and i want to upload source code to a my hosted source control, so i go to plugins and i found only CVS modules why ?
can any one please tell me how to install SVN on my Jira account, and upload my project ?
I am using Hosted solution (source code will be hosted on Jira).
I assume you are talking about JIRA Studio (or OnDemand as they now call it).
Atlassian's hosted solutions are probably not going to make the SVN plugin available ot you because they have a commercial product (FishEye) for that.
The subversion plugin can only be installed manually by dropping the proper jars and class files onthe right places on the server. I doubt they are going to do that for you in a hosted environment. You will probably need to purchase/rent and use FishEye if you want integration with version control.

Resources