From c12172e5cc602e17c170a97a9c2a140dea3e21e5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9r=C3=B4me=20Laban?= Date: Mon, 21 Jan 2019 11:43:52 -0500 Subject: [PATCH] Add CI configuration --- .vsts-ci.yml | 7 +++ .vsts-macOS-build.yml | 66 ++++++++++++++++++++++++++++ .vsts-prod.yml | 12 ++++++ .vsts-win-build.yml | 92 ++++++++++++++++++++++++++++++++++++++++ build/Build.csproj | 62 +++++++++++++++++++++++++++ build/nventive.keystore | Bin 0 -> 2256 bytes 6 files changed, 239 insertions(+) create mode 100644 .vsts-ci.yml create mode 100644 .vsts-macOS-build.yml create mode 100644 .vsts-prod.yml create mode 100644 .vsts-win-build.yml create mode 100644 build/Build.csproj create mode 100644 build/nventive.keystore diff --git a/.vsts-ci.yml b/.vsts-ci.yml new file mode 100644 index 0000000..97f7099 --- /dev/null +++ b/.vsts-ci.yml @@ -0,0 +1,7 @@ +jobs: + +- template: .vsts-win-build.yml + parameters: + name: Windows + pool: + vmImage: 'vs2017-win2016' \ No newline at end of file diff --git a/.vsts-macOS-build.yml b/.vsts-macOS-build.yml new file mode 100644 index 0000000..42f0394 --- /dev/null +++ b/.vsts-macOS-build.yml @@ -0,0 +1,66 @@ +parameters: + pool: '' + +jobs: +- job: macos + pool: ${{ parameters.pool }} + + steps: + - checkout: self + clean: true + + - task: InstallAppleCertificate@2 + displayName: 'Install an Apple certificate' + inputs: + certSecureFile: '$(iOSSigning.Certificate)' + certPwd: '$(iOSSigning.CertificatePwd)' + signingIdentity: '$(iOSSigning.CertificateIdentity)' + + - task: InstallAppleProvisioningProfile@1 + displayName: 'Install an Apple provisioning profile' + inputs: + provProfileSecureFile: '$(iOSSigning.ProvisioningProfile)' + + - task: MSBuild@1 + inputs: + solution: build/Build.csproj + msbuildLocationMethod: version + msbuildVersion: latest + msbuildArchitecture: x86 + msbuildArguments: "/r" + clean: false + maximumCpuCount: true + restoreNugetPackages: false + logProjectEvents: false + createLogFile: false + + - task: MSBuild@1 + inputs: + solution: '$(build.sourcesdirectory)/XamlControlsGallery.iOS/XamlControlsGallery.iOS.csproj' + msbuildLocationMethod: version + msbuildVersion: latest + msbuildArchitecture: x86 + msbuildArguments: '/r /p:Configuration=Release /p:Platform=iPhone /detailedsummary /m:16 /nr:false' + clean: false + maximumCpuCount: true + restoreNugetPackages: false + logProjectEvents: true + createLogFile: true + + - task: CopyFiles@2 + displayName: 'Publish iOS Binaries' + inputs: + SourceFolder: $(build.sourcesdirectory)/XamlControlsGallery.iOS/bin/iPhone/Release + Contents: '*.ipa' + TargetFolder: $(build.artifactstagingdirectory)/XamlUIBasics-iOS + CleanTargetFolder: false + OverWrite: false + flattenFolders: false + + - task: PublishBuildArtifacts@1 + # https://developercommunity.visualstudio.com/content/problem/284991/public-vsts-previouw-cant-set-build-number-of-pr-b.html + condition: eq(variables['System.PullRequest.IsFork'], 'False') + inputs: + PathtoPublish: $(build.artifactstagingdirectory) + ArtifactName: universal-samples-drop + ArtifactType: Container diff --git a/.vsts-prod.yml b/.vsts-prod.yml new file mode 100644 index 0000000..859f0e8 --- /dev/null +++ b/.vsts-prod.yml @@ -0,0 +1,12 @@ +jobs: +- template: .vsts-macOS-build.yml + parameters: + name: macOS + pool: + vmImage: 'macOS-10.13' + +- template: .vsts-win-build.yml + parameters: + name: Windows + pool: + vmImage: 'vs2017-win2016' \ No newline at end of file diff --git a/.vsts-win-build.yml b/.vsts-win-build.yml new file mode 100644 index 0000000..4c9f88e --- /dev/null +++ b/.vsts-win-build.yml @@ -0,0 +1,92 @@ +parameters: + pool: '' + sign: false + +jobs: +- job: Windows + pool: ${{ parameters.pool }} + + variables: + ANDROID_NDK_HOME: C:\Microsoft\AndroidNDK64\android-ndk-r15c + ANDROID_NDK_PATH: C:\Microsoft\AndroidNDK64\android-ndk-r15c + AndroidNdkDirectory: C:\Microsoft\AndroidNDK64\android-ndk-r15c + + steps: + - checkout: self + clean: true + + - task: GitVersion@3 + # Ignore gitversion for forks, until this is fixed: + # https://developercommunity.visualstudio.com/content/problem/284991/public-vsts-previouw-cant-set-build-number-of-pr-b.html + condition: eq(variables['System.PullRequest.IsFork'], 'False') + inputs: + updateAssemblyInfo: false + + - task: NuGetToolInstaller@0 + inputs: + versionSpec: 4.7.0 + checkLatest: false + + - task: MSBuild@1 + inputs: + solution: build/Build.csproj + msbuildLocationMethod: version + msbuildVersion: latest + msbuildArchitecture: x86 + msbuildArguments: "/r" + clean: false + maximumCpuCount: true + restoreNugetPackages: false + logProjectEvents: false + createLogFile: false + + - task: MSBuild@1 + inputs: + solution: XamlControlsGallery.Windows\XamlControlsGallery.sln + msbuildLocationMethod: version + msbuildVersion: latest + msbuildArchitecture: x86 + msbuildArguments: '/r /p:Configuration=Release /detailedsummary /m:16 /nr:false "/p:AndroidSigningStorePass=$(nventivekeystore_pwd)" "/p:AndroidSigningKeyAlias=$(nventivekeystore_alias)" "/p:AndroidSigningKeyPass=$(nventivekeystore_aliaspwd)"' + clean: false + maximumCpuCount: true + restoreNugetPackages: false + logProjectEvents: false + createLogFile: false + + - task: CopyFiles@2 + displayName: 'Publish Wasm Binaries' + inputs: + SourceFolder: $(build.sourcesdirectory)/XamlControlsGallery.Wasm/bin/Release/netstandard2.0/dist + Contents: '**/*.*' + TargetFolder: $(build.artifactstagingdirectory)/XamlUIBasics-wasm + CleanTargetFolder: false + OverWrite: false + flattenFolders: false + + - task: CopyFiles@2 + displayName: 'Publish Android Binaries' + inputs: + SourceFolder: $(build.sourcesdirectory)/XamlControlsGallery.Droid/bin/Release + Contents: '*.apk' + TargetFolder: $(build.artifactstagingdirectory)/XamlUIBasics-android + CleanTargetFolder: false + OverWrite: false + flattenFolders: false + + - task: CopyFiles@2 + displayName: 'Publish Windows Binaries' + inputs: + SourceFolder: $(build.sourcesdirectory)/XamlControlsGallery.Windows/AppPackages + Contents: '**/*.appx' + TargetFolder: $(build.artifactstagingdirectory)/XamlUIBasics-windows + CleanTargetFolder: false + OverWrite: false + flattenFolders: false + + - task: PublishBuildArtifacts@1 + # https://developercommunity.visualstudio.com/content/problem/284991/public-vsts-previouw-cant-set-build-number-of-pr-b.html + condition: eq(variables['System.PullRequest.IsFork'], 'False') + inputs: + PathtoPublish: $(build.artifactstagingdirectory) + ArtifactName: universal-samples-drop + ArtifactType: Container diff --git a/build/Build.csproj b/build/Build.csproj new file mode 100644 index 0000000..68f6ed9 --- /dev/null +++ b/build/Build.csproj @@ -0,0 +1,62 @@ + + + + net462 + false + + + + + + + + + + + + + + <_PListFiles Include="../**/Info.plist" Exclude="../**/bin/**;../**/obj/**" /> + <_AndroidManifestFiles Include="../**/Properties/AndroidManifest.xml" Exclude="../**/bin/**;../**/obj/**"/> + <_WindowsManifests Include="../**/package.appxmanifest" Exclude="../**/bin/**;../**/obj/**" /> + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/build/nventive.keystore b/build/nventive.keystore new file mode 100644 index 0000000000000000000000000000000000000000..ecfc945c8d86a7512f25346971c9d1f91a7a6fc4 GIT binary patch literal 2256 zcmchYc{J1u8^`Bo#+VFdME2cFLd?uHs7#bdVQ^)M2sPJ?vG41}*omuR#+IzvV#pGu zEM>9_HKb)MWo;~FzvO!Fx$n96ocsU#$MeVYIp;a&Ip60w-|r9h4>kw{;y5he&*CE! zLj3%_dIlKLBuoAQZ@a+o>s=KC)ROOdJ}2tbj2D&1d(7X_F20 zU|JvA9n^b2!j40O7BEAS(Q2|XwrTX;?=EZHd&5t9rAa|IX1WI}%&5on-*S=o^~pHs z04>2F>4*jXOIQu^=~}|)xtV6lc;Vd^alu^urh)UVtJih+e5ymS?1Xem0zQT;<2 zp*BnOm7QMy+V{N`il-pt`GNLAm#6kOBL`L< zD&3QtrG?D4YcJdw6@F<`c1=>U(CN`0xA_cvS~aRzy}m^kGmk}eoM;QOODvfk{UzQ@ zg;$+9mw%ze@jEKWIw=g(OEaf3YY4LXsNiB9DVLZ6=T$~UMwr*szcb5 zo0>BV{?9L^o$RQ}-PQAh>7nkMyCUMMI-~Xr_E~JLrosnc_i`BNVhfEiHZcbT$q+T?0ZoquOc4i(?G*0d#vU5$rnS~*0d$m5H51Pg8 zDsIB36nzW3$jy0yW&U-j{tQ`StV8&e)P|Up&|=B&R(a#Sq;UzE>_M)wP-V-up4Id0 zY)+X+8Nkcis-g`U(zxz}v70w?7MFc|En+IjUjlR@Ve%Y44$zxFm|ZVUuO5h55P3QP zc#3eOwufL**+WJxVHc;hTelIpIuoG~4cTn9Sx+Tblhr#yJYUv_e{z}{^MJq0g~NUg zQLO5%&HmUvy9|g^OM(prtmfgqF(;w3tiC)X%_wZn?E#^H)-Lmqv-F*gmrYP?Y5Tx} zOl_Z2AD5;x(XXFjE)<=guxzSpl_27}86Wp0wR)v!>N!`Y-P$tUs|7Wpc6P@=kMRu? z%vCRE?^jub&pg4FmnZ2=dhkRLr~7*q->}phN3phRi;@MV zQwnh3a1T26$r z7E!`A{pFFL@OQh~@qx5as+EpVEc6)Bu4X>9S+`kW_ZR<(3W+Rm$XP+Ml&@HjYP-X8 zsqJdI($YG@Kd3sXi@S}+nmG49uXEC-GY46csWdr}`TXZN2?Odg#On%^asUte(;qo) z)v%~jAP_hjMFB^kC>(?WFbBZF0lD6T5k~Psk0{3*#c%Nf0Q}G}z0k-*!vtGFpaNW0 zo@7t2AkY61*uMzZ--I89`0o_A0L(Lx;OS2aB%uF7@P8xl-v}io%!}4WqtRHjCKip- zvJ>Xj&_rpVFn_iG|Ai=k+&@J*ObjpuKpaL1z|BDc0MKo$hpxM+_%%K>{a~xwQs408 zCuYM=O~N*EI_7)miV$NG?F;3Pu5iOiEEz{KuX^2=j|-z{w^{d=Z4dGyoxgszXz4$F zG&aCqtJ<6m1KDe=mZ{{Qjoxv^rOUC>3QsCb4V!0P^o9BkiKtAhu`?hW&0UWxReaT+ z1?awCPY_Q`-dRzyTcd<`%eoVfY(KBwCufNvgNoK_B z*dNVL^uxt(Eryppy=>ZgjkMTwF0+usJbL#F+ZANM@7VK5l|e7mMX}yuS035f5^T%U5DmBCe)UI^|nbY-C;FYV?%}eQ`1J z-8#{2tdrNv507tuPOQ0mTO-~DmqH0u80;Op0@h#1eM6vCvNpkAJ(_M1EUl2ldy4%g t*9*qgMJMyN^KAeC literal 0 HcmV?d00001