Skip to content

Nightly Release

Nightly Release #164

Workflow file for this run

name: "Experimental Release"
concurrency: release
on:
schedule:
- cron: "0 0 * * *"
workflow_dispatch:
env:
VCPKG_BINARY_SOURCES: "default"
jobs:
builds:
strategy:
fail-fast: false
matrix:
include:
- name: Windows Tiles x64 MSVC
artifact: windows-tiles-x64-msvc
arch: x64
os: windows-2019
mxe: none
ext: zip
content: application/zip
# - name: Windows Tiles x32 MSVC
# artifact: windows-tiles-x32-msvc
# arch: x86
# os: windows-2019
# mxe: none
# ext: zip
# content: application/zip
name: ${{ matrix.name }}
runs-on: ${{ matrix.os }}
env:
ZSTD_CLEVEL: 17
# There's not enough disk space to build both release and debug versions of
# our dependencies, so we hack the triplet file to build only release versions
# Have to use github.workspace because runner namespace isn't available yet.
VCPKG_OVERLAY_TRIPLETS: ${{ github.workspace }}\.github\vcpkg_triplets
CMAKE_PRESET: windows-tiles-sounds-x64-msvc
steps:
- uses: actions/checkout@v3
- name: Create VERSION.TXT
shell: bash
run: |
cat >VERSION.txt <<EOL
build type: ${{ matrix.artifact }}
build number: WIP
commit sha: ${{ github.sha }}
commit url: https://github.com/${{ github.repository }}/commit/${{ github.sha }}
EOL
- name: Remove Strawberry Perl from PATH
run: |
echo $env:PATH
echo =========================
$env:PATH = $env:PATH -replace "C:\\Strawberry\\c\\bin;", ""
$env:PATH = $env:PATH -replace "C:\\Strawberry\\perl\\site\\bin;", ""
$env:PATH = $env:PATH -replace "C:\\Strawberry\\perl\\bin;", ""
"PATH=$env:PATH" | Out-File -FilePath $env:GITHUB_ENV -Append
echo =========================
echo $env:PATH
- name: Install MSBuild (windows msvc)
if: runner.os == 'Windows'
uses: microsoft/[email protected]
- name: Install stable CMake
uses: lukka/get-cmake@latest
- name: Install vcpkg
uses: lukka/run-vcpkg@v11
id: runvcpkg
with:
vcpkgDirectory: '${{ runner.workspace }}/b/vcpkg'
vcpkgGitCommitId: "66444e13a86da7087ee24c342f91801cc6eb9877"
- name: Integrate vcpkg
if: runner.os == 'Windows'
run: |
vcpkg integrate install
vcpkg list
vcpkg install gettext
vcpkg list
- name: Compile translations (windows)
if: runner.os == 'Windows'
shell: bash
run: |
lang/compile_mo.sh all
- name: Build CBN (windows msvc)
if: runner.os == 'Windows'
env:
VCPKG_OVERLAY_TRIPLETS: ${{ github.workspace }}\.github\vcpkg_triplets
run: |
msbuild -m -p:Configuration=Release -p:Platform=${{ matrix.arch }} "-target:Cataclysm-vcpkg-static;JsonFormatter-vcpkg-static" msvc-full-features\Cataclysm-vcpkg-static.sln
.\build-scripts\windist.ps1
mv cataclysmbn.zip cbn-${{ matrix.artifact }}-${{ needs.metadata.outputs.tag_name }}.zip