public void Execute(IBuildContext buildContext) { var componentDescriptionTxtFile = _componentBuilder .ResolveDistributionLocalPath(buildContext.BuildConfiguration.DistributionLocalPath) .Subpath("component_description.txt"); buildContext.Logger.Info($"Create file {componentDescriptionTxtFile.AsString()}"); if (buildContext.FileSystemAdapter.FileExists(componentDescriptionTxtFile)) { buildContext.SourceControlAdapter.CheckoutForEdit(componentDescriptionTxtFile); buildContext.FileSystemAdapter.WriteAllText(componentDescriptionTxtFile, _componentBuilder.GetComponentDescriptionTxtContent()); } else { buildContext.FileSystemAdapter.WriteAllText(componentDescriptionTxtFile, _componentBuilder.GetComponentDescriptionTxtContent()); buildContext.SourceControlAdapter.PendAdd(componentDescriptionTxtFile); } }