Description
Book SynopsisApply the principles of DevOps in software developmentautomated builds, automated tests, and continuous deployment and deliveryto iOS application development on Amazon Web Services (AWS) cloud. This book provides detailed walkthroughs and example source code is provided for the concepts discussed so you can put theory into practical application. You'll start by building a basic iOS application and then dive deep into key AWS Developer tools and services to see how they can be used in iOS application development. Then review the details of the integration of these fully managed AWS services with open-source tools such as Jenkins and Fastlane that allow developers to get the best of both worlds and further help to enhance and increase agility in the development lifecycle of iOS apps. You'll also investigate the Amazon EC2 Mac instance, which allows you to run XCode in a cloud environment for the first time to leverage the flexibility,elasticity, and scale of AWS. It also allows for se
Table of ContentsChapter 1: Overview of DevOps and Continuous Deployment
• What is DevOps
• Principles of DevOps
• Continuous Integration
• Continuous Deployment
Chapter 2: Overview of iOS application development
• iOS development environment
• Building with Xcode
• Automation with fastlane
Chapter 3: Core Amazon Web Services (AWS) Concepts
• What is Cloud Computing and AWS
• Introduction to Core AWS Services
• The value proposition of AWS
Chapter 4: DevOps on AWS
• Continuous Integration
• Continuous Delivery
• Microservices
• Infrastructure as Code
• Monitoring and Logging
Chapter 5: Amazon EC2 Mac Build Server
• iOS development at scale without EC2 Mac build server
• Deploying EC2 Mac Server
• Connecting to your EC2 Mac Server
• Monitoring for EC2 macOS
• Other Cloud-based Mac build server Offerings
Chapter 6: Setup Development tools on the Build server
• Apple developer Command-line tools
• Setting up Xcode
• Setting up Jenkins
• Setting up Fastlane
Chapter 7: Source Control with AWS Code Commit
• Git fundamentals
• Creating an AWS CodeCommit repository
• Approval Rules in AWS CodeCommit
• Security in AWS CodeCommit
• Monitoring an AWS CodeCommit Repository
Chapter 8: Automated build with Jenkins
• Introduction to Jenkins Plugins
• Jenkins git Plugin
• Integrate an AWS CodeCommit Repository with Jenkins
• iOS application build on Jenkins
• Managing build artifacts
Chapter 9: Automated Testing with AWS Device Farm
• Introduction to AWS Device Farm
• Setting up a Device Farm Project and Test Runs
• Integrate Device Farm with Jenkins
• Automating AWS Device Farm
Chapter 10: Automated Deployment
• Integrate Jenkins and Fastlane for Continuous Integration
• Automate Code Signing
• Automate Appstore deployments
Chapter 11 - Pipeline Orchestration with AWS CodePipeline
• Creating a CICD Pipeline with AWS CodePipeline
• Integrating AWS CodeCommit to Pipeline
• Integrating Jenkins to Pipeline for Building
• Integrate AWS Device Farm to Pipeline for Testing
• Adding an automated Deployment stage
• Monitoring AWS CodePipeline
Chapter 12 – Multi AWS Environment Pipeline Deployment
• Why need a Cross-Account Pipeline Deployment
• Prerequisites of a Cross-Account Pipeline
• Creating a Pipeline with AWS CodeCommit in a different account
• Creating a Pipeline with AWS Device Farm in a different account
Audience: Beginning