Each projects in the folder have configured Dependencies.

I can access them with project.getTransitiveDownstreamProjects() or 
getTransitiveUpstreamProjects() for each project.
However I need to build all projects in order, based on their dependencies. 
Calling this for each projects will only get me the list of downstream 
projects for each project.

When standing on the folder I can see all the projects and its dependencies 
from "Dependency Graph" in the menu.

However how can I get this programmatically? How does Dependency Graph do 
it?
The Folder class does not have the methods for accessing the Dependencies.

    def jenkinsInstance = jenkins.model.Jenkins.getInstance()
    def project = jenkinsInstance.getItemByFullName("folder/project")
    def downstreamProjects = project.getDownstreamProjects()

If I could get it as a orderd list, that would work. Then I could build all 
projects in the right order, so that the next project has its dependencies 
when building.

An ordered Tree would be much better. Then I could build all projects on 
same level in parallel.

A much bigger job for me, is if I need to loop through all projects in the 
folder, get its Upstream and/or Downstream dependencies. Then when I have 
them all, calculate the ordered list, or structured tree. I have been 
trying to wrap my head around how to write such an algorithm.
Dependency Graph seems to have such algorithms, so I was hoping to save 
some time using it if possible.

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-users/88b9bc11-334f-4c06-8941-d59dc47be7b8n%40googlegroups.com.

Reply via email to