FAForever / FAForever/fa

Add a game version check to the deployment workflow for the FAF game type

Open
#6,261 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
Lua
Stars
264
Forks
260
Avg merge
3d 2h
Merged PRs (30d)
21

Description

### Description

When we deploy to the main release branch `deploy/faf` it is important that the game version matches the version of the latest release in the repository. This value is defined at three different places:

- (1) [modinfo.lua](https://github.com/FAForever/fa/blob/develop/mod_info.lua)

This is where the server reads the game version from. If it is not updated then the server process will early exit and the deployment fails.

- (2) [version.lua](https://github.com/FAForever/fa/blob/develop/lua/version.lua)

This is where the game reads the game version from.

- (3) [changelogData.lua](https://github.com/FAForever/fa/blob/develop/lua/ui/lobby/changelogData.lua)

This is where the changelog reads the game version from. This particular file should probably be refactored at some point to use the value in `version.lua`. Today is not that day however, so we still need to update it.

### Course of Action

Preferably all the instructions are compatible with a Bash script. This is useful for the test plan. The course of action consists of several phases:

- (1) Bash instructions to retrieve the game version from `mod_info.lua`
- (2) Bash instructions to retrieve the game version from `version.lua`
- (3) Bash instructions to retrieve the game version from `changelogData.lua`
- (4) Bash instructions to retrieve the game version from the last release on Github

Compare the game versions. They should all match.

### Test Plan

You should be able to run the bash instructions locally. Otherwise you can always try and use [act](https://github.com/nektos/act).

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.