Xamarin.Recipe is a set of convention based scripts for building and deploying Xamarin mobile applications. Most of the code, conventions and concepts for this came from Cake.Recipe
Stable | Pre-release | |
---|---|---|
GitHub Release | ||
NuGet |
dev | main |
---|---|
#load nuget:?package=Rocket.Surgery.Xamarin.Recipe&version=0.5.0
Environment.SetVariableNames();
BuildParameters.SetParameters(
context: Context,
buildSystem: BuildSystem,
sourceDirectoryPath: "./src",
title: "My.Recipe.Project",
solutionFilePath: "./Recipe.sln",
solutionDirectoryPath: "./",
iosProjectPath: "./src/Recipe.iOS/Recipe.iOS.csproj",
plistFilePath: "./src/Recipe.iOS/Info.plist",
platform: "iPhone",
rootDirectoryPath: "./",
testDirectoryPath: "./tests",
unitTestWhitelist: new[] { "./tests/Recipe/Recipe.csproj" },
integrationTestScriptPath: "./tests/integration/test.cake",
repositoryOwner: "GitHubUserName",
repositoryName: "GitHubRepository",
appVeyorAccountName: "AppVeyorAccount",
appVeyorProjectSlug: "SLUG",
isPublicRepository: false,
shouldRunGitVersion: true,
shouldDeployAppCenter: false,
shouldCopyImages: false,
shouldRunxUnit: true,
shouldRunUnitTests: true,
shouldRunFastlaneMatch = false,
buildNumber: 0,
mainBranch: "main",
devBranch: "dev",
nugetConfig: "./NuGet.config",
nuGetSources: new[] { "nuget.org", "myget.org" });
BuildParameters.PrintParameters(Context);
ToolSettings.SetToolSettings(context: Context, msBuildToolVersion: MSBuildToolVersion.NET40);
Build.RuniOS();
#load nuget:?package=Rocket.Surgery.Xamarin.Recipe&version=0.5.0
Environment.SetVariableNames();
BuildParameters.SetParameters(
context: Context,
buildSystem: BuildSystem,
sourceDirectoryPath: "./src",
title: "My.Recipe.Project",
solutionFilePath: "./Recipe.sln",
solutionDirectoryPath: "./",
androidProjectPath: "./src/Recipe.Android/Recipe.Android.csproj",
androidManifest: "./src/Recipe.Android/Properties/AndroidManifest.xml",
rootDirectoryPath: "./",
testDirectoryPath: "./tests",
unitTestWhitelist: new[] { "./tests/Recipe/Recipe.csproj" },
integrationTestScriptPath: "./tests/integration/test.cake",
repositoryOwner: "GitHubUserName",
repositoryName: "GitHubRepository",
appVeyorAccountName: "AppVeyorAccount",
appVeyorProjectSlug: "SLUG",
isPublicRepository: false,
shouldRunGitVersion: true,
shouldDeployAppCenter: false,
shouldCopyImages: false,
shouldRunxUnit: true,
shouldRunUnitTests: true,
shouldRunFastlaneMatch = false,
buildNumber: 0,
mainBranch: "main",
devBranch: "dev",
nugetConfig: "./NuGet.config",
nuGetSources: new[] { "nuget.org", "myget.org" });
BuildParameters.PrintParameters(Context);
ToolSettings.SetToolSettings(context: Context);
Build.Android();