webMethods

webMethods

Join this online group to communicate across IBM product users and experts by sharing advice and best practices with peers and staying up to date regarding product enhancements.

 View Only
Expand all | Collapse all

Jenkins and ABE

webMethods Community Member

webMethods Community MemberTue September 06, 2016 07:07 AM

  • 1.  Jenkins and ABE

    Posted Wed August 17, 2016 10:42 AM

    Hi,

    We are on 9.10. We are planning to setup Automatic Build and Deployment for webMethods.
    We have Git repo configured.
    I’m able to do a check-out from Git and able to create .acdl file also but later it fails with below error

    [DEBUG] [17 Aug 2016 10:27:21,790] (RepoServerAlias.java:listComposites:348)
    [exec] Error invoking Service wm.deployer.gui.UIFlatFile:listComposites on server localhost:5555
    [exec]
    [exec] [ERROR] [17 Aug 2016 10:27:21,790] (RepoServerAlias.java:listComposites:351)
    [exec] Error retrieving repo objects from Repo Server DEMO_Repository : Repository Index is missing. Please create the index for the Repository.

    When we click on ‘crete Index’ button on IS Admin page and then re-run the Jenkins, we are getting below error.
    [DEBUG] [17 Aug 2016 09:22:29,996] (RepoServerAlias.java:listComposites:329)
    [exec] Error invoking Service wm.deployer.gui.UIRepository:listComposites on server localhost:5555
    [exec]
    [exec] [ERROR] [17 Aug 2016 09:22:29,996] (RepoServerAlias.java:listComposites:332)
    [exec] Error getting list of composites from Integration Server Alias DEMO_Repository

    Attached is the Jenkins Console output and projectAutomatorReport.xml.
    Please suggest.

    Thanks,
    Monica
    projectAutomatorReport.xml (1.1 KB)
    JenkinsConsoleOutput.txt (8.41 KB)


    #Integration-Server-and-ESB
    #webMethods


  • 2.  RE: Jenkins and ABE

    Posted Wed August 17, 2016 12:23 PM

    Hi Monica!
    From the message I’d guess you don’t have the repo ready.
    One thing is to have assets in GIT, another thing is to create a build using ABE - that is the repository. Index is automatically created when you build with ABE.
    ABE takes the source directory (assets you should have in GIT), zip them etc and prepares this “repository index”.

    ProjectAutomator is just a next step and it is there for preparing “deployer project” which you would/could otherwise create manually through Integration sever/Solutions/Deployer. One option is to take repository as a source - and repository is exactly that ABE-built stuff…

    Jenkins can be just a orchestration tool for running those tools, but it also can do much more - like store the repository of builds, promote them etc. That depends on how complex you set it up.

    Let me know if that helped…


    #Integration-Server-and-ESB
    #webMethods


  • 3.  RE: Jenkins and ABE

    Posted Thu August 18, 2016 03:41 AM

    Thanks Lukas.

    I’m able to create build successfully. Once the build is created I’m able to see _assets.obj, Zipfile and .acdl file created.
    After creating build , I’m facing issues in target ‘CreateProject’.

    Below is the Jenkins Console Output after creating build:

    createNewBuildNumber:

    createBuildNumber:
    [propertyfile] Updating property file: /opt/softwareag/common/AssetBuildEnvironment/master_build/build.number

    createOutputDir:
    [echo] The directory /opt/ABE/Builds/output already exists.
    [echo] Started Integration Server Build…

    buildIS:

    validate:

    build:

    iterate_multi_project_folders:

    build_projects:

    generate-composites:
    [java] Java HotSpot™ 64-Bit Server VM warning: ignoring option MaxPermSize=128M; support was removed in 8.0
    [java] [8/18/16 5:33 AM][MESSAGE] ispackage.ispackage: Starting to read packages Test1,replicate,.git.
    [java] [8/18/16 5:33 AM][MESSAGE] ispackage.ispackage: Starting to read package [Test1].
    [java] [8/18/16 5:33 AM][WARNING] ispackage.Test1: Configuration data is missing. Cannot export ACL information for package Test1
    [java] [8/18/16 5:33 AM][MESSAGE] ispackage.ispackage: Completed creation of ACDL and binary for a package [Test1].
    [java] [8/18/16 5:33 AM][MESSAGE] ispackage.ispackage: Starting to read package [replicate].
    [java] [8/18/16 5:33 AM][MESSAGE] ispackage.ispackage: [replicate] is not an Integration Server package.
    [java] [8/18/16 5:33 AM][MESSAGE] ispackage.ispackage: Starting to read package [.git].
    [java] [8/18/16 5:33 AM][MESSAGE] ispackage.ispackage: [.git] is not an Integration Server package.
    [java] [8/18/16 5:33 AM][MESSAGE] ispackage.ispackage: Completed all packages.

    iterate_single_project_folders:
    [echo] Integration Server Build complete…

    createIndex:
    [createIndex] RepoIndexer is processing composite Test1 from composite file /opt/ABE/Builds/output/IS/Test1.acdl

    BUILD SUCCESSFUL
    Total time: 2 seconds
    Finished: SUCCESS

    Please suggest.

    Thanks,
    Monica


    #Integration-Server-and-ESB
    #webMethods


  • 4.  RE: Jenkins and ABE

    Posted Thu August 18, 2016 07:13 AM

    I’d need to see your ABE & ProjectAutomator config files and see what you’re exactly trying to do.
    Also you should have only real packages you’re trying to build in your ABE “code source directory”.
    Did you try adding and using this repository in IS/solutions/deployer and MANUALLY create new project of type “repository”, adding new Deployment Set linked to this repo, and browsing through your IS packages within that build/repo and adding them to your deployment set?
    Once it works manually you can start automatizing it…


    #webMethods
    #Integration-Server-and-ESB


  • 5.  RE: Jenkins and ABE

    Posted Thu August 18, 2016 08:01 AM

    Thanks Lukas.

    When I’m trying to create project manually from IS/solutions/deployer using repository based type I’m unable to see the list of assets inside the repo. Attached screenshot for reference.

    But when I run jenkins build.xml, I have assets downloaded from repo to builds/output folder.

    Please suggest.

    Thanks,
    Monica


    #Integration-Server-and-ESB
    #webMethods


  • 6.  RE: Jenkins and ABE

    Posted Fri September 02, 2016 08:49 AM

    Hi All,

    When I try running the Jenkins I get below error while doing a checkout.


    CheckOut:
    [taskdef] Could not load definitions from resource org/tigris/subversion/svnant/svnantlib.xml. It could not be found.

    BUILD FAILED
    /opt/softwareag/common/AssetBuildEnvironment/master_build/build.xml:73: The following error occurred while executing this line:
    /opt/softwareag/common/AssetBuildEnvironment/master_build/build-source-checkout.xml:42: Problem: failed to create task or type svnSetting

    Can anyone please share the sample build-source-checkout.xml file for SVN. And also please let me know if I’m missing any configurations.
    Attached is the screenshot of jars used.

    Thanks,
    Monica


    #webMethods
    #Integration-Server-and-ESB


  • 7.  RE: Jenkins and ABE

    Posted Fri September 02, 2016 08:53 AM

    Hello Monica,

    Is there any reason why you are using build-source-checkout.xml? If you are using jenkins you can use the SVN plugin itself.

    I can see the issue is related to jars.


    #Integration-Server-and-ESB
    #webMethods


  • 8.  RE: Jenkins and ABE

    Posted Fri September 02, 2016 09:04 AM

    If you still want to use this, you also need to place svnant.jar.


    #webMethods
    #Integration-Server-and-ESB


  • 9.  RE: Jenkins and ABE

    Posted Fri September 02, 2016 09:31 AM

    Hi Srikanth,

    I have Subversion Plug-in installed on Jenkins.
    When I give the SVN URL svn://172.29.223.229:3690/C:/Test/trunk, it says repository URL is invalid. Any clue on this.

    Hence I was trying to use build-source-checkout.xml file

    Thanks,
    Monica


    #Integration-Server-and-ESB
    #webMethods


  • 10.  RE: Jenkins and ABE

    Posted Fri September 02, 2016 10:17 AM

    Yes, I do…!

    SVN will have another URL, that is http/https url. Can you try with that?


    #webMethods
    #Integration-Server-and-ESB


  • 11.  RE: Jenkins and ABE

    Posted Tue September 06, 2016 07:04 AM

    Hi Srikanth,

    We do not have svn repo configured for http/https. We have the one with svn://XXX.
    Does Jenkins work only with of type http/https repo.?

    Thanks,
    Monica


    #webMethods
    #Integration-Server-and-ESB


  • 12.  RE: Jenkins and ABE

    Posted Tue September 06, 2016 07:07 AM

    Hello Monica,

    It does work with SVN URL as well.

    Can you refer the above link?

    Can you ping your SVN server from the Jenkins server?


    #webMethods
    #Integration-Server-and-ESB


  • 13.  RE: Jenkins and ABE

    Posted Tue September 06, 2016 08:18 AM

    Hi Srikanth,

    Now I’m able to connect to repo from Jenkins. I removed 3690 port from URL and then it worked.
    Now I’m getting error like below:
    Error retrieving repo objects from Repo Server DEMO_Repository : Repository Index is missing. Please create the index for the Repository.
    When I try creating index manually from IS page it says “/opt/ABE/Builds/output/IS/_index (Permission denied)”
    I have set permission to /opt/ABE/Builds/output recursively. But when a new asset is created in this, the permission is not taking affect.

    Thanks,
    Monica


    #webMethods
    #Integration-Server-and-ESB


  • 14.  RE: Jenkins and ABE

    Posted Tue September 06, 2016 08:26 AM

    Hello Monica,

    This is because, your jenkins process is invoking the ABE scripts to create builds. Now the builds and indexes are created and owned by jenkins. When you invoke the deployer scrips from jenkins, it invokes the deployer process which does not have access to “/opt/ABE/Builds/output/IS/_index”.

    Can you run ll command and verify the permissions?


    #Integration-Server-and-ESB
    #webMethods


  • 15.  RE: Jenkins and ABE

    Posted Tue September 06, 2016 08:42 AM

    Hi Srikanth,

    I have set rwx permission to /opt/ABE/Builds/output folder recursively for user jenkins. This permission apply to assets which are currently in this directory. But when I run jenkins again, it builds assets freshly and the permission which was applied is not affecting these new build files.

    Thanks,
    Monica


    #webMethods
    #Integration-Server-and-ESB


  • 16.  RE: Jenkins and ABE

    Posted Tue September 06, 2016 08:52 AM

    Hello Monica,

    Yes, this is expected behavior.

    You need to execute the shell command "chmod -R 777 /opt/ABE/Builds/output " after the build step from jenkins.


    #Integration-Server-and-ESB
    #webMethods


  • 17.  RE: Jenkins and ABE

    Posted Tue September 06, 2016 09:46 AM

    Thanks Srikanth,

    I have added the step but it fails with below error
    “chmod: changing permissions of ‘/opt/ABE/Builds/output’: Operation not permitted” since the owner of this folder is root and we are executing chmod from jenkins.
    /opt/ABE/Builds/output- This folder needs to be accessed from Deployer as well as Jenkins. How do we manage this.

    Monica


    #webMethods
    #Integration-Server-and-ESB


  • 18.  RE: Jenkins and ABE

    Posted Tue September 06, 2016 09:56 AM

    Monica,

    Owner should not be root but he should be jenkins. If you set to every one Deployer will be able to access the folder.

    Can you refer to http://techcommunity.softwareag.com/documents/portlet_file_entry/10157/webMethods_Automated_Build_and_Deployment_Guide_with_Jenkins_v01.pdf/c22ebc67-8ba3-4979-97fe-2f3192c0e565?status=0
    section 8.2?


    #Integration-Server-and-ESB
    #webMethods


  • 19.  RE: Jenkins and ABE

    Posted Sun October 16, 2016 12:01 PM

    Hi Srikanth,

    I’m too facing similar issue.

    when I run build.bat in ABE it is generating compositeIndex in output builds folder folder .with reference to your webMethods Automated Build and Deployment Guide with Jenkins document it must generate build in CURRENT_BUILDS directory,but it is generating only compositeIndex in it .

    FYI - I ran build.bat manually by placing a IS package(ex: acme.zip)in build.source.dir - JENKINS_WORKSPACE

    Please help me how get the build file(acme.zip) file after running build.bat in Deployer Repository


    #Integration-Server-and-ESB
    #webMethods


  • 20.  RE: Jenkins and ABE

    Posted Mon October 17, 2016 01:51 AM

    Hello,

    You should not place archive files (acme.zip) but you should place the plain IS packages (acme directory).


    #Integration-Server-and-ESB
    #webMethods


  • 21.  RE: Jenkins and ABE

    Posted Fri October 21, 2016 08:44 AM

    Thanks Srikanth,

    is that fine if we simply unzip the package and place or do we need to get that directory from SAG_HOME/IS/instances/Is_instance/packages ?


    #Integration-Server-and-ESB
    #webMethods


  • 22.  RE: Jenkins and ABE

    Posted Tue April 11, 2017 10:57 AM

    Hi,

    I am getting below error while doing ContinuousIntegration with Jenkins:

    [exec] [ERROR] [11 Apr 2017 20:43:33,481] (RepoAssetUtil.java:getRepositoryComposite:220)
    [exec] No Repository Objects for the type IS found on the Source Server Alias local.

    Please help me to fix this error.

    Thanks
    Ravi G.


    #webMethods
    #Integration-Server-and-ESB


  • 23.  RE: Jenkins and ABE

    Posted 2 days ago

    Hello,

    I am setting up the CICD solution for web methods deployment automation using Azure Devops, ABE and deployer.

    Facing the below error when the Project Automator bat file get executed. Can any one suggest me on the below error and the required steps to resolve it.

    [ERROR] [11 Jul 2025 18:40:15,003] (RepoAssetUtil.java:getRepositoryComposite:220)
    No Repository Objects for the type IS found on the Source Server Alias local
    Regards,
    Yukesh


    ------------------------------
    Yukesh Kumar M
    ------------------------------