liveBook · Manning

GitHub Actions

As explained in Shipping Go: Develop, deliver, discuss, design, and go again

A GitHub platform for automating software development workflows through event-triggered jobs and reusable actions.

GitHub Actions turns a repository change into a repeatable delivery path. Instead of handing work between people, a continuous integration pipeline moves code through predefined checks and build steps. section 1.0 section 2.3

A YAML workflow defines when the pipeline runs, which jobs it performs, and what happens when something fails. Jobs contain ordered steps, may depend on one another, and either run commands or invoke reusable actions. section 2.3

A first build pipeline can stay deliberately small:

A repository build workflow

Create .github/workflows/pipeline.yml and trigger it on pushes to main. A build job running on ubuntu-latest can use actions/setup-go@v2 with Go ^1.18, actions/checkout@v2, make build, shell commands for copying files, and actions/upload-artifact@v2 for the resulting api binary. section 2.3

How Shipping Go: Develop, deliver, discuss, design, and go again covers it

How deep it goes
Explains YAML workflows, jobs, steps, dependencies, commands, reusable actions, and an initial artifact pipeline.
Examples
Uses a Go binary pipeline triggered on main, including checkout, setup, build, file copying, and artifact upload.
What it assumes
Assumes programming ability while teaching pipeline construction before application code exists.
What you can do after
Build it from scratch by defining a YAML workflow that builds Go code and uploads a repository artifact.
How it connects
Connects GitHub Actions with continuous integration, YAML, Go, reusable actions, artifacts, and alternative CI systems.

Also explained in

Compare how 10 books explain GitHub Actions →

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Shipping Go: Develop, deliver, discuss, design, and go again. The section links point to the parts of the book it draws on.