What is the difference between deploy and promote and release in Sonatype Nexus Pro? - maven

I am new to Nexus Pro. I am trying to understand the difference between deploy, promote and release in Nexus Pro.
My understanding is that to move the tested/approved artifacts from Staging to Release repository we do promote. But why are there different buttons for promote and release in Nexus Pro?

Related

Publish Azure Devops Artifacts to Maven Central

Can any one suggest a flow how to publish Azure Devops server 2019 maven artifacts (exposes API) to Maven central for a more global access?
update:
let me rephrase my issue.
my team uses on-premise Azure Devops to develop and host android packages used as API for other applications.
when the API version is stable we want to publish the API packages (in the on-premise artifacts) to Maven central, i wish to use the release management so i could use the approve mechanism
Azure Artifacts, part of Azure DevOps, offers the ability to host and share Maven, npm, NuGet, and Python package feeds within your organization.
If you want to host the packages on Maven central instead of Azure Artifacts. You would check how to upload packages to Maven central on Maven side:
https://maven.apache.org/repository/guide-central-repository-upload.html
If your goal is only sharing packages publicly, you may try Azure DevOps Service (https://dev.azure.com), which support sharing your packages publicly. This feature currently only support Azure DevOps Service.

Can I deploy to ARM from nexus?

Do you know if it is possible that I deploy an application from nexus to my Anypoint Runtime Manager (ARM) in order to automate this in my jenkins pipeline
I am deploying to nexus, but now I want to pull from it

SONAR quality gates on cross-projects

We have set up our branching strategy in Bitbucket in a way that for each release to production we create a new release branch in Bitbucket (User Acceptance Testing and then the production release is done from this branch). Now for each feature to be developed in that release, we create a new feature branch and to merge the new feature developed from the feature branch to the release branch, we create pull requests.
When the pull request is created from a feature branch, we trigger the build in TeamCity which in turn connects to SonarQube server (Version 5.0.1). Sonar now creates a new project for this pull request (as I have specified sonar.branch property) and we can see the analysis on Sonar dashboard.
Also on creating of a release branch in Bitbucket and on subsequent merges to release branch (from feature branch), we are triggering the build in Teamcity which connects to the same SonarQube server and creates a new project for this release branch.
Now we need to set up a quality gate in SONARQube that will check for the new blocker, critical and major issues introduced in the feature branch against the release branch. So the baseline for us will always be the release branch. Please note that we will have different projects in SONAR for each feature branch and release branch.
Is it possible to have Sonar Quality gates created on cross-projects? I think the SONARQube version 5.0.1, that we are using, doesn't have the capability - Is that correct? Is it possible in the latest SONAR versions?
Thanks and Regards,
Mitesh

Remote artifact repository vs local

I'm building few scala libraries and use them in business projects. To share libraries i use 'publishLocal' in sbt. This command uploads artifacts into my local folder. This is ok, it's fast but when i work from another machine i have to republish all this libraries because some changes had been made. So, this my is question: Is my workflow correct? Or i have to publish my artifacts to remote binary repository (ex. nexus) and add it to my business projects as resolvers? Should i use 'publishLocal' at all?
As indicated in the comments, it is strongly suggested to use a Repository Manager such as Nexus Repository Manager, or Artifactory.
You might try Nexus Repository Manager 3.x, as it should help quite a bit with your problem. You can install it on your server, as well as locally if you'd like as it can be used with other tools such as npm, NuGet, etc...
You can download the Open Source Software Edition of Nexus Repository Manager from this link: https://www.sonatype.com/download-oss-sonatype

Best Repository Management for Maven

I am working on Automated Build using maven and Jenkins. I am looking for best open source Repository Management for Maven. So that I can have an integaration between Maven and jenkins via respository manager.
You have at least four choices:
Nexus
Artifactory
Apache Archiva
Reposilite
Each has pros and cons. I'd go with Nexus since it is backed by Sonatype who are also involved in Maven development. I liked the Artifactory UI though.
Both Nexus and Artifactory have supported professional editions as well.
These are linked from the maven site as well.

Resources