Home
Cruise On Mac OS

Cruise On Mac OS

June 02 2021

Cruise On Mac OS

With some encouragement from my colleagues, I expanded the original post here to be a more soup-to-nuts recipe for setting up CC.rb with git and xcodebuild on Mac OS X. Thanks, guys!

Mac os download

I am currently working on a cross-platform project which has multiple targets that need to build on Mac OS X. On my previous project, we were using CruiseControl.rb on linux to watch a Subversion repository for a Rails project and run all the associated tests upon checkin. Since we wanted to be like the Cool Kids on this new project, we of course decided to use git for source code management. We use gitosis to manage multiple remote git repositories under a single user. However, you can use any approach you want for the remote repository management as long as you can compose a git URL that points to it.

Mac

Cruise On Mac Os Catalina

  • Carnival cruise deals and cruise packages to the most popular destinations. Find great deals and specials on Caribbean, The Bahamas, Alaska, and Mexico cruises.
  • A Mac tutorial for beginners and PC users showing how to switch from Windows to macOS. This tutorial covers all of the basics of using macOS including the f.

Assumptions:

  • You have a Mac that is probably not your development machine that will serve as a Continuous Integration (CI) server.
  • You have a remote git repository that the CI machine can monitor and pull changes from.

Cruise On Mac Os X

Operating System: Windows Vista/7/8 (All OS must be 64 bit) / Mac OS 10.6 or above. Processor: Intel i3 2.6 or equivalent. Memory: 4 GB Ram: Graphics: Dedicated graphics with 1GB VRAM (DX11 compatible - Nvidia Geforce GTX 470/ATI Radeon 6900 series or greater) DirectX: Version 11: Hard Drive: 2 GB available space: Network.


Procedure:
It took a little doing to make CC.rb play nice on Mac OS X. In addition to the typical CC.rb installation, getting CC.rb to launch at system startup using launchd took the proper file in the proper location. Nevertheless, the whole setup is pretty darned straightforward. Here’s how I did it:

  1. I created a user named “continuousintegration.” You can name yours anything you like, or use an existing user. Log in as this user.
  2. Download and install CruiseControl.rb. I unpacked it into the the home directory of the continuousintegration user. So, the absolute path to the CC.rb installation directory in my case is: /Users/continuousintegration/cruisecontrol.rb.
  3. Create the work directory for CC.rb. In my case, I use /var/cruise as the work directory. This required admin privileges to create; just make sure that your CI user has access to this directory.
  4. Add your git repository to CC.rb.
  5. At the root level of your git repository, add a file named cruise_config.rb. This provides some useful configuration information so that CC.rb knows what to do in order to build your project as well as whom to notify when the build fails. You provide the build command for CC.rb in cruise_config.rb by assigning to project.build_command. I actually made my build command point to ./ci_build.sh so that I can do anything I want for the build in a separate shell script named ci_build.sh in the git repository root. In my case, I am actually running xcodebuild to build a target I created in my Xcode project; you can do literally anything you want here, e. g. make check, rake… whatever! Witness my cruise_config.rb and ci_build.sh files. (If you create a ci_build.sh or equivalent file, be sure you make it executable.) Make sure you git push your changes to add the cruise_config.rb (and ci_build.sh if you choose to do so).
  6. You should now be able to start up CC.rb and look at the dashboard to see your project.

    Browse to http://localhost:3333

  7. Wait! You’re not finished yet! There’s one more step: setting up CC.rb to start every time the system starts up. This is accomplished by creating a plist file in /Library/LaunchDaemons which starts up CC.rb. (For more information on what’s going on here, see the Apple documentation or man launchd.)
    Download this plist file and copy it into /Library/LaunchDaemons


    Now when you restart the CI machine, CC.rb should start up automatically.


Setting up CC.rb all by itself tends to be pretty easy; it’s getting the daemon to run at system startup as well as getting your build to work properly that tend to be the problems. If you’re having trouble getting things running after following these directions, or if you find errors in these directions, please let me know.

Cruise On Mac OS

Leave a Reply

Cancel reply