54 lines
1.8 KiB
Markdown
54 lines
1.8 KiB
Markdown
---
|
|
tags:
|
|
- note/permanent
|
|
- devops/cicd
|
|
relates-to:
|
|
creation-date: 2024-04-09 09:46
|
|
modification-date: Tuesday 9th April 2024 09:49:48
|
|
---
|
|
# Git CI/CD
|
|
|
|
## Compass
|
|
|
|
> [!multi-column]
|
|
>
|
|
>> [!info]+ Comes from
|
|
>> Somewhere
|
|
>
|
|
>> [!success]+ Similar to
|
|
>> Something
|
|
>
|
|
>> [!danger]+ Competes with
|
|
>> Something
|
|
>
|
|
>> [!seealso]+ Leads to
|
|
>> Somewhere
|
|
|
|
## Core
|
|
In a trunk based UE game development environment, here's a list of the basic actions taken to make the game go through the whole CI/CD process.
|
|
### CI
|
|
- MANUAL: create a branch from `main` to code something
|
|
- MANUAL: commit and push to this branch
|
|
- AUTO: labelling with either ```feat, chore, docs, fix, refactor, or test.```
|
|
- AUTO: can also be additionally `skip-ci` and/or `code-review`. If labelled as `code-review`, let it sit.
|
|
- AUTO: if not `skip-ci`, build the game, run the game (null hypothesis test)
|
|
- AUTO: run basic pre-package tests (unit/functional).
|
|
- AUTO: on success, create a PR.
|
|
- AUTO: otherwise, merge to `main` and delete current branch
|
|
- METRIC: This should take minutes max.
|
|
### CD
|
|
- AUTO/MANUAL: on PR merge, if the PR is `feat`, bump the minor version tag. if the PR is `fix` or `chore`, bump the patch version. If `skip-ci`, stop there.
|
|
- AUTO: build, cook, stage, package and archive the game (development)
|
|
- AUTO: run tests on package (acceptance, E2E)
|
|
- AUTO: on success upload the result to a running build release.
|
|
- METRIC: This should take minutes max.
|
|
- NIGHTLY/MANUAL: either each night or on manual workflow trigger, make a complete build.
|
|
- AUTO: build the game, run the game.
|
|
- AUTO: run all pre-package tests.
|
|
- AUTO: build, cook, stage, package and archive the game (production)
|
|
- AUTO: run all package tests.
|
|
- AUTO: create a unique release with a release note and checkboxes.
|
|
- AUTO: publish on steam (or other).
|
|
|
|
---
|
|
# References |