Wednesday, January 10, 2018
Jenkins is a Java-based, open-source automation tool. It's a continuous integration server designed to automate the non-human part of the software development process and can be used as a continuous delivery hub for mobile app projects. Due to it being open source, simple to use and reliable, Jenkins has rapidly become the open-source standard for development in the DevOps process. Their Update Center contains hundreds of plugins making it highly versatile for developers of all skill levels and enthusiastic user community provides a deep level of support should you run into any problems or have any questions.
Like Jenkins, TeamCity is a Java-based continuous integration server. TeamCity offers both a Freemium version for up to 100 build configurations and 3 free Build Agent licenses, as well as a paid version designed for large enterprise use ranging from $1,999 for 3 agents, up to $21,999 for 100 agents. TeamCity also offers a free license if you're working on an open-source project as well as discounts if you're a startup. Also like Jenkins, there is extensive support for TeamCity with tutorials and code examples easily found online.
Go, also known as GoCD, is an open-source tool primarily used for continuous delivery as a deployment pipeline and is notable for allowing complete test automation from the build-test-release process. Go allows for plugins and even lets you design your own if you can't find what you need. With over 1,000 members active in their forums, Go has a solid support base to answer any questions you may have. Go works with Windows, OSX, AWS AMIs, Docker, Debian/APT, RPM/YUM and Zip.
Puppet is an open-source software configuration management tool, used widely on Unix systems and Windows. While not designed specifically for mobile like the previous 3 tools, Puppet can still be used in software development and system configuration. Puppet uses declarative language to describe system configuration and their state to apply onto the system, or to compile in a catalog for distribution. Puppet is also model-driven, meaning it requires less programming knowledge to use and implement.--a big benefit for DevOps members with little or no programming knowledge.
Chef is a configuration management tool and close competitor of Puppet, meaning it is also not mobile specific. Chef is written in Ruby and provides a way to define infrastructure as code. Chef offers multiple products depending on your needs. Chef Automate, a continuous automation platform for high velocity IT, starting at $137 per node/annually, AWS OpsWorks, an AWS managed solution for automating infrastructure, apps and compliance, at $.0155 per node/hour, and Hosted Chef, a fully managed Chef server, at $72 per node/annually.
Please note that although Puppet and Chef are not DevOps tool specific to mobile, both tools can be leveraged by enterprise mobility teams when setting up the back-end environment of mobile services on servers. When building and testing mobile apps it is important to have the right infrastructure set up enabling the mobile services on the server that the app will call out to. DevOps tools, like Puppet and Chef, can help teams set up and deploy this environment easily in a data center.
Fabric offers users a suite of features including a lightweight crash reporting system to better fix issues quickly. The system provides you with insights and user behaviors in apps as well as behaviors that are common with healthy or unhealthy users. The real-time reporting provided by Fabric is trusted users along with its suite of additional features. Many Fabric features are free with the option of additional upgrades.