šŸ”„Letā€™s Do DevOps: Passing data between GitHub Actions jobs, steps, and tasks (and make Matrices dynamic!)

Kyler Middleton
2 min readMay 16, 2023

This blog series focuses on presenting complex DevOps projects as simple and approachable via plain language and lots of pictures. You can do it!

Hey all!

I recently published a series of articles focused on how to build a GitHub App that triggers on Org actions, like creating a new repo, how to use an AWS Lambda to access secrets and trigger GitHub Actions, and how to pass an input variable to a GitHub Action. But I realize that a lot of those very cool widgets donā€™t work without something thatā€™s quite basic ā€” passing information around inside a GitHub Action.

When a variable is set by a task (the smallest unit of work inside a GitHub Action), that variable is accessible within the same task. But the next task? Nope. Itā€™s totally gone. So passing that var to the next step, or another job thatā€™s potentially run on an entirely different builder? Definitely no (at least by default).

However, as you build GitHub Actions, you need to do all of this (and more). Letā€™s talk what GitHub recommends, and the hacky, awesome ways I personally use that works best for my Actions.

Iā€™ve Moved To Lets Do DevOps

From here on out, all content will be published on Lets Do DevOps for free. I want to give back to the community as much as Iā€™m able. Please subscribe there to avoid missing any content. Thanks all ā¤.

You can find this article here:

--

--

Kyler Middleton

DevNetSecOps, DevRel, cloud security chick. I will teach you, itā€™s unavoidable. She/Her šŸ³ļøā€šŸŒˆšŸ³ļøā€šŸŒˆ, INFJ-A, support the EFF!