@@ -10,18 +10,20 @@ variables:
10
10
buildPlatform : ' AnyCPU'
11
11
buildConfiguration : ' Release'
12
12
nugetVersion : ' 1.4.$(Build.BuildId)'
13
- MonoVersion : 6_12_0
13
+ monoVersion : 6_12_7
14
+ dotentVersion : 5.x
14
15
15
16
jobs :
16
17
- job : ' Nuget'
18
+ displayName : ' Build Nuget'
17
19
pool :
18
20
vmImage : ' windows-latest'
19
21
steps :
20
22
- task : NuGetToolInstaller@1
21
23
- task : UseDotNet@2
22
- displayName : ' Use dotnet sdk 3.x '
24
+ displayName : ' Use dotnet sdk $(dotentVersion) '
23
25
inputs :
24
- version : 3.x
26
+ version : $(dotentVersion)
25
27
26
28
- task : NuGetCommand@2
27
29
displayName : ' Nuget restore solution'
@@ -49,14 +51,22 @@ jobs:
49
51
ArtifactName : nupkg
50
52
51
53
- job : ' iOSSampleApp'
54
+ displayName : ' Build iOS Sample App'
52
55
dependsOn :
53
56
- Nuget
54
57
pool :
55
58
vmImage : ' macOS-latest'
59
+ demands :
60
+ - msbuild
61
+ - visualstudio
56
62
steps :
57
63
- task : NuGetToolInstaller@1
64
+ - task : UseDotNet@2
65
+ displayName : ' Use dotnet sdk $(dotentVersion)'
66
+ inputs :
67
+ version : $(dotentVersion)
58
68
59
- - script : sudo $AGENT_HOMEDIRECTORY/scripts/select-xamarin-sdk.sh $MonoVersion
69
+ - script : sudo $AGENT_HOMEDIRECTORY/scripts/select-xamarin-sdk.sh $monoVersion
60
70
displayName : ' Selecting the Xamarin SDK version'
61
71
62
72
- task : DownloadBuildArtifacts@0
@@ -68,50 +78,41 @@ jobs:
68
78
artifactName : ' nupkg'
69
79
70
80
- task : Bash@3
81
+ displayName : " Replace project ref with nuget reference"
82
+ inputs :
83
+ filePath : ' .azure-devops/use-nuget.sh'
84
+
85
+ - task : Bash@3
86
+ displayName : " Restore nuget packages"
71
87
inputs :
72
88
targetType : ' inline'
73
89
script : |
74
- sed -E -i .bak -e 's/<ProjectReference Include="..\\..\\Calendar.Plugin\\CalendarPlugin.csproj"/<PackageReference Include="Xamarin.Plugin.Calendar" Version="'$(nugetVersion)'"/g' src/Calendar.Plugin.Sample/SampleApp/SampleApp.csproj
75
-
76
- sed -i .bak -e '/81e938f4-a11c-4726-a13f-0d7ecc84ca66/d' src/Calendar.Plugin.Sample/SampleApp.Android/SampleApp.Android.csproj
77
- sed -i .bak -e '/<Name>CalendarPlugin/d' src/Calendar.Plugin.Sample/SampleApp.Android/SampleApp.Android.csproj
78
- sed -E -i .bak -e '/<ProjectReference Include="..\\..\\Calendar.Plugin\\CalendarPlugin.csproj">/{N;s/\n.*//;}' src/Calendar.Plugin.Sample/SampleApp.Android/SampleApp.Android.csproj
79
- sed -E -i .bak -e 's/<ProjectReference Include="..\\..\\Calendar.Plugin\\CalendarPlugin.csproj">/<PackageReference Include="Xamarin.Plugin.Calendar" Version="'$(nugetVersion)'" \/>/g' src/Calendar.Plugin.Sample/SampleApp.Android/SampleApp.Android.csproj
80
-
81
- sed -i .bak -e '/81e938f4-a11c-4726-a13f-0d7ecc84ca66/d' src/Calendar.Plugin.Sample/SampleApp.iOS/SampleApp.iOS.csproj
82
- sed -i .bak -e '/<Name>CalendarPlugin/d' src/Calendar.Plugin.Sample/SampleApp.iOS/SampleApp.iOS.csproj
83
- sed -E -i .bak -e '/<ProjectReference Include="..\\..\\Calendar.Plugin\\CalendarPlugin.csproj">/{N;s/\n.*//;}' src/Calendar.Plugin.Sample/SampleApp.iOS/SampleApp.iOS.csproj
84
- sed -E -i .bak -e 's/<ProjectReference Include="..\\..\\Calendar.Plugin\\CalendarPlugin.csproj">/<PackageReference Include="Xamarin.Plugin.Calendar" Version="'$(nugetVersion)'" \/>/g' src/Calendar.Plugin.Sample/SampleApp.iOS/SampleApp.iOS.csproj
85
-
86
- cat src/Calendar.Plugin.Sample/SampleApp.Android/SampleApp.Android.csproj
87
- cat src/Calendar.Plugin.Sample/SampleApp.iOS/SampleApp.iOS.csproj
88
-
89
90
nuget restore src/Calendar.Plugin.Sample/SampleApp/SampleApp.csproj -NonInteractive -Source $(build.binariesDirectory)/nuget/nupkg/ -Source https://api.nuget.org/v3/index.json
90
91
nuget restore src/Calendar.Plugin.Sample/SampleApp.iOS/SampleApp.iOS.csproj -NonInteractive -Source $(build.binariesDirectory)/nuget/nupkg/ -Source https://api.nuget.org/v3/index.json
91
92
93
+ chmod 755 $(Build.Repository.LocalPath)/.azure-devops/msbuild.sh
94
+
92
95
- task : XamariniOS@2
93
- continueOnError : true
94
96
inputs :
97
+ buildToolLocation : ' $(Build.Repository.LocalPath)/.azure-devops/msbuild.sh'
95
98
solutionFile : ' **/SampleApp.iOS.csproj'
96
99
configuration : ' $(buildConfiguration)'
97
100
packageApp : false
98
101
runNugetRestore : false
99
102
buildForSimulator : true
100
103
101
104
- job : ' AndroidSampleApp'
105
+ displayName : ' Build Android Sample App'
102
106
dependsOn :
103
107
- Nuget
104
108
pool :
105
- vmImage : ' macOS -latest'
109
+ vmImage : ' windows -latest'
106
110
steps :
107
111
- task : NuGetToolInstaller@1
108
112
- task : UseDotNet@2
109
- displayName : ' Use dotnet sdk 3.x '
113
+ displayName : ' Use dotnet sdk $(dotentVersion) '
110
114
inputs :
111
- version : 3.x
112
-
113
- - script : sudo $AGENT_HOMEDIRECTORY/scripts/select-xamarin-sdk.sh $MonoVersion
114
- displayName : ' Selecting the Xamarin SDK version'
115
+ version : $(dotentVersion)
115
116
116
117
- task : DownloadBuildArtifacts@0
117
118
displayName : " Download PackNugetPackage artifacts"
@@ -121,27 +122,17 @@ jobs:
121
122
downloadPath : ' $(build.binariesDirectory)/nuget/'
122
123
artifactName : ' nupkg'
123
124
124
- - task : Bash@3
125
+ - task : PowerShell@2
126
+ displayName : " Replace project ref with nuget reference"
127
+ inputs :
128
+ filePath : ' .azure-devops\use-nuget.ps1'
129
+
130
+ - task : CmdLine@2
131
+ displayName : " Restore nuget packages"
125
132
inputs :
126
- targetType : ' inline'
127
133
script : |
128
- sed -E -i .bak -e 's/<ProjectReference Include="..\\..\\Calendar.Plugin\\CalendarPlugin.csproj"/<PackageReference Include="Xamarin.Plugin.Calendar" Version="'$(nugetVersion)'"/g' src/Calendar.Plugin.Sample/SampleApp/SampleApp.csproj
129
-
130
- sed -i .bak -e '/81e938f4-a11c-4726-a13f-0d7ecc84ca66/d' src/Calendar.Plugin.Sample/SampleApp.Android/SampleApp.Android.csproj
131
- sed -i .bak -e '/<Name>CalendarPlugin/d' src/Calendar.Plugin.Sample/SampleApp.Android/SampleApp.Android.csproj
132
- sed -E -i .bak -e '/<ProjectReference Include="..\\..\\Calendar.Plugin\\CalendarPlugin.csproj">/{N;s/\n.*//;}' src/Calendar.Plugin.Sample/SampleApp.Android/SampleApp.Android.csproj
133
- sed -E -i .bak -e 's/<ProjectReference Include="..\\..\\Calendar.Plugin\\CalendarPlugin.csproj">/<PackageReference Include="Xamarin.Plugin.Calendar" Version="'$(nugetVersion)'" \/>/g' src/Calendar.Plugin.Sample/SampleApp.Android/SampleApp.Android.csproj
134
-
135
- sed -i .bak -e '/81e938f4-a11c-4726-a13f-0d7ecc84ca66/d' src/Calendar.Plugin.Sample/SampleApp.iOS/SampleApp.iOS.csproj
136
- sed -i .bak -e '/<Name>CalendarPlugin/d' src/Calendar.Plugin.Sample/SampleApp.iOS/SampleApp.iOS.csproj
137
- sed -E -i .bak -e '/<ProjectReference Include="..\\..\\Calendar.Plugin\\CalendarPlugin.csproj">/{N;s/\n.*//;}' src/Calendar.Plugin.Sample/SampleApp.iOS/SampleApp.iOS.csproj
138
- sed -E -i .bak -e 's/<ProjectReference Include="..\\..\\Calendar.Plugin\\CalendarPlugin.csproj">/<PackageReference Include="Xamarin.Plugin.Calendar" Version="'$(nugetVersion)'" \/>/g' src/Calendar.Plugin.Sample/SampleApp.iOS/SampleApp.iOS.csproj
139
-
140
- cat src/Calendar.Plugin.Sample/SampleApp.Android/SampleApp.Android.csproj
141
- cat src/Calendar.Plugin.Sample/SampleApp.iOS/SampleApp.iOS.csproj
142
-
143
- nuget restore src/Calendar.Plugin.Sample/SampleApp/SampleApp.csproj -NonInteractive -Source $(build.binariesDirectory)/nuget/nupkg/ -Source https://api.nuget.org/v3/index.json
144
- nuget restore src/Calendar.Plugin.Sample/SampleApp.Android/SampleApp.Android.csproj -NonInteractive -Source $(build.binariesDirectory)/nuget/nupkg/ -Source https://api.nuget.org/v3/index.json
134
+ nuget restore src\Calendar.Plugin.Sample\SampleApp\SampleApp.csproj -NonInteractive -Source $(build.binariesDirectory)\nuget\nupkg\ -Source https://api.nuget.org/v3/index.json
135
+ nuget restore src\Calendar.Plugin.Sample\SampleApp.Android\SampleApp.Android.csproj -NonInteractive -Source $(build.binariesDirectory)\nuget\nupkg\ -Source https://api.nuget.org/v3/index.json
145
136
146
137
- task : XamarinAndroid@1
147
138
displayName : ' Build Xamarin.Android project SampleApp.Android.csproj'
0 commit comments