Single-Project jobs are ones that build a single WebObjects Framework or Application. Any frameworks that are depended on by a single-project job must be either already built and installed in the JENKINS_HOME/WOFrameworksRepository (i.e., WebObjects and Project Wonder frameworks) or can be other Jenkins jobs with the same name, e.g., a dependency on MyFramework.framework can be satisfied by a Jenkins job named MyFramework.

WOJenkins

WOJenkins is a set of shell scripts and Jenkins job configurations developed specifically to make it easy to build WebObjects projects with Jenkins.

Building a WebObjects Framework or Application

Prerequisites

To make use of WOJenkins, you will need all of the following:

  1. A running Jenkins server. Ideally setup and configured using the Installing and Configuring Jenkins instructions.
  2. Git SCM installed on the Jenkins server.
  3. The Jenkins Git Plugin installed
  4. The Jenkins Multiple SCMs Plugin installed
  5. The requested version of WebObjects and Wonder frameworks installed using the WOJenkins job configuration described by the Installing WebObjects and Wonder for Jenkins using WOJenkins page.
  1. Change directories into JENKINS_HOME/jobs
    cd /Users/Shared/Jenkins/Home/jobs/
    
  2. Clone job configuration from github.com repository
    • If your project is in a Git repository:
      sudo git clone https://github.com/avendasora/WOJenkins_Job_WOProject_Git.git My_WebObjects_Project
      
    • If your project is in a SVN repository:
      git clone https://github.com/avendasora/WOJenkins_Job_WOProject_SVN.git My_WebObjects_Project
      
  3. Set correct ownership and permissions - If you used the Mac OSX Jenkins installer, the user and group that it will be using are both "jenkins"
    sudo chown -R jenkins:jenkins My_WebObjects_Project/
    
  4. Open Jenkins and tell it to reload the configuration files so it will see the new job.
    • From within Jenkins user interface, navigate to: Jenkins -> Manage Jenkins -> Reload Configuration from Disk
    • Call the reload URL: http://localhost:8080/reload - this link should work for a default install if you haven't turned on any security.
  5. Open the new Job.
    You should see a new job called My_WebObjects_Project.

    If you don't see the job then verify that the jenkins (for OS X) or daemon (for Linux) user has read-write privileges on both the JENKINS_HOME/jobs/My_WebObjects_Project directory and the config.xml file and reload the configuration from disk again.