I've a question about Jfrog Artifactory.
I don't know for what it is used. Can you explain me this in practical way ?
Thanks in advance!
From the tag description of artifactory:
Artifactory is a binary repository manager for use by build tools (like Maven and Gradle), dependency management tools (like Ivy, NuGet and RubyGems) and build servers (like Jenkins, TeamCity and Bamboo). It comes as downloadable version (OSS, Pro and Enterprise with additional features) and cloud SaaS version.
Simply put it's a self-hosted/on-premise remote location in which you can store Java/Maven dependencies (with the open source version) and various other package types (NPM, rubygems etc) with the pro version
Related
How do I enable the NuGet Package source Type on creating Local/Remote/Virtual Repository?
I have installed JFROG Artifactory OSS version(7.35.2) and when I'm trying to create Local/Remote/Virtual Repositories for NuGet, but I can't able to choose NuGet from package source type. FYR attached screenshot.
If this option is not available with Artifactory OSS version, then suggest the way to do upload/downloading NuGet Packages with JFrog.
And forget to update, when I have tried with JFrog Cloud version, there I can able to use NuGet package Source Type.
Artifactory OSS supports Maven, Gradle, Ivy, SBT, Generic package types as per this confluence page and hence you are not able to view Nuget options in OSS.
You might have tried JFrog cloud Pro version where it comes with license and you will be able to view all package types. You will need a minimum Pro license to use the Nuget package type.
It's clear from Sonatype's website that Nexus Pro supports proxying of Ivy repos.
However, the Nexus documentation does not mention this, and anyway is never clear whether it's describing Nexus OSS or Nexus Pro.
Does Nexus OSS support proxying of Ivy repos?
The link you mentioned answers your question:
No. Ivy repositories are not supported by Nexus OSS or Pro at this
time. However in most cases Maven repositories are the preferred
choice mostly for interoperability with other build tools like Maven,
SBT and others. More detail can be found in
http://books.sonatype.com/nexu...
Nexus is effectively the reference implementation of a Maven repository. Whether one likes it or not it has become the de facto standard for the storage of Java binary artefacts.
Thankfully ivy is well able to support both the upload and download of artefacts from Maven repositories. Secondly there is no repository management software available for ivy repositories, so really I cannot think of a reason not to use Nexus. It allows me to share my ANT build with other java projects built using Maven, Gradle, SBT, etc....
I am experimenting the use of Rational Asset Manager to store our binaries and/or build artifacts. I am running a mvn deploy command to deploy my build artifacts to RAM. Although it recognizes the connection its throwing me a Http status code: 500 error.
I have also checked RAM logs for more information but i don't see any specific exception. All the examples or documents out on internet says we have to configure RTC build engine to run the builds.
I just want to know if anyone have tried publishing to RAM from command line using Mvn deploy ( without using RTC client ) ? is this do-able?
If you have successfully published artifacts to RAM using maven, can you please elaborate on how you did it?
It seems to be possible, if you follow the steps described in:
"Creating and using Maven assets", and
"Deploying from Maven to assets":
Before you can use Maven assets, a repository administrator must enable the Maven model library. For more information, see Enabling the Maven library.
The mvn client can integrate with Rational Asset Manager, using Rational Asset Manager as a Maven repository.
Before you deploy from Maven to Rational Asset Manager, you must add a repository entry to the pom.xml file on the computer where you plan to run the mvn client. See Creating and using Maven assets for more information.
I was able to deploy the artifact using mvn deploy after changing the following things in RAM
Pointed to a JRE version in RAM ( originally was pointing to JDK
version) and
Changed permissions for my role for saving my artifacts
in RAM ("save Work Item") Reference
I am setting up an ant build system on a project with dependency resolution being managed by ivy. I have it up and running with the file system being used for the local and shared repository currently. My ultimate goal would be that when developers are fixing bugs or creating new functionality, they would only be able to put artifacts into their local repository. When they belive their code is ready to be used by the rest of the team, it would be promoted to the proper branch in SVN and the group in charge of doing official builds would compile and publish the new artifacts.
So I guess my questions are how can you control who can publish to a repository? Does ivy just rely on filesystem permissions?
Also, I would eventually like to make my shared repository available via http. I think I could point apache to the file system repository directories for retrieving artifacts, but how do you setup publishing to an http repository?
I would suggest that you setup a repository manager to manage your project's build artifacts.
The best choices are one of the following:
nexus
artifactory
archiva
Publishing to a Maven repository means that your artifacts can be consumed by projects using other build technologies. All modern build systems support Maven (Including ivy, see the ibiblio resolver).
You could specify three resolvers in your ivy settings file. First would be a chain resolver which include remote and local ivy repositories. Second would be a local resolver for local ivy repository. Third a resolver to remote ivy repository only.
Every developer retrieves artifacts using first chain resolver.
Usual developer publish artifacts using second local resolver.
Your special team could use third remote resolver to publish in remoter ivy repository.
To protect remote repository from usual developers place it on (S)FTP server with write protection by password.
The only problem in this case is how to set versions on artifacts so that artifacts published in remote repository in some cases override locally published in some not.
Our team used such scheme few years ago. But now we use only local ivy repositories and CI server to build and run tests from various branches. We came up to this after switching to git.
for existing ivy repo easy to setup this: rest-ivy
I am new to clearcase and software development using version control system. I am using clearcase for version management currently. I use eclipse IDE for software development.
I installed clearcase plugin for eclipse over the internet from sourceforge.net website. Some how the plugin does not work.
The softwares that i installed are: IBM Rational Clearcase 7.0, Eclipse Galileo 3.5 and clearcase 2.2.3 plugin for it.
I am not able to checkin or checkout files using the plugin. Can some one give me detailed/step-by-step procedure for using the plugins? What kind of environment to be setup?
You will find how top install the plugin in this SO question, but I would recommend the official IBM ClearCase for Eclipse plugin (7.5), not the sourceforge one.
If you see a ClearCase menu, the plugin is installed.
BUT: in order to be able to checkout a file within your project, you need to have it within a ClearCase view (snapshot or dynamic).
That means, the .project and .classpath needs to be right above your source directory, within your project. (And not in your workspace).
If only your sources are in a ClearCase view, but your .project and .classpath are 'elsewhere', then all the files within your project won't appear as ''versioned' (blue background) and you won't be able to checkout/checkin them.
You best bet is to use the IBM Rational ClearTeam Explorer (CTE) version 8.0.x, previously known as the ClearCase Remote Client (CCRC) in version 7.x of ClearCase. CTE is an Eclipse plugin that ships with ClearCase.
In ClearCase version 7.x, CCRC only supports 'web views'. Web views are copy based views that communicate with the ClearCase server via http. They perform well in WAN environments.
In version 8.0, the ClearTeam Explorer (formerly CCRC) adds support for Dynamic views. In 8.0, the ClearTeam Explorer supports both Web and Dynamic views.
If you require Snapshot Views or are using a pre-8.0 version of ClearCase, you should use the ClearCase SCM Adapter plugin.
If you are unable see your view in the MyView of the eclipse. To resolve this issue you have to remove .ccase_wvreg_lockfile from currently logged in user profile.