An open API service indexing awesome lists of open source software.

https://github.com/avalin/unity-ci-templates

Unity CI/CD pipeline with multi-platform builds, releases, and deploys
https://github.com/avalin/unity-ci-templates

build-pipelines ci-cd cicd deployment deployments game-dev game-development github-actions unity unity2d unity3d

Last synced: about 2 months ago
JSON representation

Unity CI/CD pipeline with multi-platform builds, releases, and deploys

Awesome Lists containing this project

README

        

# ๐Ÿš€ Unity CI/CD Pipeline

**Robust GitHub Actions workflows for Unity projects. Automates testing, multi-platform builds, and GitHub Releases with modular, reusable design.**

![CI](https://github.com/Avalin/CI-CD-Unity-Test-Project/actions/workflows/ci-cd-pipeline.yml/badge.svg)
![License](https://img.shields.io/github/license/Avalin/CI-CD-Unity-Test-Project?color=blue)
![Unity](https://img.shields.io/badge/unity-2022.3%2B-black?logo=unity)
![Latest Release](https://img.shields.io/github/v/release/Avalin/Unity-CI-Templates)

## ๐ŸŒ WebGL Demo

See a live WebGL build deployed using this CI/CD pipeline:

โžก๏ธ [**Play the Demo**](https://avalin.github.io/Unity-CI-Templates/)

> Deployed via GitHub Pages using the `gh-pages` deploy target.

## ๐Ÿš€ Getting Started

1๏ธโƒฃ Ensure your Unity project is in a GitHub repository
2๏ธโƒฃ Copy the required GitHub Actions workflows from the [CICD_Workflows folder](https://github.com/Avalin/Unity-CI-Templates/tree/main/CICD_Workflows)
3๏ธโƒฃ Add them to your repository at path: **.github โ†’ workflows** _(create folders if missing)_

4๏ธโƒฃ Configure the [required secrets](https://github.com/Avalin/Unity-CI-Templates/wiki/Required-Secrets) in your repository

5๏ธโƒฃ Read and optionally setup [repository variables](https://github.com/Avalin/Unity-CI-Templates/wiki/Repository-Variables), they're important to understand the inputs for the workflow dispatch

6๏ธโƒฃ Try dispatching the `ci-cd-dispatcher.yml` workflow or push a Git tag using [SemVer](https://github.com/Avalin/Unity-CI-Templates/wiki/Versioning-&-Tagging) to see the pipeline in action!

> โš ๏ธ Currently tested deploy targets: `gh-pages` (WebGL only). Others are implemented but not yet fully verified. Contributions welcome!

## ๐Ÿ“– Documentation

For full setup instructions, deployment target guides, and advanced configuration tips, see the โžก๏ธ [Wiki](https://github.com/Avalin/Unity-CI-Templates/wiki)

## ๐Ÿ“Œ Features

| Feature | Description |
|-------------------------------|-------------|
| ๐Ÿงช **Test Detection** | Auto-detects and runs EditMode & PlayMode tests. |
| ๐Ÿ› ๏ธ **Cross-Platform Builds** | Android, iOS, WebGL, macOS, Windows, and Linux supported. |
| ๐Ÿ“ฆ **Release Deployment** | Automatically creates GitHub Releases on tag push. |
| ๐Ÿงน **Modular Design** | Fully split into reusable `workflow_call` templates. |
| โšก **Parallel Matrix Builds** | Parallel jobs across macOS and Ubuntu runners. |
| ๐Ÿ” **Secure License Activation** | Unity `.ulf` license securely injected during CI. |
| ๐Ÿ—ƒ๏ธ **LFS & Cache** | Optional Git LFS + caching of Unity `Library` and `Packages/`. |
| ๐ŸŽ›๏ธ **Manual Dispatch** | Manually trigger preview builds with JSON platform control. |
| ๐Ÿš€ **Deploy** | Upload builds to external platforms like itch.io, TestFlight, or custom servers |
| ๐Ÿ“ฃ **Notifications** | Discord/Slack webhook support |
| ๐Ÿ” **Static Analysis** | C# linters or Unity analyzers |

## โš  Current Limitations

While the pipeline is production-ready and modular, some deploy integrations are still marked as **experimental**:

- ๐Ÿšง **Deploy targets like Steam, TestFlight, App Center**
These are implemented but have not yet been fully validated in live release pipelines.

- ๐Ÿ”— **External platforms may require manual setup**
Some targets (like itch.io, Firebase, S3) require correctly configured secrets and accounts - be sure to test deploy flows in a safe sandbox environment before pushing to production.

- ๐Ÿงช **Unity version compatibility**
Currently optimized for Unity 2022.3+, tested with Unity 6 too, but older versions may work as well.

> **Contributions and testing feedback are welcome!**
> If you successfully validate additional targets or add new ones, please consider opening a PR to improve support for the community.

---

## ๐Ÿ™Œ Credits

Crafted with โค๏ธ by [Avalin](https://github.com/Avalin)
Powered by GitHub Actions + Unity + Tears.
(PRs welcome!)