# Hands on CI/CD and Github actions

> - You leave with a workflow, not just notes. The session builds .github/workflows/ci.yml incrementally — triggers, jobs, matrix, artifacts, secrets, conditions — so you finish with a working file…

- **URL:** https://zomra.io/free-sessions/hands-on-ci-cd-and-github-actions
- **Type:** Free session
- **Last updated:** August 28, 2026
- **Starts:** August 29, 2026 at 4:00 PM
- **Duration:** 90 minutes
- **Hosted by:** Aya Nasser Salama
- **Hosting organisation:** MLOps MENA Community
- **Registered attendees:** 134
- **Price:** Free

## Why attend

- **You leave with a workflow, not just notes.** The session builds .github/workflows/ci.yml incrementally — triggers, jobs, matrix, artifacts, secrets, conditions — so you finish with a working file you can drop into your own repository the same day.

- **It closes the gap between "the workflow is green" and "the workflow is correct."** Most people copy a workflow from a template and never learn why files disappear between jobs, why a job runs on every push when it shouldn't, or why GITHUB_TOKEN had far more permission than it needed.

- **Real engineering decisions, not just YAML syntax.** GitHub-hosted versus self-hosted runners, run: versus a marketplace action, when caching helps and when it silently poisons a build, which jobs deserve an approval gate — these are the trade-offs you'll be asked to defend at work.

- **A supply-chain security angle most tutorials skip.** Third-party actions run with access to your repository, so you'll learn to pin actions to a commit SHA rather than a floating tag, scope permissions: down to the minimum, and understand why pull_request_target is the trigger that leaks secrets if you misuse it.

- **A practical code-quality layer you can enforce immediately.** You'll see how Ruff and pre-commit end style debates locally, and why the identical check must also run as a job — because git commit --no-verify makes the local hook a convenience while the workflow plus a branch protection rule is the actual guarantee. Plus live Q&A: bring your own slow, flaky, or over-permissioned workflows.

## What you will learn

- Write a workflow from scratch — set up .github/workflows/ci.yml, choose triggers with on:, and build jobs from run: commands and uses: actions.
- Control order and parallelism — chain jobs with needs:, and run one job across multiple versions or OSes with strategy: matrix.
- Pick the right runner — GitHub-hosted vs. self-hosted, and when to run steps inside a container: instead.
- Move data and secrets safely — pass files between jobs with artifacts, speed up installs with actions/cache, and handle credentials with repository secrets and scoped GITHUB_TOKEN permissions.
- Decide when things run — if: conditions, environment approval gates, PR checks, scheduled runs, and continue-on-error.

## Requirements

- Git fundamentals — cloning, branching, commits, and merge requests; you should be comfortable working on a feature branch.
- Linux command line and Bash basics — navigating a filesystem, running commands, and reading a simple shell script, since every job you write is a list of shell commands.
- Docker: containers and images — building an image, tagging it, and pushing to a registry; the Docker executor is the default path throughout the session.

## Speakers

### Abdallah Almalawany

DevOps Engineer

- https://www.linkedin.com/in/abdallah-elmalawany-840595270
- https://github.com/abdallahelmalawany

### Aya Nasser Salama

Founder of MLOps MENA Community and Senior MLOps Engineer

I'm a Senior MLOps and LLMOps Engineer with 6+ years in AI, holding a master's in Informatics from Nile University. I've worked at Unifonic, Valeo, Aiactive Technologies, and Advanced Programs Co. I'm an MLOps instructor at ITI Cairo and founder of the MLOps MENA Community.

- https://www.linkedin.com/in/ayanasser/
- https://www.linkedin.com/company/mlops-mena/

## Registration

Register at https://zomra.io/free-sessions/hands-on-ci-cd-and-github-actions
