Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Migrate CI and packaging from Travis CI to GitHub Actions.
- Loading branch information
Showing
12 changed files
with
328 additions
and
248 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,48 @@ | ||
name: Continuous Integration | ||
|
||
on: | ||
push: | ||
pull_request: | ||
branches: [ bleed ] | ||
|
||
jobs: | ||
linux-mono: | ||
name: Linux (mono) | ||
runs-on: ubuntu-20.04 | ||
|
||
steps: | ||
- name: Clone Repository | ||
uses: actions/checkout@v2 | ||
|
||
- name: Check Code | ||
run: | | ||
mono --version | ||
make check | ||
mono ~/.nuget/packages/nunit.consolerunner/3.11.1/tools/nunit3-console.exe --noresult bin/OpenRA.Test.dll | ||
- name: Check Mods | ||
run: | | ||
sudo apt-get install lua5.1 | ||
make check-scripts | ||
make test | ||
windows: | ||
name: Windows (Framework 4.7) | ||
runs-on: windows-2019 | ||
|
||
steps: | ||
- name: Clone Repository | ||
uses: actions/checkout@v2 | ||
|
||
- name: Check Code | ||
shell: powershell | ||
run: | | ||
.\make.ps1 check | ||
Invoke-Expression "$home\.nuget\packages\nunit.consolerunner\3.11.1\tools\nunit3-console.exe --noresult bin/OpenRA.Test.dll" | ||
- name: Check Mods | ||
run: | | ||
chocolatey install lua --version 5.1.5.52 | ||
$ENV:Path = $ENV:Path + ";C:\Program Files (x86)\Lua\5.1\" | ||
.\make.ps1 check-scripts | ||
.\make.ps1 test |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,99 @@ | ||
name: Deploy Documentation | ||
|
||
on: | ||
workflow_dispatch: | ||
inputs: | ||
tag: | ||
description: 'Git Tag' | ||
required: true | ||
default: 'release-xxxxxxxx' | ||
|
||
jobs: | ||
wiki: | ||
name: Update Wiki | ||
if: github.repository == 'openra/openra' | ||
runs-on: ubuntu-20.04 | ||
steps: | ||
- name: Clone Repository | ||
uses: actions/checkout@v2 | ||
with: | ||
ref: ${{ github.event.inputs.tag }} | ||
|
||
- name: Prepare Environment | ||
run: | | ||
make all | ||
- name: Clone Wiki | ||
uses: actions/checkout@v2 | ||
with: | ||
repository: openra/openra.wiki | ||
token: ${{ secrets.DOCS_TOKEN }} | ||
This comment has been minimized.
Sorry, something went wrong. |
||
path: wiki | ||
|
||
- name: Update Wiki (Playtest) | ||
if: startsWith(github.event.inputs.tag, 'playtest-') | ||
env: | ||
GIT_TAG: ${{ github.event.inputs.tag }} | ||
run: | | ||
./utility.sh all --settings-docs "${GIT_TAG}" > "wiki/Settings (playtest).md" | ||
- name: Update Wiki (Release) | ||
if: startsWith(github.event.inputs.tag, 'release-') | ||
env: | ||
GIT_TAG: ${{ github.event.inputs.tag }} | ||
run: | | ||
./utility.sh all --settings-docs "${GIT_TAG}" > "wiki/Settings.md" | ||
- name: Push Wiki | ||
env: | ||
GIT_TAG: ${{ github.event.inputs.tag }} | ||
run: | | ||
cd wiki | ||
git config --local user.email "actions@github.com" | ||
git config --local user.name "GitHub Actions" | ||
git add --all | ||
git commit -m "Update auto-generated documentation for ${GIT_TAG}" | ||
git push origin master | ||
docs: | ||
name: Update docs.openra.net | ||
if: github.repository == 'openra/openra' | ||
runs-on: ubuntu-20.04 | ||
steps: | ||
- name: Clone docs.openra.net | ||
uses: actions/checkout@v2 | ||
with: | ||
repository: openra/docs.git | ||
token: ${{ secrets.DOCS_TOKEN }} | ||
path: docs | ||
ref: ${{ github.event.inputs.tag }} | ||
|
||
- name: Update docs.openra.net (Playtest) | ||
if: startsWith(github.event.inputs.tag, 'playtest-') | ||
env: | ||
GIT_TAG: ${{ github.event.inputs.tag }} | ||
run: | | ||
./utility.sh all --docs "${GIT_TAG}" > "docs/playtest/traits.md" | ||
./utility.sh all --weapon-docs "${GIT_TAG}" > "docs/playtest/weapons.md" | ||
./utility.sh all --lua-docs "${GIT_TAG}" > "docs/playtest/lua.md" | ||
- name: Update docs.openra.net (Release) | ||
if: startsWith(github.event.inputs.tag, 'release-') | ||
env: | ||
GIT_TAG: ${{ github.event.inputs.tag }} | ||
run: | | ||
./utility.sh all --docs "${GIT_TAG}" > "docs/release/traits.md" | ||
./utility.sh all --weapon-docs "${GIT_TAG}" > "docs/release/weapons.md" | ||
./utility.sh all --lua-docs "${GIT_TAG}" > "docs/release/lua.md" | ||
- name: Push docs.openra.net | ||
env: | ||
GIT_TAG: ${{ github.event.inputs.tag }} | ||
run: | | ||
cd docs | ||
git config --local user.email "actions@github.com" | ||
git config --local user.name "GitHub Actions" | ||
git add --all | ||
git commit -m "Update auto-generated documentation for ${GIT_TAG}" | ||
git push origin master | ||
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,88 @@ | ||
name: Deploy itch.io Packages | ||
|
||
on: | ||
workflow_dispatch: | ||
inputs: | ||
tag: | ||
description: 'Git Tag' | ||
required: true | ||
default: 'release-xxxxxxxx' | ||
|
||
jobs: | ||
itch: | ||
name: Deploy to itch.io | ||
runs-on: ubuntu-20.04 | ||
if: github.repository == 'openra/openra' | ||
steps: | ||
- name: Download Packages | ||
env: | ||
GIT_TAG: ${{ github.event.inputs.tag }} | ||
run: | | ||
wget -q "https://github.com/${{ github.repository }}/releases/download/${GIT_TAG}/OpenRA-${GIT_TAG}-x64.exe" | ||
wget -q "https://github.com/${{ github.repository }}/releases/download/${GIT_TAG}/OpenRA-${GIT_TAG}-x64-winportable.zip" -O "OpenRA-${GIT_TAG}-x64-win-itch.zip" | ||
wget -q "https://github.com${{ github.repository }}/releases/download/${GIT_TAG}/OpenRA-${GIT_TAG}.dmg" | ||
wget -q "https://github.com/${{ github.repository }}/releases/download/${GIT_TAG}/OpenRA-Dune-2000-x86_64.AppImage" | ||
wget -q "https://github.com/${{ github.repository }}/releases/download/${GIT_TAG}/OpenRA-Red-Alert-x86_64.AppImage" | ||
wget -q "https://github.com/${{ github.repository }}/releases/download/${GIT_TAG}/OpenRA-Tiberian-Dawn-x86_64.AppImage" | ||
wget -q "https://raw.githubusercontent.com/${{ github.repository }}/${GIT_TAG}/packaging/.itch.toml" | ||
zip -u "OpenRA-${GIT_TAG}-x64-win-itch.zip" .itch.toml | ||
- name: Publish Windows Installer | ||
uses: josephbmanley/butler-publish-itchio-action@master | ||
env: | ||
BUTLER_CREDENTIALS: ${{ secrets.BUTLER_CREDENTIALS }} | ||
CHANNEL: win | ||
ITCH_GAME: openra | ||
ITCH_USER: openra-developers | ||
VERSION: ${{ github.event.inputs.tag }} | ||
PACKAGE: OpenRA-${{ github.event.inputs.tag }}}-x64.exe" | ||
|
||
- name: Publish Windows Itch Bundle | ||
uses: josephbmanley/butler-publish-itchio-action@master | ||
env: | ||
BUTLER_CREDENTIALS: ${{ secrets.BUTLER_CREDENTIALS }} | ||
CHANNEL: itch | ||
ITCH_GAME: openra | ||
ITCH_USER: openra-developers | ||
VERSION: ${{ github.event.inputs.tag }} | ||
PACKAGE: OpenRA-${{ github.event.inputs.tag }}-x64-win-itch.zip | ||
|
||
- name: Publish macOS Package | ||
uses: josephbmanley/butler-publish-itchio-action@master | ||
env: | ||
BUTLER_CREDENTIALS: ${{ secrets.BUTLER_CREDENTIALS }} | ||
CHANNEL: macos | ||
ITCH_GAME: openra | ||
ITCH_USER: openra-developers | ||
VERSION: ${{ github.event.inputs.tag }} | ||
PACKAGE: OpenRA-${{ github.event.inputs.tag }}}.dmg" | ||
|
||
- name: Publish RA AppImage | ||
uses: josephbmanley/butler-publish-itchio-action@master | ||
env: | ||
BUTLER_CREDENTIALS: ${{ secrets.BUTLER_CREDENTIALS }} | ||
CHANNEL: linux-ra | ||
ITCH_GAME: openra | ||
ITCH_USER: openra-developers | ||
VERSION: ${{ github.event.inputs.tag }} | ||
PACKAGE: OpenRA-Red-Alert-x86_64.AppImage | ||
|
||
- name: Publish TD AppImage | ||
uses: josephbmanley/butler-publish-itchio-action@master | ||
env: | ||
BUTLER_CREDENTIALS: ${{ secrets.BUTLER_CREDENTIALS }} | ||
CHANNEL: linux-cnc | ||
ITCH_GAME: openra | ||
ITCH_USER: openra-developers | ||
VERSION: ${{ github.event.inputs.tag }} | ||
PACKAGE: OpenRA-Tiberian-Dawn-x86_64.AppImage | ||
|
||
- name: Publish D2k AppImage | ||
uses: josephbmanley/butler-publish-itchio-action@master | ||
env: | ||
BUTLER_CREDENTIALS: ${{ secrets.BUTLER_CREDENTIALS }} | ||
CHANNEL: linux-d2k | ||
ITCH_GAME: openra | ||
ITCH_USER: openra-developers | ||
VERSION: ${{ github.event.inputs.tag }} | ||
PACKAGE: OpenRA-Dune-2000-x86_64.AppImage |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,89 @@ | ||
name: Release Packaging | ||
|
||
on: | ||
push: | ||
tags: | ||
- 'release-*' | ||
- 'playtest-*' | ||
- 'devtest-*' | ||
|
||
jobs: | ||
linux: | ||
name: Linux AppImages | ||
runs-on: ubuntu-20.04 | ||
steps: | ||
- name: Clone Repository | ||
uses: actions/checkout@v2 | ||
|
||
- name: Prepare Environment | ||
run: echo "GIT_TAG=${GITHUB_REF#refs/tags/}" >> ${GITHUB_ENV} | ||
|
||
- name: Package AppImages | ||
run: | | ||
mkdir -p build/linux | ||
./packaging/linux/buildpackage.sh "${GIT_TAG}" "${PWD}/build/linux" | ||
- name: Upload Packages | ||
uses: svenstaro/upload-release-action@v2 | ||
with: | ||
repo_token: ${{ secrets.GITHUB_TOKEN }} | ||
tag: ${{ github.ref }} | ||
overwrite: true | ||
file_glob: true | ||
file: build/linux/* | ||
|
||
macos: | ||
name: macOS Disk Images | ||
runs-on: macos-10.15 | ||
steps: | ||
- name: Clone Repository | ||
uses: actions/checkout@v2 | ||
|
||
- name: Prepare Environment | ||
run: echo "GIT_TAG=${GITHUB_REF#refs/tags/}" >> ${GITHUB_ENV} | ||
|
||
- name: Package Disk Images | ||
env: | ||
MACOS_DEVELOPER_IDENTITY: ${{ secrets.MACOS_DEVELOPER_IDENTITY }} | ||
MACOS_DEVELOPER_CERTIFICATE_BASE64: ${{ secrets.MACOS_DEVELOPER_CERTIFICATE_BASE64 }} | ||
MACOS_DEVELOPER_CERTIFICATE_PASSWORD: ${{ secrets.MACOS_DEVELOPER_CERTIFICATE_PASSWORD }} | ||
MACOS_DEVELOPER_USERNAME: ${{ secrets.MACOS_DEVELOPER_USERNAME }} | ||
MACOS_DEVELOPER_PASSWORD: ${{ secrets.MACOS_DEVELOPER_PASSWORD }} | ||
run: | | ||
mkdir -p build/macos | ||
./packaging/macos/buildpackage.sh "${GIT_TAG}" "${PWD}/build/macos" | ||
- name: Upload Packages | ||
uses: svenstaro/upload-release-action@v2 | ||
with: | ||
repo_token: ${{ secrets.GITHUB_TOKEN }} | ||
tag: ${{ github.ref }} | ||
overwrite: true | ||
file_glob: true | ||
file: build/macos/* | ||
|
||
windows: | ||
name: Windows Installers | ||
runs-on: ubuntu-20.04 | ||
steps: | ||
- name: Clone Repository | ||
uses: actions/checkout@v2 | ||
|
||
- name: Prepare Environment | ||
run: | | ||
echo "GIT_TAG=${GITHUB_REF#refs/tags/}" >> ${GITHUB_ENV} | ||
sudo apt install nsis | ||
- name: Package Installers | ||
run: | | ||
mkdir -p build/windows | ||
./packaging/windows/buildpackage.sh "${GIT_TAG}" "${PWD}/build/windows" | ||
- name: Upload Packages | ||
uses: svenstaro/upload-release-action@v2 | ||
with: | ||
repo_token: ${{ secrets.GITHUB_TOKEN }} | ||
tag: ${{ github.ref }} | ||
overwrite: true | ||
file_glob: true | ||
file: build/windows/* |
Oops, something went wrong.
Why didn't you use
secrets.GITHUB_TOKEN
here?