74 lines
2.4 KiB
YAML
74 lines
2.4 KiB
YAML
|
|
name: Mac OS Build
|
|
on:
|
|
push:
|
|
jobs:
|
|
build:
|
|
name: Mac OS Build
|
|
permissions: write-all
|
|
runs-on: macos-latest
|
|
steps:
|
|
- name: Pulling the new commit
|
|
uses: actions/checkout@v2
|
|
- name: Setting up Haxe
|
|
uses: krdlab/setup-haxe@v1
|
|
with:
|
|
haxe-version: 4.2.5
|
|
- name: Restore existing build cache for faster compilation
|
|
uses: actions/cache@v3
|
|
with:
|
|
# not caching the bin folder to prevent asset duplication and stuff like that
|
|
key: cache-build-mac
|
|
path: |
|
|
.haxelib/
|
|
export/release/macos/haxe/
|
|
export/release/macos/obj/
|
|
restore-keys: |
|
|
cache-build-mac
|
|
- name: Installing/Updating libraries
|
|
run: |
|
|
haxe -cp commandline -D analyzer-optimize --run Main setup
|
|
- name: Building the game
|
|
run: |
|
|
haxelib run lime build mac
|
|
- name: Uploading artifact (entire build)
|
|
uses: actions/upload-artifact@v2
|
|
with:
|
|
name: Codename Engine
|
|
path: export/release/macos/bin
|
|
- name: Uploading artifact (executable)
|
|
uses: actions/upload-artifact@v2
|
|
with:
|
|
name: Update-Mac
|
|
path: export/release/macos/bin/CodenameEngine
|
|
- name: Clearing already existing cache
|
|
uses: actions/github-script@v6
|
|
with:
|
|
script: |
|
|
const caches = await github.rest.actions.getActionsCacheList({
|
|
owner: context.repo.owner,
|
|
repo: context.repo.repo,
|
|
})
|
|
for (const cache of caches.data.actions_caches) {
|
|
if (cache.key == "cache-build-mac") {
|
|
console.log('Clearing ' + cache.key + '...')
|
|
await github.rest.actions.deleteActionsCacheById({
|
|
owner: context.repo.owner,
|
|
repo: context.repo.repo,
|
|
cache_id: cache.id,
|
|
})
|
|
console.log("Cache cleared.")
|
|
}
|
|
}
|
|
- name: Uploading new cache
|
|
uses: actions/cache@v3
|
|
with:
|
|
# caching again since for some reason it doesnt work with the first post cache shit
|
|
key: cache-build-mac
|
|
path: |
|
|
.haxelib/
|
|
export/release/macos/haxe/
|
|
export/release/macos/obj/
|
|
restore-keys: |
|
|
cache-build-mac
|