Skip to content

Merge pull request #99 from md-owes/develop #70

Merge pull request #99 from md-owes/develop

Merge pull request #99 from md-owes/develop #70

Workflow file for this run

name: MacBuild
on:
push:
branches: [main]
workflow_dispatch:
permissions:
contents: read
env:
DOTNET_NOLOGO: true # Disable the .NET logo
DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true # Disable the .NET first time experience
DOTNET_CLI_TELEMETRY_OPTOUT: true # Disable sending .NET CLI telemetry
jobs:
calculate-version:
name: Calculate Version
runs-on: ubuntu-latest
outputs:
semVer: ${{ steps.gitversion.outputs.semVer }}
steps:
- name: Checkout
uses: actions/[email protected]
with:
fetch-depth: 0
- name: Install GitVersion
uses: gittools/actions/gitversion/setup@v0
with:
versionSpec: "5.x"
preferLatestVersion: true
- name: Determine Version
id: gitversion
uses: gittools/actions/gitversion/execute@v0
buildmacCatalyst:
runs-on: macos-latest
name: Mac Build
needs: calculate-version
env:
SEMVER: ${{ needs.calculate-version.outputs.semVer }}
steps:
- uses: actions/checkout@v2
- name: Setup .NET
uses: actions/[email protected]
with:
dotnet-version: |
7.0.x
- name: List installed .NET info
shell: pwsh
run: dotnet --info
# - name: Restore nuget packages
# run: |
# cd 6.0/Apps/WeatherTwentyOne/src/
# dotnet restore WeatherTwentyOne.sln
- name: Install .NET MAUI
shell: bash
run: |
dotnet workload install maui
- name: Create MAUI version
uses: managedcode/MAUIAppVersion@v1
with:
csproj: "directory-deleter/directory-deleter.csproj"
version: "0"
displayVersion: ${{env.SEMVER}}
printFile: true
- name: Restore Dependencies
run: dotnet restore directory-deleter/directory-deleter.csproj
# https://docs.microsoft.com/en-us/dotnet/maui/macos/deployment/overview
- name: Build MacCatalyst App
shell: bash
run: |
dotnet publish -f net7.0-maccatalyst -c Release -p:CreatePackage=true -o directory-deleter/bin/publish
mv directory-deleter/bin/publish/directory-deleter-${{env.SEMVER}}.pkg directory-deleter/bin/publish/directory-deleter-v${{env.SEMVER}}.pkg
- name: Display publish path
shell: bash
run: |
cd directory-deleter/bin/publish
ls
# - name: Build and Run UnitTests
# shell: bash
# run: |
# dotnet build <path to unit test csproj>
# dotnet test <path to unit test csproj> --no-build --verbosity normal
- name: Upload artifact
uses: actions/upload-artifact@v2
with:
name: artifacts-mac
path: |
directory-deleter/bin/publish/directory-deleter-v${{env.SEMVER}}.pkg
- name: Upload cache
uses: actions/cache@v3
with:
path: |
directory-deleter/bin/publish/directory-deleter-v${{env.SEMVER}}.pkg
key: directory-deleter-mac-pkg-v${{env.SEMVER}}
enableCrossOsArchive: true