Note: This is the migration API reference for FAKE 5. The new (modularized) API documentation can be found
here.
If the API is already migrated you can check here if exists in a module.
More information regarding the migration can be found here

OBSOLETE

OBSOLETE

Fake.Boot is no longer supported

Implements support for boostrapping FAKE scripts. A bootstrapping
build.fsx script executes twice (in two stages), allowing to
download dependencies with NuGet and do other preparatory work in
the first stage, and have these dependencies available in the
second stage.

OBSOLETE

This API is obsolete. There is no alternative in FAKE 5 yet. You can help by porting this module.

Contains various functions for interacting with Dynamics CRM. So far there is support for exporting and importing solutions, zipping and unzipping using the Solution Packager, as well as publishing customizations.

OBSOLETE

This API is obsolete. There is no alternative in FAKE 5 yet. You can help by porting this module.

Contains helpers which allow to upload a whole folder/specific file into a FTP Server.
Uses Passive Mode FTP and handles all files as binary (and not ASCII).
Assumes direct network connectivity to destination FTP server (not via a proxy).
Does not support FTPS and SFTP.

OBSOLETE

Sample

1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15:

Target.create"GitHubRelease"(fun_->lettoken=matchEnvironment.environVarOrDefault"github_token"""with|swhennot(System.String.IsNullOrWhiteSpaces)->s|_->failwith"please set the github_token environment variable to a github personal access token with repro access."letfiles=runtimes@["portable";"packages"]|>List.map(funn->sprintf"release/dotnetcore/Fake.netcore/fake-dotnetcore-%s.zip"n)GitHub.createClientWithTokentoken|>GitHub.draftNewReleasegitOwnergitNamerelease.NugetVersion(release.SemVer.PreRelease<>None)release.Notes|>GitHub.uploadFilesfiles|>GitHub.publishDraft|>Async.RunSynchronously)

native support for AppVeyor specific APIs.
The general documentation on how to use CI server integration can be found here.
This module does not provide any special APIs please use FAKE APIs and they should integrate into this CI server.
If some integration is not working as expected or you have features you would like to use directly please open an issue.

native support for TeamCity specific APIs.
The general documentation on how to use CI server integration can be found here.
This module does not provide any special APIs please use FAKE APIs and they should integrate into this CI server.
If some integration is not working as expected or you have features you would like to use directly please open an issue.

For more information on TeamCity interaction from build scripts see here

Example implementation (supports runner and vault tasks)

// Either use a local vault filled by the 'FAKE_VAULT_VARIABLES' environment variable// or fall back to the build process if none is givenletvault=matchVault.fromFakeEnvironmentOrNone()with|Somev->v// fake 5 vault task, uses 'FAKE_VAULT_VARIABLES' by default|None->TeamFoundation.variables// fake 5 runner task// Only needed if you want to fallback to 'normal' environment variables (locally for example)letgetVarOrDefaultname=matchvault.TryGetnamewith|Somev->v|None->Environment.environVarOrFailnameTarget.create"Deploy"(fun_->lettoken=getVarOrDefault"github_token"// Use token to deploy to githubletapiKey=getVarOrDefault"nugetkey"// Use apiKey to deploy to nuget())

native support for Travis specific APIs.
The general documentation on how to use CI server integration can be found here.
This module does not provide any special APIs please use FAKE APIs and they should integrate into this CI server.
If some integration is not working as expected or you have features you would like to use directly please open an issue.

Note: If you use { version with Patch = myPath; Original = None } to overwrite some parts of this string make sure to overwrite Original to None in order to recalculate the version string.
Note: For overwriting the PreRelease part use: { Version with Original = None; PreRelease = PreRelease.TryParse "alpha.1" }

Defines Tracing information for TraceListeners
Note: Adding new cases to this type is not considered a breaking change!
Please consider not using a match on this type in code external to the fake repository.

This module tracks the context of the build.
This allows us to run some modules without any context and change behavior depending on the context
(For example Fake.Process kills all processes when the Fake Context exists, but it should not when used as library)