iOS Project Monitor
An iPhone app that monitors continuous integration servers for the status of your builds. Should a build fail, a push notification will be sent to your phone with information about the faulty commit. Coming to the app store in just a week (or two)!
Feel free to fork the repo and contribute! The public Pivotal Tracker project can be found here.
Project Setup - Client
The iPhone app uses Parse as its web server and therefore requires credentials.
enter your Parse credentials.
pod install in the
client/ folder to download iOS frameworks and dependencies.
The project uses a variety of optional services (New Relic, Crashlytics, Twitter). Please refer to
Project Setup - Frontend (Parse)
Parse's Cloud Code is used to provide an authentication endpoint for private pusher channels. Details can be found in parse/README.md folder.
Project Setup - Backend
Sidekiq is the background worker of choice for this project. Start producing work by polling Parse for builds to update with
rake produce. These builds will then get updated by Sidekiq workers with
Monitoring is available with
Parse and Pusher
The backend interacts with Parse's REST API and pushes updates with libPusher. Therefore keys are required in
config/application.yml file. Please see
config/application.yml.example as reference.
iOS Client tests use Kiwi and are run inside XCode.
Backend server tests can be run with RSpec with
The backend tests use togglable fakes as outlined in the Engine Yard talk. The following command will run the same tests with full integration:
backend/ $ INTEGRATION=true rake
Travis CI runs a test matrix that runs both integration and fake runs as seen here.