Skip to main content
Announcements
Accelerate Your Success: Fuel your data and AI journey with the right services, delivered by our experts. Learn More
cancel
Showing results for 
Search instead for 
Did you mean: 
sarora1
Creator
Creator

Local Nexus or Cloud Nexus- Need Help with CICD Setup

I am following this link to setup build and deploy process

https://community.talend.com/t5/Architecture-Best-Practices-and/Continuous-Integration-and-Continuou...

 

In the setup directions, 

For Maven_OPTS, fill in the location of your local CommandLine, and remote Nexus repository URLs.

-Dgeneration.type=local
-Dproduct.path=/opt/talend/Talend-7.1.1/cmdLine/cmdline/studio
-Xmx3076m
-DaltDeploymentRepository=releases-ci::default::http://adminserver:8081/repository/releases-ci/ -Dproject.distributionManagement.repository.url=http://adminserver:8081/repository/releases-ci/ -Dproject.distributionManagement.repository.id=releases-ci

 I am confused about the URL 

-DaltDeploymentRepository=releases-ci::default::http://adminserver:8081/repository/releases-ci/
-Dproject.distributionManagement.repository.url=http://adminserver:8081/repository/releases-ci/
-Dproject.distributionManagement.repository.id=releases-ci

Questions:

http://adminserver:8081/repository/releases-ci/ appears to be on-prem Nexus? 

Why it's not being deployed to TMC ( a.k.a Cloud Nexus)?

What is the use of deploying to on-prem Nexus? My understanding is that TMC can not talk to on-prem Nexus to schedule and run the jobs.

 

Another question about CICD process,

Is this the correct CICD flow: 

   - pull code from Git

   - build jars

   - run tests

   - if tests succeed, deploy to TMC (right to TMC not to  on-prem nexus?)

   - if tests fails, stop build and report as failure

 

Labels (4)
1 Solution

Accepted Solutions
Anonymous
Not applicable

The build options you mentioned are for a local Nexus. It is the default profile which you can also specify using -Pnexus as part of your mvn deploy command. In case you want to deploy to Talend Cloud instead, then you must use -Pcloud-publisher as the profile. Still a local Nexus is required for user libraries, as well as a P2 update site.

All Maven build options are documented here: https://help.talend.com/reader/o2DMkp1_WVLFHSyNkjxn4w/X~3zX5XhKeW3Qqui8wNoAw

Good luck

View solution in original post

4 Replies
Anonymous
Not applicable

The build options you mentioned are for a local Nexus. It is the default profile which you can also specify using -Pnexus as part of your mvn deploy command. In case you want to deploy to Talend Cloud instead, then you must use -Pcloud-publisher as the profile. Still a local Nexus is required for user libraries, as well as a P2 update site.

All Maven build options are documented here: https://help.talend.com/reader/o2DMkp1_WVLFHSyNkjxn4w/X~3zX5XhKeW3Qqui8wNoAw

Good luck

sarora1
Creator
Creator
Author

Thanks @jclarysse 

 

That was helpful. Few more questions:

1. Currently, I am building and deploying one job like this 

deploy -Pcloud-publisher -X -pl jobs/process/marketing_jobs/name_of_job_0.1 -fae -amd

Is it possible to build all the jobs under folder marketing_jobs with something like this

deploy -Pcloud-publisher -X -pl jobs/process/marketing_jobs/* -fae -amd

 

2. What step in the Jenkins Job tells Jenkins to run the tests?

3. Is there a way in Jenkins to skip the execution of tests?

Anonymous
Not applicable

This is Maven standard process. When you run the deploy phase then it also runs all previous phases inclusive test.

https://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html

According to the documentation, you should be able to skip tests with parameter -DskipTests

https://maven.apache.org/plugins-archives/maven-surefire-plugin-2.12.4/examples/skipping-test.html

sarora1
Creator
Creator
Author

@jclarysse Thanks again.

Looks like I edited my question after you answered it. I will appreciate if you can look at my previous message in this chain. I had one question about building all the jobs in a folder.