---
title: GitHub Actions and Azure - Getting started with GitHub Actions and Azure Login
date: 2020-11-29
abstract: New to GitHub Actions? This episode is your starting point. Chris walks through GitHub Actions workflow fundamentals—YAML syntax, jobs, steps, GitHub-hosted runners, and secrets management—then shows how to authenticate against Azure using the Azure Login action and a service principal, before running Azure CLI commands as part of your first automated pipeline.
tags: GitHub, GitHub Actions, Git, Azure, Azure DevOps, DevOps, CI/CD, Identity & Authentication, Automation, Security
author: Chris Reddington
canonical_url: https://chrisreddington.com/video/github-actions-getting-started/
---


New to GitHub Actions? This episode is your starting point for automating Azure deployments with GitHub's built-in CI/CD platform.

## What You'll Learn

- The difference between **Git** and **GitHub**, and how GitHub Actions fits into your development workflow alongside alternatives like Azure DevOps, GitLab, and Bitbucket
- **GitHub Actions workflow YAML structure**: `on` triggers, `jobs`, `steps`, `runs-on`
- How **GitHub-hosted runners** (Ubuntu, Windows, macOS) work and when to use self-hosted alternatives
- Using the **Azure Login** action to authenticate against Azure from a workflow
- Creating an **Azure Service Principal** with the `az ad sp create-for-rbac` command and storing credentials as **GitHub Secrets**
- Running **Azure CLI** commands as workflow steps after authentication
- Pinning GitHub Actions to specific versions (e.g., `azure/login@v1`) for reproducible, auditable pipelines

## Key Concept: Actions as Repositories

GitHub Actions are themselves open-source repositories. When you reference `azure/login@v1`, you're pinning to a specific release tag of the `azure/login` GitHub repository. This makes the GitHub Actions ecosystem composable, auditable, and extensible—anyone can submit a pull request to add new capabilities.
