Book Image

Mastering GitHub Actions

By : Eric Chapman
Book Image

Mastering GitHub Actions

By: Eric Chapman

Overview of this book

Navigating GitHub Actions often leaves developers grappling with inefficiencies and collaboration bottlenecks. Mastering GitHub Actions offers solutions to these challenges, ensuring smoother software development. With 16 extensive chapters, this book simplifies GitHub Actions, walking you through its vast capabilities, from team and enterprise features to organization defaults, self-hosted runners, and monitoring tools. You’ll learn how to craft reusable workflows, design bespoke templates, publish actions, incorporate external services, and introduce enhanced security measures. Through hands-on examples, you’ll gain best-practice insights for team-based GitHub Actions workflows and discover strategies for maximizing organization accounts. Whether you’re a software engineer or a DevOps guru, by the end of this book, you'll be adept at amplifying productivity and leveraging automation's might to refine your development process.
Table of Contents (22 chapters)
Free Chapter
1
Part 1:Centralized Workflows to Assist with Governance
7
Part 2: Implementing Advanced Patterns within Actions
14
Part 3: Best Practices, Patterns, Tricks, and Tips Toolkit

Exploring Workflows

GitHub workflows are the foundation of GitHub Actions, enabling you to automate various tasks in your software development process, such as building, testing, and deploying code. They can also be helpful in managing processes and orchestrating complex automation with other functions within the GitHub platform.

A GitHub workflow is defined using a YAML configuration file in your repository’s .github/workflows directory. By reading this chapter, you will be best placed to follow along with the rest of this book and use examples to test out these concepts for use. In this chapter, we are going to cover the following main topics:

  • Exploring the capabilities of workflows
  • Best practices for creating maintainable and readable workflows
  • Jobs and how they work
  • Running workflow jobs as containers and services