Giter VIP home page Giter VIP logo

ios.projectmonitor's Introduction

Build Status

iOS Project Monitor

Icon Available for free in the App Store!

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)!

Screens

Currently supports Semaphore, Travis and Travis Pro. Jenkins and TeamCity support coming soon.

Feel free to fork the repo and contribute! The public Pivotal Tracker project can be found here.

Project Setup - Client

Parse

The iPhone app uses Parse as its web server and therefore requires credentials.

Copy ProjectMonitor/Credentials.example.plist to ProjectMonitor/Credentials.debug.plist, enter your Parse credentials.

Cocoa Pods

Run pod install in the client/ folder to download iOS frameworks and dependencies.

Other Credentials

The project uses a variety of optional services (New Relic, Crashlytics, Twitter). Please refer to ProjectMonitor/Credentials.example.plist and ProjectMonitor/ProjectMonitor-Info.debug.plist.

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

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 rake work.

Monitoring is available with rake monitor.

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.

Tests

Client

iOS Client tests use Kiwi and are run inside XCode.

Backend

Backend server tests can be run with RSpec with rake in backend/.

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

Travis CI runs a test matrix that runs both integration and fake runs as seen here.

Thanks

Inspired by Pivotal's Project Monitor and cppforlife's Checkman.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.