Books: 26

Build Automation

Master the New Build System for Android
Android adopted Gradle as the preferred build automation system a few years ago, but many Android developers are still unfamiliar with this open source tool. This hands-on guide provides a collection of Gradle recipes to help you quickly and easily accomplish the most common build tasks for your Android more » apps. You’ll learn how to customize project layouts, add dependencies, and generate many different versions of your app. Gradle is based on Groovy, yet very little knowledge of the JVM language is required for you to get started. Code examples use Android SDK version 23, with emulators from Marshmallow (Android 6) or Lollipop (Android 5). If you’re comfortable with Java and Android, you’re ready. * Understand Gradle’s generated build files for Android apps * Run Gradle from the command line or inside Android Studio * Add more Java libraries to your Android app * Import and export Eclipse ADT projects * Digitally sign a Release APK for the Google Play store * Use product flavors to build many versions of the same app * Add custom tasks to the Gradle build process * Test both your app’s Android and non-Android components * Improve the performance of your Gradle build « less
Learn how to use Gradle's powerful dependency management through extensive code samples, and discover how to define, customize, and deploy dependencies
ABOUT THIS BOOK * Be in total control of your dependencies * Deploy your artifacts to repositories with Gradle * Learn through code snippets and real-life examples WHO THIS BOOK IS FOR If you work on Java projects, use Gradle as a build automation tool, and you use dependencies in your project, more » this is the book for you. Additionally, if you want to deploy your project artifacts as dependencies for other developers using Gradle, you've found the right book. WHAT YOU WILL LEARN * Define dependencies in your Java projects * Publish your artifacts to Maven and Ivy repositories * Configure transitive dependencies * Install your artifacts in Bintray * Customize the resolution of dependency rules * Use your own code as dependencies in a multimodule project * Configure repositories to resolve dependencies IN DETAIL Gradle is the next generation in build automation. It allows you to define dependencies for your project in a clear way and also customize how they are resolved to suit your needs. It offers fine-grained control over how to publish your artifacts to Maven and Ivy repositories. Gradle Dependency Management defines dependencies for your Java-based project and customizes how they are resolved. You will learn how to configure the publication of artifacts to different repositories. Packed with plenty of code samples, you will understand how to define the repositories that contain dependencies. Following this, you will learn how to customize the dependency resolution process in Gradle. « less
Master the fundamentals of Gradle using real-world projects with this quick and easy-to-read guide
ABOUT THIS BOOK * Write beautiful build scripts for various types of projects effortlessly * Become more productive by harnessing the power and elegance of the Gradle DSL * Learn how to use Gradle quickly and effectively with this step-by-step guide WHO THIS BOOK IS FOR This book is for Java and more » other JVM-based language developers who want to use Gradle or are already using Gradle on their projects. No prior knowledge of Gradle is required, but some familiarity with build-related terminologies and an understanding of the Java language would help. WHAT YOU WILL LEARN * Master the Gradle DSL by identifying the building blocks * Learn just enough Groovy for Gradle * Set up tests and reports for your projects to make them CI ready * Create library, stand-alone, and web projects * Craft multi-module projects quickly and efficiently * Migrate existing projects to a modern Gradle build * Extract common build logic into plugins * Write builds for languages like Java, Groovy, and Scala IN DETAIL Gradle is an advanced and modern build automation tool. It inherits the best elements of the past generation of build tools, but it also differs and innovates to bring terseness, elegance, simplicity, and the flexibility to build. Right from installing Gradle and writing your first build file to creating a fully-fledged multi-module project build, this book will guide you through its topics in a step-by-step fashion. You will get your hands dirty with a simple Java project built with Gradle and go on to build web applications that are run with Jetty or Tomcat. We take a unique approach towards explaining the DSL using the Gradle API, which makes the DSL more accessible and intuitive. All in all, this book is a concise guide to help you decipher the Gradle build files, covering the essential topics that are most useful in real-world projects. With every chapter, you will learn a new topic and be able to readily implement your build files. STYLE AND APPROACH This step-by-step guide focuses on being productive with every chapter. When required, topics are explained in-depth to give you a good foundation of the Gradle fundamentals. The book covers most aspects of builds required for conventional JVM-based projects, and when necessary, points you towards the right resources. « less
Automate the build process for your Android projects with Gradle
***** About This Book ***** * Create custom Gradle tasks and plugins for your Android projects * Configure different build variants, each with their own dependencies and properties * Manage multi-module projects, and integrate modules interdependently ***** Who This Book Is For ***** If you more » are an experienced Android developer wanting to enhance your skills with the Gradle Android build system, then this book is for you. As a prerequisite, you will need some knowledge of the concepts of Android application development. ***** What You Will Learn ***** * Build new Android apps and libraries using Android Studio and Gradle * Migrate projects from Eclipse to Android Studio and Gradle * Manage the local and remote dependencies of your projects * Create multiple build variants * Include multiple modules in a single project * Integrate tests into the build process * Create custom tasks and plugins for Android projects ***** In Detail ***** Gradle is an open source build automation system that introduces a Groovy-based domain-specific language (DSL) to configure projects. Using Gradle makes it easy for Android developers to manage dependencies and set up the entire build process. This book begins by taking you through the basics of Gradle and how it works with Android Studio. Furthermore, you will learn how to add local and remote dependencies to your project. You will work with build variants, such as debug and release, paid and free, and even combinations of these things. The book will also help you set up unit and integration testing with different libraries and will show how Gradle and Android Studio can make running tests easier. Finally, you will be shown a number of tips and tricks on the advanced customization of your application's build process. By the end of this book, you will be able to customize the entire build process, and create your own tasks and plugins for your Gradle builds. « less
Over 80 hands-on recipes for streamlining development, management, and deployment with Grunt
***** About This Book ***** * Describes how to implement automation solutions for common web application development tasks * Explores configuration variations that are available to the plugins used in each recipe * A practical guide with clear and concise instructions to build entire web applications more » easily using Grunt.js ***** Who This Book Is For ***** This book will be useful to anyone who wishes to build anything from a static website to a more modern web application. Some basic JavaScript experience is preferable and some rudimentary knowledge of the Node.js platform could also come in handy. ***** What You Will Learn ***** * Automate CSS generation * Manage asynchronous work inside a task * Automate HTML and CSS template compilation * Manage entire web applications using Grunt * Automate various levels of testing * Build and publish custom tasks and plugins * Automate CoffeeScript and LiveScript code compilation ***** In Detail ***** A web application can quickly turn into a complex orchestration of many smaller components, each one requiring its own bit of maintenance. Grunt allows you to automate all the repetitive tasks required to get everything working together by using JavaScript, the most popular programming language. Grunt Cookbook offers a host of easy-to-follow recipes for automating repetitive tasks in your web application's development, management, and deployment processes. This book will introduce you to methods that can be used to automate basic processes and your favorite tools. By following the recipes, you will soon be comfortable using Grunt to perform a wide array of advanced tasks in a range of different scenarios. « less
Over 90 recipes to produce great results from Jenkins using pro-level practices, techniques, and solutions
Jenkins is an award-wining and one of the most popular Continuous Integration servers in the market today. It was designed to maintain, secure, communicate, test, build, and improve the software development process. This book starts by examining the most common maintenance tasks. This is followed more » by steps that enable you to enhance the overall security of Jenkins. You will then explore the relationship between Jenkins builds and Maven pom.xml. Then, you will learn how to use plugins to display code metrics and fail builds to improve quality, followed by how to run performance and functional tests against a web application and web services. Finally, you will see what the available plugins are, concluding with best practices to improve quality. « less
Master the technique of developing, migrating, and building automation using Gradle
***** About This Book ***** * Create new plugins to get customized features to suit your needs * Build projects like Java, Scala, and web applications using Gradle * A step-by-step guide that will help you to build and deploy Android mobile apps with Gradle ***** Who This Book Is For ***** If more » you are a developer with some experience in build tool and want to become an expert in build tool, then this book is for you. Basic knowledge of Gradle or any other build tool is essential. ***** What You Will Learn ***** * Create and develop a build system with Gradle * Understand Groovy basics and key features to write Gradle scripts * Explore the important features of Gradle: task management, plugin management, and dependency management * Walkthrough various in-built Gradle plugins, such as Java, Scala, War, Ant, Maven, and many others * Master the migration techniques from build tools such as Ant and Maven into Gradle * Integrate Gradle with popular continuous integration tools such as Jenkins and TeamCity ***** In Detail ***** With Gradle, you can efficiently build automation framework along with some flexible alternatives to customized build logic. This book starts with sound basics about build automation and how Gradle fits into this automation. It then moves on to give you a good exposure on Groovy―a scripting language used to write Gradle―and helps you understand a key elements of Groovy programming language. In the following chapters, you will deal with task management and learn how to integrate Ant tasks into build scripts. Furthermore, you will learn dependency management, plugin management, and its configuration techniques in Gradle. You will also get hands-on with building and testing projects using Gradle. You will then begin to cover diverse topics, such as Continuous Integration with Jenkins and TeamCity, Migration strategies, and Deployment, which enables you to learn concepts useful for Agile software development. Finally, you will also learn how to create a simple mobile application using Android and explore how Gradle can help you to build and test the application. « less
Pro Grunt.js gets you quickly up-to-speed with this popular JavaScript-based task runner. Author James Cryer takes you from initial installation all the way through to authoring successful plugins. Using hands-on examples you will learn about CSS linting, combination, compilation and minification; more » JavaScript linting, AMD modules, and templates; image processing and optimizing; and creating a local server. You will then move on to more advanced topics such as LiveReload, Test Automation, Modular configuration, and combining tasks. Finally you will see how to scaffold plugins using Grunt init and Yeoman, how to test them with Mocha and Chai, and how to publish them so others can use them. Start using Grunt.js to improve your workflows by using Pro Grunt.js today. « less
The simple Scala build tool
Summary A tutorial about effectively building Scala projects, sbt in Action introduces the sbt tool with a simple project that establishes the fundamentals of running commands and tasks. Next, it shows you how to use the peripheral libraries in sbt to make common tasks simpler. Finally, it covers more » how to deploy software effectively. You'll learn to appreciate how sbt improves the process of developing software, not just running builds. About the Technology sbt is a build tool native to Scala that can transform any build scenario into a streamlined, automated, and repeatable process. Its interactive shell lets you customize your builds on the fly, and with sbt's unique incremental compilation feature, you can update only the parts of your project that change, without having to rebuild everything. Mastering sbt, along with the right patterns and best practices, is guaranteed to save you time and trouble on every project. About the Book sbt in Action, first and foremost, teaches you how to build Scala projects effectively. It introduces the sbt tool with a simple project that establishes the fundamentals of running commands and tasks. Next, it shows you how to use the peripheral libraries in sbt to make common tasks simpler. Along the way, you'll work through real projects that demonstrate how to build and deploy your projects regardless of development methodology or process. What's Inside * Master sbt's loosely coupled libraries * Effectively manage dependencies * Automate and simplify your builds * Customize builds and tasks About the Reader Readers should be comfortable reading Scala code. No experience with sbt required. About the Authors Josh Suereth is an engineer at Typesafe and the author of Manning's Scala in Depth. Matthew Farwell is a senior developer and the author of the Scalastyle style checker.Table of Contents 1. PART 1 WHY SBT? 2. Why sbt? 3. Getting started 4. PART 2 UNDERSTANDING SBT'S CORE CONCEPTS 5. Core concepts 6. The default build 7. PART 3 WORKING WITH SBT 8. Testing 9. The IO and Process libraries 10. Accepting user input 11. Using plugins and external libraries 12. Debugging your build 13. PART 4 EXTENDING SBT 14. Automating workflows with commands 15. Defining a plugin 16. PART 5 DEPLOYING YOUR PROJECTS 17. Distributing your projects « less
The Build Tool for JavaScript
Grunt is everywhere. JavaScript projects from jQuery to Twitter Bootstrap use Grunt to convert code, run tests, and produce distributions for production. It's a build tool in the spirit of Make and Rake, but written with modern apps in mind. This book gets you up to speed with Grunt using practical hands-on more » examples, so you can wrangle your projects with ease. You'll learn how to create and maintain tasks and project builds, and automate your workflow with plugins and custom tasks. JavaScript has moved from being the language you love to hate to the language you need to use. And as JavaScript applications get more complex, you need a process to manage that complexity. While online tutorials just explain how to slap together a configuration file, this book goes further and shows you how to create your own tasks, design your own project templates, combine plugins together to bring a web app to life, and build your own plugins. « less