diff --git a/.github/release-drafter.yml b/.github/release-drafter.yml new file mode 100644 index 00000000..62aef736 --- /dev/null +++ b/.github/release-drafter.yml @@ -0,0 +1,13 @@ +categories: + - title: '🚀 Features' + labels: + - 'feature' + - title: '🐛 Bug Fixes' + labels: + - 'bug' + - title: '🧰 Maintenance' + label: 'maintenance' +change-template: '- $TITLE @$AUTHOR (#$NUMBER)' +template: | + ## Changes + $CHANGES diff --git a/.github/workflows/pullrequest_android.yml b/.github/workflows/pullrequest_android.yml new file mode 100644 index 00000000..ab500588 --- /dev/null +++ b/.github/workflows/pullrequest_android.yml @@ -0,0 +1,51 @@ +name: Build & Test Pull Requests + +on: + pull_request: + branches: + - main + +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: + # MAUI Android Build + build-android: + runs-on: windows-2022 + name: Android Build + steps: + - name: Checkout + uses: actions/checkout@v2 + + - name: Setup .NET 6 + uses: actions/setup-dotnet@v1 + with: + dotnet-version: 6.0.200-preview.22055.15 + include-prerelease: true + + - uses: actions/setup-java@v2 + with: + distribution: 'microsoft' + java-version: '11' + + - name: Install MAUI Workloads + run: | + dotnet workload install android --ignore-failed-sources + dotnet workload install maui --ignore-failed-sources + + - name: Restore Dependencies + run: dotnet restore TransactionMobile.Maui.sln + + - name: Build Code + run: dotnet build TransactionMobile.Maui/TransactionMobile.Maui.csproj -c Release -f net6.0-android --no-restore + + - name: Run Unit Tests + run: dotnet test TransactionMobile.Maui.Tests/TransactionMobile.Maui.Tests.csproj + + #- name: Upload Android Artifact + # uses: actions/upload-artifact@v2.3.1 + # with: + # name: android-ci-build + # path: src/MauiBeach/bin/Release/net6.0-android/*Signed.a* diff --git a/.github/workflows/pullrequest_ios.yml b/.github/workflows/pullrequest_ios.yml new file mode 100644 index 00000000..c1661bb8 --- /dev/null +++ b/.github/workflows/pullrequest_ios.yml @@ -0,0 +1,46 @@ +name: Build & Test Pull Requests + +on: + pull_request: + branches: + - main + +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: +# MAUI iOS Build + build-ios: + runs-on: macos-11 + name: iOS Build + steps: + - name: Checkout + uses: actions/checkout@v2 + + - name: Setup .NET 6 + uses: actions/setup-dotnet@v1 + with: + dotnet-version: 6.0.200-preview.22055.15 + include-prerelease: true + + #- name: Install MAUI Workloads + # run: | + # dotnet workload install ios --ignore-failed-sources + # dotnet workload install maui --ignore-failed-sources + + #- name: Restore Dependencies + # run: dotnet restore TransactionMobile.Maui.sln + + #- name: Build Code + # run: dotnet build TransactionMobile.Maui.sln -c Release -f net6.0-ios --no-restore + + #- name: Run Unit Tests + # run: dotnet test TransactionMobile.Maui.Tests/TransactionMobile.Maui.Tests.csproj + + #- name: Upload iOS Artifact + # uses: actions/upload-artifact@v2.3.1 + # with: + # name: ios-ci-build + # path: src/MauiBeach/bin/Release/net6.0-ios/**/*.app/ diff --git a/.github/workflows/pullrequest_maccatalyst.yml b/.github/workflows/pullrequest_maccatalyst.yml new file mode 100644 index 00000000..82ee16e1 --- /dev/null +++ b/.github/workflows/pullrequest_maccatalyst.yml @@ -0,0 +1,43 @@ +name: Build & Test Pull Requests + +on: + pull_request: + branches: + - main + +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: + # MAUI MacCatalyst Build + build-mac: + runs-on: macos-11 + name: MacCatalyst Build + steps: + - name: Checkout + uses: actions/checkout@v2 + + - name: Setup .NET 6 + uses: actions/setup-dotnet@v1 + with: + dotnet-version: 6.0.200-preview.22055.15 + include-prerelease: true + +# - name: Install MAUI Workloads +# run: | +# dotnet workload install maccatalyst --ignore-failed-sources +# dotnet workload install maui --ignore-failed-sources + +# - name: Restore Dependencies +# run: dotnet restore TransactionMobile.Maui.sln + +# - name: Build Code +# run: dotnet build TransactionMobile.Maui.sln -c Release -f net6.0-maccatalyst --no-restore + +# #- name: Upload MacCatalyst Artifact +# # uses: actions/upload-artifact@v2.3.1 +# # with: +# # name: macos-ci-build +# # path: src/MauiBeach/bin/Release/net6.0-maccatalyst/**/*.app/ diff --git a/.github/workflows/pullrequest_windows.yml b/.github/workflows/pullrequest_windows.yml new file mode 100644 index 00000000..15e103f6 --- /dev/null +++ b/.github/workflows/pullrequest_windows.yml @@ -0,0 +1,49 @@ +name: Build & Test Pull Requests + +on: + pull_request: + branches: + - main + +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: + build-windows: + runs-on: windows-2022 + name: Windows Build + steps: + - name: Checkout + uses: actions/checkout@v2 + + - name: Setup .NET 6 + uses: actions/setup-dotnet@v1 + with: + dotnet-version: 6.0.200-preview.22055.15 + include-prerelease: true + + - name: Setup MSBuild + uses: microsoft/setup-msbuild@v1.1 + with: + vs-prerelease: true + + # - name: Install MAUI Workloads + # run: | + # dotnet workload install maui --ignore-failed-sources + + # - name: Restore Dependencies + # run: dotnet restore TransactionMobile.Maui.sln + + # - name: Build Code + # run: msbuild TransactionMobile.Maui/TransactionMobile.Maui.csproj -r -p:Configuration=Release -p:RestorePackages=false -p:TargetFramework=net6.0-windows10.0.19041 /p:GenerateAppxPackageOnBuild=true + + # - name: Run Unit Tests + # run: dotnet test TransactionMobile.Maui.Tests/TransactionMobile.Maui.Tests.csproj + + # #- name: Upload Windows Artifact + # # uses: actions/upload-artifact@v2.3.1 + # # with: + # # name: windows-ci-build + # # path: src/MauiBeach/bin/Release/net6.0-windows*/**/MauiBeach*.msix diff --git a/.github/workflows/release-management.yml b/.github/workflows/release-management.yml new file mode 100644 index 00000000..79b12044 --- /dev/null +++ b/.github/workflows/release-management.yml @@ -0,0 +1,16 @@ +name: Release Management + +on: + push: + # branches to consider in the event; optional, defaults to all + branches: + - master + +jobs: + update_draft_release: + runs-on: ubuntu-latest + steps: + # Drafts your next Release notes as Pull Requests are merged into "master" + - uses: toolmantim/release-drafter@v5.12.1 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/TransactionMobile.Maui.Tests/TransactionMobile.Maui.Tests.csproj b/TransactionMobile.Maui.Tests/TransactionMobile.Maui.Tests.csproj new file mode 100644 index 00000000..9f77f5f6 --- /dev/null +++ b/TransactionMobile.Maui.Tests/TransactionMobile.Maui.Tests.csproj @@ -0,0 +1,23 @@ + + + + net6.0 + enable + + false + + + + + + + runtime; build; native; contentfiles; analyzers; buildtransitive + all + + + runtime; build; native; contentfiles; analyzers; buildtransitive + all + + + + diff --git a/TransactionMobile.Maui.Tests/UnitTest1.cs b/TransactionMobile.Maui.Tests/UnitTest1.cs new file mode 100644 index 00000000..bba0242c --- /dev/null +++ b/TransactionMobile.Maui.Tests/UnitTest1.cs @@ -0,0 +1,13 @@ +using Xunit; + +namespace TransactionMobile.Maui.Tests +{ + public class UnitTest1 + { + [Fact] + public void Test1() + { + + } + } +} \ No newline at end of file diff --git a/TransactionMobile.Maui.sln b/TransactionMobile.Maui.sln index ba7253f9..ea86972a 100644 --- a/TransactionMobile.Maui.sln +++ b/TransactionMobile.Maui.sln @@ -5,6 +5,12 @@ VisualStudioVersion = 17.0.31611.283 MinimumVisualStudioVersion = 10.0.40219.1 Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "TransactionMobile.Maui", "TransactionMobile.Maui\TransactionMobile.Maui.csproj", "{73668181-7A26-435D-83E3-CF141AC8FD0B}" EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{1CBEF4C1-7D90-4A78-AA55-D81F1447A70E}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "test", "test", "{AB312EE3-CBA4-469A-8694-67C5466298C5}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TransactionMobile.Maui.Tests", "TransactionMobile.Maui.Tests\TransactionMobile.Maui.Tests.csproj", "{BD64046D-7103-44E6-8453-46C895A2AB93}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -17,10 +23,18 @@ Global {73668181-7A26-435D-83E3-CF141AC8FD0B}.Release|Any CPU.ActiveCfg = Release|Any CPU {73668181-7A26-435D-83E3-CF141AC8FD0B}.Release|Any CPU.Build.0 = Release|Any CPU {73668181-7A26-435D-83E3-CF141AC8FD0B}.Release|Any CPU.Deploy.0 = Release|Any CPU + {BD64046D-7103-44E6-8453-46C895A2AB93}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {BD64046D-7103-44E6-8453-46C895A2AB93}.Debug|Any CPU.Build.0 = Debug|Any CPU + {BD64046D-7103-44E6-8453-46C895A2AB93}.Release|Any CPU.ActiveCfg = Release|Any CPU + {BD64046D-7103-44E6-8453-46C895A2AB93}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE EndGlobalSection + GlobalSection(NestedProjects) = preSolution + {73668181-7A26-435D-83E3-CF141AC8FD0B} = {1CBEF4C1-7D90-4A78-AA55-D81F1447A70E} + {BD64046D-7103-44E6-8453-46C895A2AB93} = {AB312EE3-CBA4-469A-8694-67C5466298C5} + EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {61F7FB11-1E47-470C-91E2-47F8143E1572} EndGlobalSection diff --git a/TransactionMobile.Maui/Platforms/iOS/Info.plist b/TransactionMobile.Maui/Platforms/iOS/Info.plist index 0004a4fd..c894f847 100644 --- a/TransactionMobile.Maui/Platforms/iOS/Info.plist +++ b/TransactionMobile.Maui/Platforms/iOS/Info.plist @@ -28,5 +28,7 @@ XSAppIconAssets Assets.xcassets/appicon.appiconset + CFBundleIdentifier + com.transactionprocessing.transactionmobile diff --git a/TransactionMobile.Maui/TransactionMobile.Maui.csproj b/TransactionMobile.Maui/TransactionMobile.Maui.csproj index d9283523..32a297e8 100644 --- a/TransactionMobile.Maui/TransactionMobile.Maui.csproj +++ b/TransactionMobile.Maui/TransactionMobile.Maui.csproj @@ -93,4 +93,7 @@ win10-x64 +