├── .gitignore
├── Manager
├── .nuget
│ ├── NuGet.Config
│ ├── NuGet.exe
│ └── NuGet.targets
├── Build
│ ├── Build.cmd
│ └── Build.proj
├── BuildBinaries
│ └── Microsoft.TeamFoundation.Build.Workflow.dll
├── Common
│ ├── CodeAnalysis.Dictionary.xml
│ ├── CommonAssemblyInfo.cs
│ ├── Key.snk
│ ├── License.rtf
│ └── TFSBuildExtensions.ruleset
├── Settings.StyleCop
├── TFSBuildManager.Application
│ ├── App.xaml
│ ├── App.xaml.cs
│ ├── GlobalSuppressions.cs
│ ├── Graphics
│ │ ├── AppIcon.ico
│ │ ├── ChangeConnection.png
│ │ ├── Changeset.png
│ │ ├── Failed.jpg
│ │ ├── Failed.png
│ │ ├── Lock.png
│ │ ├── PartiallySucceeded.png
│ │ ├── Stopped.png
│ │ ├── Succeeded.jpg
│ │ ├── TestSuite.png
│ │ └── Unlock.png
│ ├── MainWindow.xaml
│ ├── MainWindow.xaml.cs
│ ├── Properties
│ │ ├── AssemblyInfo.cs
│ │ ├── Resources.Designer.cs
│ │ ├── Resources.resx
│ │ ├── Settings.Designer.cs
│ │ └── Settings.settings
│ ├── TFSBuildManager.Application.csproj
│ ├── TFSBuildManager.Application.csproj.vspscc
│ ├── Templates
│ │ ├── BuildTemplateContent.docx
│ │ └── BuildTemplateCover.docx
│ ├── app.config
│ └── packages.config
├── TFSBuildManager.Console
│ ├── App.config
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── TFSBuildManager.Console.csproj
│ └── packages.config
├── TFSBuildManager.Controls
│ ├── GlobalSuppressions.cs
│ ├── Properties
│ │ ├── AssemblyInfo.cs
│ │ ├── Resources.Designer.cs
│ │ ├── Resources.resx
│ │ ├── Settings.Designer.cs
│ │ └── Settings.settings
│ ├── SortableListView.cs
│ ├── TFSBuildManager.Controls.csproj
│ ├── TFSBuildManager.Controls.csproj.vspscc
│ └── Themes
│ │ └── Generic.xaml
├── TFSBuildManager.Package
│ ├── AppIcon.ico
│ ├── BuildManagerToolWindow.cs
│ ├── GlobalSuppressions.cs
│ ├── Guids.cs
│ ├── License.rtf
│ ├── PkgCmdID.cs
│ ├── Preview.png
│ ├── Properties
│ │ ├── AssemblyInfo.cs
│ │ └── vsix-compress.props
│ ├── Resources.Designer.cs
│ ├── Resources.resx
│ ├── Resources
│ │ ├── Images_24bit.bmp
│ │ ├── Images_32bit.bmp
│ │ └── Package.ico
│ ├── TFSBuildManager.Package.cs
│ ├── TFSBuildManager.Package.csproj
│ ├── TFSBuildManager.Package.csproj.vspscc
│ ├── TFSBuildManager.Package.vsct
│ ├── VSExtensionContext.Package.cs
│ ├── VSPackage.resx
│ ├── app.config
│ ├── packages.config
│ └── source.extension.vsixmanifest
├── TFSBuildManager.UnitTests
│ ├── ExportedProcessParameterTransformerTests.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── TFSBuildManager.UnitTests.csproj
│ ├── app.config
│ └── packages.config
├── TFSBuildManager.Views
│ ├── BuildControllerWindow.xaml
│ ├── BuildControllerWindow.xaml.cs
│ ├── BuildImport.cs
│ ├── BuildNotesOptionWnd.xaml
│ ├── BuildNotesOptionWnd.xaml.cs
│ ├── BuildResourcesGrid.xaml
│ ├── BuildResourcesGrid.xaml.cs
│ ├── BuildsGrid.xaml
│ ├── BuildsGrid.xaml.cs
│ ├── Controls
│ │ └── HighlightTextBlock.cs
│ ├── DeleteOptionsWnd.xaml
│ ├── DeleteOptionsWnd.xaml.cs
│ ├── DropLocationWindow.xaml
│ ├── DropLocationWindow.xaml.cs
│ ├── EnumMatchToBooleanConverter.cs
│ ├── Extensions.cs
│ ├── GlobalSuppressions.cs
│ ├── Graphics
│ │ ├── AppIcon.ico
│ │ ├── BuildNotes.png
│ │ ├── Clone.png
│ │ ├── Drop.png
│ │ ├── Edit.png
│ │ ├── Failed.png
│ │ ├── InProgress.png
│ │ ├── Menu_ChangeTemplate.png
│ │ ├── Menu_Clean.png
│ │ ├── Menu_Delete.png
│ │ ├── Menu_Disable.png
│ │ ├── Menu_Enable.png
│ │ ├── Menu_Pause.png
│ │ ├── NotStarted.png
│ │ ├── PartiallySucceeded.ico
│ │ ├── PartiallySucceeded.png
│ │ ├── Postponed.png
│ │ ├── Queued.png
│ │ ├── SetDefault.png
│ │ ├── Stopped.png
│ │ ├── Succeeded.png
│ │ ├── buildresources.png
│ │ ├── controller.png
│ │ ├── dgml.png
│ │ ├── export.png
│ │ ├── import.png
│ │ ├── lock_16.png
│ │ ├── refresh.png
│ │ └── retention.png
│ ├── IMainView.xaml.cs
│ ├── ImportBuildDefinitions.xaml
│ ├── ImportBuildDefinitions.xaml.cs
│ ├── MainView.xaml
│ ├── MainView.xaml.cs
│ ├── ProcessParameterWindow.xaml
│ ├── ProcessParameterWindow.xaml.cs
│ ├── ProcessTemplatesGrid.xaml
│ ├── ProcessTemplatesGrid.xaml.cs
│ ├── Properties
│ │ ├── AssemblyInfo.cs
│ │ ├── Resources.Designer.cs
│ │ ├── Resources.resx
│ │ ├── Settings.Designer.cs
│ │ └── Settings.settings
│ ├── RemapWorkspaces.xaml
│ ├── RemapWorkspaces.xaml.cs
│ ├── RetentionPolicyWnd.xaml
│ ├── RetentionPolicyWnd.xaml.cs
│ ├── SelectBuildProcessTemplateWnd.xaml
│ ├── SelectBuildProcessTemplateWnd.xaml.cs
│ ├── SelectBuildQuality.xaml
│ ├── SelectBuildQuality.xaml.cs
│ ├── SelectTargetBranchWnd.xaml
│ ├── SelectTargetBranchWnd.xaml.cs
│ ├── SelectTeamProject.xaml
│ ├── SelectTeamProject.xaml.cs
│ ├── TFSBuildManager.Views.csproj
│ ├── TFSBuildManager.Views.csproj.vspscc
│ ├── Themes
│ │ └── ResourceDictionary.xaml
│ ├── TriggerWindow.xaml
│ ├── TriggerWindow.xaml.cs
│ ├── ViewModels
│ │ ├── BuildAgentViewModel.cs
│ │ ├── BuildControllerViewModel.cs
│ │ ├── BuildDateFilter.cs
│ │ ├── BuildDefinitionViewModel.cs
│ │ ├── BuildFilterEnum.cs
│ │ ├── BuildManagerViewModel.cs
│ │ ├── BuildResourceViewModel.cs
│ │ ├── BuildTemplateViewModel.cs
│ │ ├── BuildViewEnum.cs
│ │ ├── BuildViewItem.cs
│ │ ├── BuildViewModel.cs
│ │ ├── DateFilterCollection.cs
│ │ ├── DelegateCommand.cs
│ │ ├── RemapWorkspacesViewModel.cs
│ │ ├── TargetBranchViewModel.cs
│ │ ├── ViewModelBase.cs
│ │ └── WorkspaceItemViewModel.cs
│ ├── WaitCursor.cs
│ ├── app.config
│ └── packages.config
├── TFSBuildManager.sln
├── TFSBuildManager.vssscc
├── TfsBuildManager.Explorer
│ ├── BuildNavigationLink.cs
│ ├── GlobalSuppressions.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── TfsBuildManager.Explorer.csproj
│ ├── TfsBuildManager.Explorer.csproj.vspscc
│ └── packages.config
├── TfsBuildManager.Repository
│ ├── AgentSettingsBuildParameter.cs
│ ├── BuildNoteOptions.cs
│ ├── BuildResourceFilter.cs
│ ├── BuildRetentionPolicy.cs
│ ├── DGMLGenerator.cs
│ ├── ExportedAgileTestPlatformSpec.cs
│ ├── ExportedBuildDefinition.cs
│ ├── ExportedIBuildDefinitionSourceProvider.cs
│ ├── ExportedIRetentionPolicy.cs
│ ├── ExportedISchedule.cs
│ ├── ExportedIWorkspaceMapping.cs
│ ├── GlobalSuppressions.cs
│ ├── ITfsClientRepository.cs
│ ├── ITfsContext.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── TfsBuildManager.Repository.csproj
│ ├── TfsBuildManager.Repository.csproj.vspscc
│ ├── TfsClientRepository.cs
│ ├── Transformers
│ │ └── ExportedProcessParameterTransformer.cs
│ ├── VersionControlTypeEnum.cs
│ ├── app.config
│ ├── dgml.designer.cs
│ ├── dgml.xsd
│ └── packages.config
├── TfsBuildManager.WordDocumentGenerator.Client
│ ├── BuildNotesDocumentGenerator.cs
│ ├── Entities
│ │ ├── Build.cs
│ │ ├── BuildConfiguration.cs
│ │ ├── BuildConfigurationSolution.cs
│ │ ├── BuildDetail.cs
│ │ ├── Changeset.cs
│ │ ├── ChangesetChangeDetail.cs
│ │ ├── DocumentDetail.cs
│ │ ├── Item.cs
│ │ ├── TestResult.cs
│ │ ├── TestResultFailedItem.cs
│ │ ├── TestResultInconclusiveItem.cs
│ │ ├── TestResultPassedItem.cs
│ │ └── WorkItem.cs
│ ├── GlobalSuppressions.cs
│ ├── Graphics
│ │ ├── ChangeConnection.png
│ │ ├── Changeset.png
│ │ ├── Failed.jpg
│ │ ├── Lock.png
│ │ ├── PartiallySucceeded.png
│ │ ├── Stopped.png
│ │ ├── Succeeded.jpg
│ │ ├── TestSuite.png
│ │ └── Unlock.png
│ ├── Program.cs
│ ├── Properties
│ │ ├── AssemblyInfo.cs
│ │ ├── CodeAnalysis.Dictionary.xml
│ │ └── Key.snk
│ ├── Templates
│ │ ├── BuildTemplateContent.docx
│ │ └── BuildTemplateCover.docx
│ ├── WordDocumentGenerator.Client.csproj
│ ├── WordDocumentGenerator.Client.csproj.vspscc
│ └── packages.config
├── TfsBuildManager.WordDocumentGenerator.Library
│ ├── ContentControlXmlMetadata.cs
│ ├── CustomXmlPartCore.cs
│ ├── CustomXmlPartHelper.cs
│ ├── DocumentGenerationInfo.cs
│ ├── DocumentGenerator.cs
│ ├── DocumentMetadata.cs
│ ├── NodeType.cs
│ ├── OpenXmlElementDataContext.cs
│ ├── OpenXmlHelper.cs
│ ├── PlaceholderType.cs
│ ├── Properties
│ │ ├── AssemblyInfo.cs
│ │ ├── CodeAnalysis.Dictionary.xml
│ │ └── Key.snk
│ ├── WordDocumentGenerator.Library.csproj
│ ├── WordDocumentGenerator.Library.csproj.vspscc
│ └── packages.config
└── VSSDK
│ └── Microsoft.VsSDK.Build.Tasks.dll
└── README.md
/.gitignore:
--------------------------------------------------------------------------------
1 | # Build Folders (you can keep bin if you'd like, to store dlls and pdbs)
2 | [Bb]in/
3 | [Oo]bj/
4 |
5 | # mstest test results
6 | TestResults
7 |
8 | ## Ignore Visual Studio temporary files, build results, and
9 | ## files generated by popular Visual Studio add-ons.
10 |
11 | # User-specific files
12 | *.suo
13 | *.user
14 | *.sln.docstates
15 |
16 | # Build results
17 | [Dd]ebug/
18 | [Rr]elease/
19 | x64/
20 | *_i.c
21 | *_p.c
22 | *.ilk
23 | *.meta
24 | *.obj
25 | *.pch
26 | *.pdb
27 | *.pgc
28 | *.pgd
29 | *.rsp
30 | *.sbr
31 | *.tlb
32 | *.tli
33 | *.tlh
34 | *.tmp
35 | *.log
36 | *.vspscc
37 | *.vssscc
38 | .builds
39 |
40 | # Visual C++ cache files
41 | ipch/
42 | *.aps
43 | *.ncb
44 | *.opensdf
45 | *.sdf
46 |
47 | # Visual Studio profiler
48 | *.psess
49 | *.vsp
50 | *.vspx
51 |
52 | # Guidance Automation Toolkit
53 | *.gpState
54 |
55 | # ReSharper is a .NET coding add-in
56 | _ReSharper*
57 | .DotSettings
58 |
59 | # NCrunch
60 | *.ncrunch*
61 | .*crunch*.local.xml
62 |
63 | # Installshield output folder
64 | [Ee]xpress
65 |
66 | # DocProject is a documentation generator add-in
67 | DocProject/buildhelp/
68 | DocProject/Help/*.HxT
69 | DocProject/Help/*.HxC
70 | DocProject/Help/*.hhc
71 | DocProject/Help/*.hhk
72 | DocProject/Help/*.hhp
73 | DocProject/Help/Html2
74 | DocProject/Help/html
75 |
76 | # Click-Once directory
77 | publish
78 |
79 | # Publish Web Output
80 | *.Publish.xml
81 |
82 | # NuGet Packages Directory
83 | packages/
84 | Nuget.exe
85 |
86 | # References folders
87 | AssemblyReferences/
88 | ExternalReferences/
89 |
90 | # Windows Azure Build Output
91 | csx
92 | *.build.csdef
93 |
94 | # Windows Store app package directory
95 | AppPackages/
96 |
97 | # Others
98 | [Bb]in
99 | [Oo]bj
100 | sql
101 | TestResults
102 | [Tt]est[Rr]esult*
103 | *.Cache
104 | ClientBin
105 | [Ss]tyle[Cc]op.*
106 | ~$*
107 | *.dbmdl
108 | Generated_Code #added for RIA/Silverlight projects
109 | *.ide
110 | # Backup & report files from converting an old project file to a newer
111 | # Visual Studio version. Backup files are not needed, because we have git ;-)
112 | _UpgradeReport_Files/
113 | Backup*/
114 | UpgradeLog*.XML
115 | /Manager/BuildBinaries
116 |
--------------------------------------------------------------------------------
/Manager/.nuget/NuGet.Config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/Manager/.nuget/NuGet.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/.nuget/NuGet.exe
--------------------------------------------------------------------------------
/Manager/Build/Build.cmd:
--------------------------------------------------------------------------------
1 | msbuild.exe build.proj /t:package
2 |
3 | PAUSE
4 |
--------------------------------------------------------------------------------
/Manager/BuildBinaries/Microsoft.TeamFoundation.Build.Workflow.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/BuildBinaries/Microsoft.TeamFoundation.Build.Workflow.dll
--------------------------------------------------------------------------------
/Manager/Common/CodeAnalysis.Dictionary.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Changeset
6 | Changesets
7 | Tfs
8 | TFS
9 |
10 |
11 | StyleCop
12 | SourceFiles
13 |
14 |
15 | Stylecop
16 | Sourcefiles
17 |
18 |
21 |
22 |
23 |
24 | AWS
25 | SSH
26 |
27 |
28 |
--------------------------------------------------------------------------------
/Manager/Common/CommonAssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | using System.Reflection;
5 | using System.Resources;
6 | using System.Runtime.InteropServices;
7 |
8 | [assembly: AssemblyVersion("2.12.0.23")]
9 | [assembly: AssemblyFileVersion("2.12.0.23")]
10 | [assembly: AssemblyInformationalVersion("2.12.0.23")]
11 | [assembly: AssemblyCompany("Community TFS Build Manager https://github.com/tfsbuildextensions/BuildManager")]
12 | [assembly: AssemblyCopyright("Copyright © Community TFS Build Manager https://github.com/tfsbuildextensions/BuildManager")]
13 | [assembly: AssemblyTrademark("Community TFS Build Manager https://github.com/tfsbuildextensions/BuildManager")]
14 | [assembly: NeutralResourcesLanguage("en-US")]
15 | [assembly: AssemblyCulture("")]
16 | [assembly: AssemblyProduct("Community TFS Build Manager")]
17 |
18 | // Setting ComVisible to false makes the types in this assembly not visible
19 | // to COM components. If you need to access a type in this assembly from
20 | // COM, set the ComVisible attribute to true on that type.
21 | [assembly: ComVisible(false)]
--------------------------------------------------------------------------------
/Manager/Common/Key.snk:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/Common/Key.snk
--------------------------------------------------------------------------------
/Manager/Settings.StyleCop:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | False
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 | False
15 |
16 |
17 |
18 |
19 | False
20 |
21 |
22 |
23 |
24 | False
25 |
26 |
27 |
28 |
29 | False
30 |
31 |
32 |
33 |
34 | False
35 |
36 |
37 |
38 |
39 | False
40 |
41 |
42 |
43 |
44 | False
45 |
46 |
47 |
48 |
49 | False
50 |
51 |
52 |
53 |
54 | False
55 |
56 |
57 |
58 |
59 |
60 |
61 |
62 |
63 |
64 | False
65 |
66 |
67 |
68 |
69 | False
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 | False
80 |
81 |
82 |
83 |
84 |
85 |
86 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Application/App.xaml:
--------------------------------------------------------------------------------
1 |
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Application/App.xaml.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace TfsBuildManager.Application
5 | {
6 | using System;
7 | using System.Diagnostics;
8 | using System.Windows;
9 | using Microsoft.TeamFoundation.Build.Client;
10 | using Microsoft.TeamFoundation.Client;
11 | using Microsoft.TeamFoundation.Server;
12 | using TfsBuildManager.Repository;
13 |
14 | ///
15 | /// Interaction logic for App
16 | ///
17 | public partial class App
18 | {
19 | private void Application_DispatcherUnhandledException(object sender, System.Windows.Threading.DispatcherUnhandledExceptionEventArgs e)
20 | {
21 | // Handling the exception within the UnhandledExcpeiton handler.
22 | MessageBox.Show(e.Exception.ToString(), "Community TFS Build Manager", MessageBoxButton.OK, MessageBoxImage.Error);
23 | e.Handled = true;
24 | }
25 | }
26 |
27 | public class AppTfsContext : ITfsContext
28 | {
29 | private readonly TfsTeamProjectCollection collection;
30 | private readonly ProjectInfo selectedProject;
31 |
32 | public AppTfsContext(TfsTeamProjectCollection collection, ProjectInfo selectedProject)
33 | {
34 | this.collection = collection;
35 | this.selectedProject = selectedProject;
36 | }
37 |
38 | public event EventHandler ProjectChanged = delegate { };
39 |
40 | public string SelectedProject
41 | {
42 | get { return this.selectedProject.Name; }
43 | }
44 |
45 | public string ActiveConnection
46 | {
47 | get { return this.collection.Uri.ToString(); }
48 | }
49 |
50 | public void ShowBuild(Uri buildUri)
51 | {
52 | var buildUrl = string.Format("{0}?url={1}", buildUri, this.collection.Uri);
53 | Process.Start(buildUrl);
54 | }
55 |
56 | public void EditBuildDefinition(Uri buildDefinition)
57 | {
58 | ShowNotSupportedMessage();
59 | }
60 |
61 | public void ShowControllerManager()
62 | {
63 | ShowNotSupportedMessage();
64 | }
65 |
66 | public void RemapWorkspaces(IBuildDefinition buildDefinition)
67 | {
68 | ShowNotSupportedMessage();
69 | }
70 |
71 | private static void ShowNotSupportedMessage()
72 | {
73 | MessageBox.Show("This feature is not supported when running the stand alone application.", "Visual Studio Extension Required", MessageBoxButton.OK, MessageBoxImage.Information);
74 | }
75 | }
76 | }
77 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Application/GlobalSuppressions.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | //
5 |
6 | [assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1709:IdentifiersShouldBeCasedCorrectly", MessageId = "TFS")]
7 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Application/Graphics/AppIcon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TFSBuildManager.Application/Graphics/AppIcon.ico
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Application/Graphics/ChangeConnection.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TFSBuildManager.Application/Graphics/ChangeConnection.png
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Application/Graphics/Changeset.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TFSBuildManager.Application/Graphics/Changeset.png
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Application/Graphics/Failed.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TFSBuildManager.Application/Graphics/Failed.jpg
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Application/Graphics/Failed.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TFSBuildManager.Application/Graphics/Failed.png
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Application/Graphics/Lock.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TFSBuildManager.Application/Graphics/Lock.png
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Application/Graphics/PartiallySucceeded.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TFSBuildManager.Application/Graphics/PartiallySucceeded.png
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Application/Graphics/Stopped.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TFSBuildManager.Application/Graphics/Stopped.png
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Application/Graphics/Succeeded.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TFSBuildManager.Application/Graphics/Succeeded.jpg
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Application/Graphics/TestSuite.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TFSBuildManager.Application/Graphics/TestSuite.png
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Application/Graphics/Unlock.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TFSBuildManager.Application/Graphics/Unlock.png
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Application/MainWindow.xaml:
--------------------------------------------------------------------------------
1 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
20 |
21 |
22 |
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Application/MainWindow.xaml.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace TfsBuildManager.Application
5 | {
6 | using System;
7 | using System.Linq;
8 | using System.Windows;
9 | using Microsoft.TeamFoundation.Client;
10 | using TfsBuildManager.Repository;
11 |
12 | ///
13 | /// Interaction logic for MainWindow
14 | ///
15 | public partial class MainWindow
16 | {
17 | public MainWindow()
18 | {
19 | this.InitializeComponent();
20 | }
21 |
22 | private static void DisplayError(Exception ex)
23 | {
24 | MessageBox.Show(ex.ToString(), "Community TFS Build Manager", MessageBoxButton.OK, MessageBoxImage.Error);
25 | }
26 |
27 | private void OnClosed(object sender, EventArgs e)
28 | {
29 | this.Close();
30 | }
31 |
32 | [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Reliability", "CA2000:Dispose objects before losing scope", Justification = "Disposable object passed")]
33 | private void OnLoaded(object sender, RoutedEventArgs e)
34 | {
35 | try
36 | {
37 | using (TeamProjectPicker tpp = new TeamProjectPicker(TeamProjectPickerMode.SingleProject, false))
38 | {
39 | System.Windows.Forms.DialogResult result = tpp.ShowDialog();
40 | if (result == System.Windows.Forms.DialogResult.OK)
41 | {
42 | var context = new AppTfsContext(tpp.SelectedTeamProjectCollection, tpp.SelectedProjects.First());
43 | this.MainView.InitializeContext(context);
44 | this.MainView.InitializeRepository(new TfsClientRepository(tpp.SelectedTeamProjectCollection));
45 | }
46 | }
47 | }
48 | catch (Exception ex)
49 | {
50 | MainWindow.DisplayError(ex);
51 | }
52 | }
53 |
54 | private void OnChangeConnection(object sender, RoutedEventArgs e)
55 | {
56 | this.OnLoaded(sender, e);
57 | this.MainView.Reload();
58 | }
59 |
60 | private void OnExit(object sender, RoutedEventArgs e)
61 | {
62 | System.Windows.Application.Current.Shutdown(0);
63 | }
64 | }
65 | }
66 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Application/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | using System;
5 | using System.Reflection;
6 | using System.Windows;
7 |
8 | [assembly: AssemblyTitle("TFSBuildManager.Application")]
9 | [assembly: CLSCompliant(true)]
10 |
11 | [assembly: ThemeInfo(
12 | ResourceDictionaryLocation.None, // where theme specific resource dictionaries are located (used if a resource is not found in the page, or application resource dictionaries)
13 | ResourceDictionaryLocation.SourceAssembly // where the generic resource dictionary is located (used if a resource is not found in the page, app, or any theme specific resource dictionaries)
14 | )]
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Application/Properties/Resources.Designer.cs:
--------------------------------------------------------------------------------
1 | //------------------------------------------------------------------------------
2 | //
3 | // This code was generated by a tool.
4 | // Runtime Version:4.0.30319.32559
5 | //
6 | // Changes to this file may cause incorrect behavior and will be lost if
7 | // the code is regenerated.
8 | //
9 | //------------------------------------------------------------------------------
10 |
11 | namespace TfsBuildManager.Application.Properties {
12 | using System;
13 |
14 |
15 | ///
16 | /// A strongly-typed resource class, for looking up localized strings, etc.
17 | ///
18 | // This class was auto-generated by the StronglyTypedResourceBuilder
19 | // class via a tool like ResGen or Visual Studio.
20 | // To add or remove a member, edit your .ResX file then rerun ResGen
21 | // with the /str option, or rebuild your VS project.
22 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
23 | [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
24 | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
25 | internal class Resources {
26 |
27 | private static global::System.Resources.ResourceManager resourceMan;
28 |
29 | private static global::System.Globalization.CultureInfo resourceCulture;
30 |
31 | [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
32 | internal Resources() {
33 | }
34 |
35 | ///
36 | /// Returns the cached ResourceManager instance used by this class.
37 | ///
38 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
39 | internal static global::System.Resources.ResourceManager ResourceManager {
40 | get {
41 | if (object.ReferenceEquals(resourceMan, null)) {
42 | global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("TfsBuildManager.Application.Properties.Resources", typeof(Resources).Assembly);
43 | resourceMan = temp;
44 | }
45 | return resourceMan;
46 | }
47 | }
48 |
49 | ///
50 | /// Overrides the current thread's CurrentUICulture property for all
51 | /// resource lookups using this strongly typed resource class.
52 | ///
53 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
54 | internal static global::System.Globalization.CultureInfo Culture {
55 | get {
56 | return resourceCulture;
57 | }
58 | set {
59 | resourceCulture = value;
60 | }
61 | }
62 | }
63 | }
64 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Application/Properties/Settings.Designer.cs:
--------------------------------------------------------------------------------
1 | //------------------------------------------------------------------------------
2 | //
3 | // This code was generated by a tool.
4 | // Runtime Version:4.0.30319.32559
5 | //
6 | // Changes to this file may cause incorrect behavior and will be lost if
7 | // the code is regenerated.
8 | //
9 | //------------------------------------------------------------------------------
10 |
11 | namespace TfsBuildManager.Application.Properties {
12 |
13 |
14 | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
15 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "12.0.0.0")]
16 | internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
17 |
18 | private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
19 |
20 | public static Settings Default {
21 | get {
22 | return defaultInstance;
23 | }
24 | }
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Application/Properties/Settings.settings:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Application/TFSBuildManager.Application.csproj.vspscc:
--------------------------------------------------------------------------------
1 | ""
2 | {
3 | "FILE_VERSION" = "9237"
4 | "ENLISTMENT_CHOICE" = "NEVER"
5 | "PROJECT_FILE_RELATIVE_PATH" = ""
6 | "NUMBER_OF_EXCLUDED_FILES" = "0"
7 | "ORIGINAL_PROJECT_FILE_PATH" = ""
8 | "NUMBER_OF_NESTED_PROJECTS" = "0"
9 | "SOURCE_CONTROL_SETTINGS_PROVIDER" = "PROVIDER"
10 | }
11 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Application/Templates/BuildTemplateContent.docx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TFSBuildManager.Application/Templates/BuildTemplateContent.docx
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Application/Templates/BuildTemplateCover.docx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TFSBuildManager.Application/Templates/BuildTemplateCover.docx
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Application/app.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Application/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Console/App.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Console/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | using System.Reflection;
5 |
6 | [assembly: AssemblyTitle("TFSBuildManager.Console")]
7 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Console/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Controls/GlobalSuppressions.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | //
5 | [assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Design", "CA1020:AvoidNamespacesWithFewTypes", Scope = "namespace", Target = "TFSBuildManager.Controls")]
6 | [assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1709:IdentifiersShouldBeCasedCorrectly", MessageId = "TFS", Scope = "namespace", Target = "TFSBuildManager.Controls")]
7 | [assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1709:IdentifiersShouldBeCasedCorrectly", MessageId = "TFS")]
8 | [assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Design", "CA1020:AvoidNamespacesWithFewTypes", Scope = "namespace", Target = "XamlGeneratedNamespace")]
9 | [assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Performance", "CA1810:InitializeReferenceTypeStaticFieldsInline", Scope = "member", Target = "TFSBuildManager.Controls.SortableListView.#.cctor()")]
10 | [assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Performance", "CA1810:InitializeReferenceTypeStaticFieldsInline", Scope = "member", Target = "TfsBuildManager.Controls.SortableListView.#.cctor()")]
11 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Controls/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | using System;
5 | using System.Reflection;
6 | using System.Windows;
7 |
8 | [assembly: AssemblyTitle("TFSBuildManager.Controls")]
9 | [assembly: CLSCompliant(true)]
10 |
11 | [assembly: ThemeInfo(
12 | ResourceDictionaryLocation.None, // where theme specific resource dictionaries are located (used if a resource is not found in the page, or application resource dictionaries)
13 | ResourceDictionaryLocation.SourceAssembly // where the generic resource dictionary is located (used if a resource is not found in the page, app, or any theme specific resource dictionaries)
14 | )]
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Controls/Properties/Resources.Designer.cs:
--------------------------------------------------------------------------------
1 | //------------------------------------------------------------------------------
2 | //
3 | // This code was generated by a tool.
4 | // Runtime Version:4.0.30319.32559
5 | //
6 | // Changes to this file may cause incorrect behavior and will be lost if
7 | // the code is regenerated.
8 | //
9 | //------------------------------------------------------------------------------
10 |
11 | namespace TfsBuildManager.Controls.Properties {
12 | using System;
13 |
14 |
15 | ///
16 | /// A strongly-typed resource class, for looking up localized strings, etc.
17 | ///
18 | // This class was auto-generated by the StronglyTypedResourceBuilder
19 | // class via a tool like ResGen or Visual Studio.
20 | // To add or remove a member, edit your .ResX file then rerun ResGen
21 | // with the /str option, or rebuild your VS project.
22 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
23 | [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
24 | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
25 | internal class Resources {
26 |
27 | private static global::System.Resources.ResourceManager resourceMan;
28 |
29 | private static global::System.Globalization.CultureInfo resourceCulture;
30 |
31 | [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
32 | internal Resources() {
33 | }
34 |
35 | ///
36 | /// Returns the cached ResourceManager instance used by this class.
37 | ///
38 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
39 | internal static global::System.Resources.ResourceManager ResourceManager {
40 | get {
41 | if (object.ReferenceEquals(resourceMan, null)) {
42 | global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("TfsBuildManager.Controls.Properties.Resources", typeof(Resources).Assembly);
43 | resourceMan = temp;
44 | }
45 | return resourceMan;
46 | }
47 | }
48 |
49 | ///
50 | /// Overrides the current thread's CurrentUICulture property for all
51 | /// resource lookups using this strongly typed resource class.
52 | ///
53 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
54 | internal static global::System.Globalization.CultureInfo Culture {
55 | get {
56 | return resourceCulture;
57 | }
58 | set {
59 | resourceCulture = value;
60 | }
61 | }
62 | }
63 | }
64 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Controls/Properties/Settings.Designer.cs:
--------------------------------------------------------------------------------
1 | //------------------------------------------------------------------------------
2 | //
3 | // This code was generated by a tool.
4 | // Runtime Version:4.0.30319.32559
5 | //
6 | // Changes to this file may cause incorrect behavior and will be lost if
7 | // the code is regenerated.
8 | //
9 | //------------------------------------------------------------------------------
10 |
11 | namespace TfsBuildManager.Controls.Properties {
12 |
13 |
14 | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
15 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "12.0.0.0")]
16 | internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
17 |
18 | private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
19 |
20 | public static Settings Default {
21 | get {
22 | return defaultInstance;
23 | }
24 | }
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Controls/Properties/Settings.settings:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Controls/TFSBuildManager.Controls.csproj.vspscc:
--------------------------------------------------------------------------------
1 | ""
2 | {
3 | "FILE_VERSION" = "9237"
4 | "ENLISTMENT_CHOICE" = "NEVER"
5 | "PROJECT_FILE_RELATIVE_PATH" = ""
6 | "NUMBER_OF_EXCLUDED_FILES" = "0"
7 | "ORIGINAL_PROJECT_FILE_PATH" = ""
8 | "NUMBER_OF_NESTED_PROJECTS" = "0"
9 | "SOURCE_CONTROL_SETTINGS_PROVIDER" = "PROVIDER"
10 | }
11 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Controls/Themes/Generic.xaml:
--------------------------------------------------------------------------------
1 |
5 |
6 |
18 |
19 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Package/AppIcon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TFSBuildManager.Package/AppIcon.ico
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Package/GlobalSuppressions.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | //
5 | [assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Design", "CA1017:MarkAssembliesWithComVisible")]
6 | [assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1709:IdentifiersShouldBeCasedCorrectly", MessageId = "TFS", Scope = "type", Target = "TFSBuildManager.TFSBuildManagerPackage")]
7 | [assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1709:IdentifiersShouldBeCasedCorrectly", MessageId = "TFS", Scope = "member", Target = "TFSBuildManager.GuidList.#GuidTFSBuildManagerPackagePkgString")]
8 | [assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1709:IdentifiersShouldBeCasedCorrectly", MessageId = "TFS", Scope = "member", Target = "TFSBuildManager.GuidList.#GuidTFSBuildManagerPackageCmdSetString")]
9 | [assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1709:IdentifiersShouldBeCasedCorrectly", MessageId = "TFS", Scope = "member", Target = "TFSBuildManager.GuidList.#GuidTFSBuildManagerPackageCmdSet")]
10 | [assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1709:IdentifiersShouldBeCasedCorrectly", MessageId = "TFS")]
11 | [assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1704:IdentifiersShouldBeSpelledCorrectly", MessageId = "Pkg", Scope = "member", Target = "TFSBuildManager.GuidList.#GuidTFSBuildManagerPackagePkgString")]
12 | [assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1704:IdentifiersShouldBeSpelledCorrectly", MessageId = "Persistance", Scope = "member", Target = "TFSBuildManager.GuidList.#GuidToolWindowPersistanceString")]
13 | [assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Design", "CA1014:MarkAssembliesWithClsCompliant")]
14 | [assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Design", "CA1031:DoNotCatchGeneralExceptionTypes", Scope = "member", Target = "TFSBuildManager.TFSBuildManagerPackage.#ShowToolWindow(System.Object,System.EventArgs)")]
15 | [assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2214:DoNotCallOverridableMethodsInConstructors", Scope = "member", Target = "TFSBuildManager.BuildManagerToolWindow.#.ctor()")]
16 | [assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Reliability", "CA2000:Dispose objects before losing scope", Scope = "member", Target = "TFSBuildManager.BuildManagerToolWindow.#ChangeConnection()")]
17 | [assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Globalization", "CA1300:SpecifyMessageBoxOptions", Scope = "member", Target = "TFSBuildManager.TFSBuildManagerPackage.#ShowErrorMessage(System.Exception)")]
18 | [assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Reliability", "CA2000:Dispose objects before losing scope", Scope = "member", Target = "TfsBuildManager.BuildManagerToolWindow.#ChangeConnection()")]
19 | [assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2214:DoNotCallOverridableMethodsInConstructors", Scope = "member", Target = "TfsBuildManager.BuildManagerToolWindow.#.ctor()")]
20 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Package/Guids.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace TfsBuildManager
5 | {
6 | using System;
7 |
8 | public static class GuidList
9 | {
10 | public const string GuidTfsBuildManagerPackageString = "6fadf005-94b3-46d1-b509-fd8ba6d1ec00";
11 |
12 | public const string GuidTfsBuildManagerPackageCmdSetString = "b3516385-098d-4066-89e5-439bea58700d";
13 |
14 | public const string GuidToolWindowPersistenceString = "9f6c976b-ea0b-4d40-b942-dd4a2785aa50";
15 |
16 | public static readonly Guid GuidTfsBuildManagerPackageCmdSet = new Guid(GuidTfsBuildManagerPackageCmdSetString);
17 | }
18 | }
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Package/PkgCmdID.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace TfsBuildManager
5 | {
6 | internal static class PkgCmdIDList
7 | {
8 | public const uint CmdidTestCommand = 0x100;
9 |
10 | public const uint CmdidTestTool = 0x101;
11 | }
12 | }
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Package/Preview.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TFSBuildManager.Package/Preview.png
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Package/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | using System;
5 | using System.Reflection;
6 | using System.Windows;
7 |
8 | [assembly: AssemblyTitle("TFSBuildManager.Package")]
9 |
10 | [assembly: ThemeInfo(
11 | ResourceDictionaryLocation.None, // where theme specific resource dictionaries are located (used if a resource is not found in the page, or application resource dictionaries)
12 | ResourceDictionaryLocation.SourceAssembly // where the generic resource dictionary is located (used if a resource is not found in the page, app, or any theme specific resource dictionaries)
13 | )]
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Package/Properties/vsix-compress.props:
--------------------------------------------------------------------------------
1 |
2 |
3 |
9 |
10 |
11 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Package/Resources/Images_24bit.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TFSBuildManager.Package/Resources/Images_24bit.bmp
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Package/Resources/Images_32bit.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TFSBuildManager.Package/Resources/Images_32bit.bmp
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Package/Resources/Package.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TFSBuildManager.Package/Resources/Package.ico
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Package/TFSBuildManager.Package.csproj.vspscc:
--------------------------------------------------------------------------------
1 | ""
2 | {
3 | "FILE_VERSION" = "9237"
4 | "ENLISTMENT_CHOICE" = "NEVER"
5 | "PROJECT_FILE_RELATIVE_PATH" = ""
6 | "NUMBER_OF_EXCLUDED_FILES" = "0"
7 | "ORIGINAL_PROJECT_FILE_PATH" = ""
8 | "NUMBER_OF_NESTED_PROJECTS" = "0"
9 | "SOURCE_CONTROL_SETTINGS_PROVIDER" = "PROVIDER"
10 | }
11 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Package/TFSBuildManager.Package.vsct:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
19 |
20 |
21 |
24 |
25 |
26 |
27 |
28 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
62 |
63 |
64 |
65 |
66 |
67 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Package/VSExtensionContext.Package.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace TfsBuildManager
5 | {
6 | using System;
7 | using Microsoft.TeamFoundation.Build.Client;
8 | using Microsoft.VisualStudio.TeamFoundation;
9 | using Microsoft.VisualStudio.TeamFoundation.Build;
10 | using TfsBuildManager.Repository;
11 | using TfsBuildManager.Views;
12 | using TfsBuildManager.Views.ViewModels;
13 |
14 | public class VSExtensionContext : ITfsContext
15 | {
16 | private readonly TeamFoundationServerExt ext;
17 | private readonly IVsTeamFoundationBuild buildExt;
18 | private string currentConnectionUri;
19 |
20 | public VSExtensionContext(TeamFoundationServerExt ext, IVsTeamFoundationBuild buildExt)
21 | {
22 | this.ext = ext;
23 | this.buildExt = buildExt;
24 | if (ext != null)
25 | {
26 | this.currentConnectionUri = ext.ActiveProjectContext.DomainUri;
27 | ext.ProjectContextChanged += this.OnSelectedProjectChanged;
28 | }
29 | }
30 |
31 | public event EventHandler ProjectChanged;
32 |
33 | public string SelectedProject
34 | {
35 | get { return this.ext.ActiveProjectContext.ProjectName; }
36 | }
37 |
38 | public string ActiveConnection
39 | {
40 | get { return this.ext.ActiveProjectContext.DomainUri; }
41 | }
42 |
43 | public void OnSelectedProjectChanged(object sender, EventArgs e)
44 | {
45 | if (this.ProjectChanged != null && this.ext.ActiveProjectContext.DomainUri != this.currentConnectionUri)
46 | {
47 | this.currentConnectionUri = this.ext.ActiveProjectContext.DomainUri;
48 | this.ProjectChanged(this, new EventArgs());
49 | }
50 | }
51 |
52 | public void ShowBuild(Uri buildUri)
53 | {
54 | this.buildExt.DetailsManager.OpenBuild(buildUri);
55 | }
56 |
57 | public void DisabledQueuedDefinition(Uri buildUri)
58 | {
59 | this.buildExt.DetailsManager.OpenBuild(buildUri);
60 | }
61 |
62 | public void PauseQueuedDefinition(Uri buildUri)
63 | {
64 | this.buildExt.DetailsManager.OpenBuild(buildUri);
65 | }
66 |
67 | public void EditBuildDefinition(Uri buildDefinition)
68 | {
69 | this.buildExt.DefinitionManager.OpenDefinition(buildDefinition);
70 | }
71 |
72 | public void ShowControllerManager()
73 | {
74 | this.buildExt.ControllerManager.Show();
75 | }
76 |
77 | public void RemapWorkspaces(IBuildDefinition buildDefinition)
78 | {
79 | var viewModel = new RemapWorkspacesViewModel(buildDefinition);
80 | var remapWorkSpacesWindow = new RemapWorkspaces(viewModel);
81 | remapWorkSpacesWindow.ShowDialog();
82 | }
83 | }
84 | }
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Package/app.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Package/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Package/source.extension.vsixmanifest:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Community TFS Build Manager VS2013
6 | Community TFS Build Manager VS2013. Sourcecode is available in GitHub - https://github.com/tfsbuildextensions/BuildManager
7 | http://visualstudiogallery.msdn.microsoft.com/73bf2d8e-aec6-406c-8e7f-1c678e46557f
8 | License.rtf
9 | AppIcon.ico
10 | Preview.png
11 | TFS 2013, Build
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.UnitTests/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | using System.Reflection;
5 | using System.Runtime.CompilerServices;
6 | using System.Runtime.InteropServices;
7 |
8 | // General Information about an assembly is controlled through the following
9 | // set of attributes. Change these attribute values to modify the information
10 | // associated with an assembly.
11 | [assembly: AssemblyTitle("TFSBuildManager.UnitTests")]
12 | [assembly: AssemblyDescription("")]
13 | [assembly: AssemblyConfiguration("")]
14 | [assembly: AssemblyCompany("")]
15 | [assembly: AssemblyProduct("TFSBuildManager.UnitTests")]
16 | [assembly: AssemblyCopyright("Copyright © 2015")]
17 | [assembly: AssemblyTrademark("")]
18 | [assembly: AssemblyCulture("")]
19 |
20 | // Setting ComVisible to false makes the types in this assembly not visible
21 | // to COM components. If you need to access a type in this assembly from
22 | // COM, set the ComVisible attribute to true on that type.
23 | [assembly: ComVisible(false)]
24 |
25 | // The following GUID is for the ID of the typelib if this project is exposed to COM
26 | [assembly: Guid("eacc21e1-c416-4ef3-9e00-a486ff4256dd")]
27 |
28 | // Version information for an assembly consists of the following four values:
29 | //
30 | // Major Version
31 | // Minor Version
32 | // Build Number
33 | // Revision
34 | //
35 | // You can specify all the values or you can default the Build and Revision Numbers
36 | // by using the '*' as shown below:
37 | // [assembly: AssemblyVersion("1.0.*")]
38 | [assembly: AssemblyVersion("1.0.0.0")]
39 | [assembly: AssemblyFileVersion("1.0.0.0")]
40 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.UnitTests/app.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.UnitTests/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/BuildControllerWindow.xaml:
--------------------------------------------------------------------------------
1 |
9 |
10 |
11 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/BuildControllerWindow.xaml.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace TfsBuildManager.Views
5 | {
6 | using System.Windows;
7 | using TfsBuildManager.Views.ViewModels;
8 |
9 | ///
10 | /// Interaction logic for BuildControllerWindow
11 | ///
12 | public partial class BuildControllerWindow
13 | {
14 | private readonly BuildControllerListViewModel model;
15 |
16 | public BuildControllerWindow(BuildControllerListViewModel model)
17 | {
18 | this.model = model;
19 | this.InitializeComponent();
20 |
21 | this.Grid1.DataContext = this.model;
22 | }
23 |
24 | public BuildControllerViewModel SelectedBuildController { get; set; }
25 |
26 | private void OnOK(object sender, RoutedEventArgs e)
27 | {
28 | if (this.BuildControllerList.SelectedItem != null)
29 | {
30 | this.SelectedBuildController = this.BuildControllerList.SelectedItem as BuildControllerViewModel;
31 | this.DialogResult = true;
32 | this.Close();
33 | }
34 | }
35 |
36 | private void OnCancel(object sender, RoutedEventArgs e)
37 | {
38 | this.DialogResult = false;
39 | this.Close();
40 | }
41 | }
42 | }
43 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/BuildImport.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace TfsBuildManager.Views
5 | {
6 | public class BuildImport
7 | {
8 | public string JsonFile { get; set; }
9 |
10 | public string Status { get; set; }
11 |
12 | public string StatusImage { get; set; }
13 |
14 | public string Message { get; set; }
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/BuildNotesOptionWnd.xaml:
--------------------------------------------------------------------------------
1 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 | Build Configuration Summary
30 |
31 |
32 | Work Items
33 |
34 |
35 | Changesets
36 |
37 |
38 | Test Results
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/BuildNotesOptionWnd.xaml.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace TfsBuildManager.Views
5 | {
6 | using System.Collections.Generic;
7 | using System.Windows;
8 | using System.Windows.Controls.Primitives;
9 | using TfsBuildManager.Repository;
10 |
11 | ///
12 | /// Interaction logic for BuildNotesOptionWnd
13 | ///
14 | public partial class BuildNotesOptionWnd
15 | {
16 | public BuildNotesOptionWnd()
17 | {
18 | this.InitializeComponent();
19 | }
20 |
21 | public IEnumerable Option { get; set; }
22 |
23 | private static void SetOption(ToggleButton cb, ref List currentOption, string option)
24 | {
25 | if (cb.IsChecked.HasValue && cb.IsChecked.Value)
26 | {
27 | currentOption.Add(option);
28 | }
29 | }
30 |
31 | private void OnGenerate(object sender, RoutedEventArgs e)
32 | {
33 | var options = new List();
34 | SetOption(this.cbWorkItems, ref options, BuildNoteOptions.WorkItemDetails.ToString());
35 | SetOption(this.cbTestResults, ref options, BuildNoteOptions.TestResults.ToString());
36 | SetOption(this.cbChangesets, ref options, BuildNoteOptions.ChangesetDetails.ToString());
37 | SetOption(this.cbBuildConfiguration, ref options, BuildNoteOptions.BuildConfigurationSummary.ToString());
38 |
39 | this.Option = options;
40 | DialogResult = true;
41 | Close();
42 | }
43 | }
44 | }
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/BuildResourcesGrid.xaml.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace TfsBuildManager.Views
5 | {
6 | ///
7 | /// Interaction logic for BuildResourcesGrid
8 | ///
9 | public partial class BuildResourcesGrid
10 | {
11 | public BuildResourcesGrid()
12 | {
13 | this.InitializeComponent();
14 | }
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/BuildsGrid.xaml.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace TfsBuildManager.Views
5 | {
6 | ///
7 | /// Interaction logic for BuildsGrid
8 | ///
9 | public partial class BuildsGrid
10 | {
11 | public BuildsGrid()
12 | {
13 | this.InitializeComponent();
14 | }
15 |
16 | private void OnMouseDoubleClick(object sender, System.Windows.Input.MouseButtonEventArgs e)
17 | {
18 | var vm = this.DataContext as BuildManagerViewModel;
19 | if (vm.SelectedBuildFilter == BuildFilter.Completed)
20 | {
21 | vm.OnShowDetails();
22 | }
23 | else if (vm.SelectedBuildFilter == BuildFilter.Queued)
24 | {
25 | vm.OnShowQueuedDetails();
26 | }
27 | }
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/DeleteOptionsWnd.xaml:
--------------------------------------------------------------------------------
1 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 | Details
29 |
30 | Drop
31 |
32 | Test Results
33 |
34 | Label
35 |
36 | Symbols
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/DeleteOptionsWnd.xaml.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace TfsBuildManager.Views
5 | {
6 | using System.Windows;
7 | using System.Windows.Controls;
8 | using Microsoft.TeamFoundation.Build.Client;
9 |
10 | ///
11 | /// Interaction logic for DeleteOptionsWnd
12 | ///
13 | public partial class DeleteOptionsWindow
14 | {
15 | public DeleteOptionsWindow()
16 | {
17 | this.InitializeComponent();
18 | }
19 |
20 | public DeleteOptions Option { get; private set; }
21 |
22 | private static void SetOption(CheckBox cb, ref DeleteOptions currentOption, DeleteOptions option)
23 | {
24 | if (cb.IsChecked != null && cb.IsChecked.Value)
25 | {
26 | currentOption |= option;
27 | }
28 | }
29 |
30 | private void OnDelete(object sender, RoutedEventArgs e)
31 | {
32 | DeleteOptions options = new DeleteOptions();
33 | SetOption(this.cbDetails, ref options, DeleteOptions.Details);
34 | SetOption(this.cbDrop, ref options, DeleteOptions.DropLocation);
35 | SetOption(this.cbTestResults, ref options, DeleteOptions.TestResults);
36 | SetOption(this.cbLabel, ref options, DeleteOptions.Label);
37 | SetOption(this.cbSymbols, ref options, DeleteOptions.Symbols);
38 |
39 | this.Option = options;
40 | this.DialogResult = true;
41 | this.Close();
42 | }
43 | }
44 | }
45 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/DropLocationWindow.xaml.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace TfsBuildManager.Views
5 | {
6 | using System.Collections.Generic;
7 | using System.Windows;
8 | using TfsBuildManager.Views.ViewModels;
9 |
10 | ///
11 | /// Interaction logic for DropLocationWindow
12 | ///
13 | public partial class DropLocationWindow
14 | {
15 | private readonly DropLocationViewModel model;
16 |
17 | public DropLocationWindow(DropLocationViewModel model)
18 | {
19 | this.model = model;
20 | this.InitializeComponent();
21 | this.DataContext = this.model;
22 | }
23 |
24 | private void OnOK(object sender, RoutedEventArgs e)
25 | {
26 | this.DialogResult = true;
27 | this.Close();
28 | }
29 |
30 | private void OnCancel(object sender, RoutedEventArgs e)
31 | {
32 | this.DialogResult = false;
33 | this.Close();
34 | }
35 |
36 | private void lstMacros_MouseDoubleClick(object sender, System.Windows.Input.MouseButtonEventArgs e)
37 | {
38 | string s = ((KeyValuePair)lstMacros.SelectedItem).Key;
39 | IDataObject old = Clipboard.GetDataObject();
40 | Clipboard.SetText(s);
41 | txtSetDropLocation.BeginChange();
42 | txtSetDropLocation.Paste();
43 | txtSetDropLocation.EndChange();
44 | if (old != null)
45 | {
46 | Clipboard.SetDataObject(old);
47 | txtSetDropLocation.GetBindingExpression(System.Windows.Controls.TextBox.TextProperty).UpdateSource();
48 | }
49 | }
50 | }
51 | }
52 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/Extensions.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace TfsBuildManager.Views
5 | {
6 | using System;
7 | using System.Collections.Generic;
8 | using System.Collections.ObjectModel;
9 | using System.Linq;
10 |
11 | internal static class Extensions
12 | {
13 | public static void Sort(this ObservableCollection collection) where T : IComparable
14 | {
15 | // Order by and put into a list.
16 | List sorted = collection.OrderBy(x => x).ToList();
17 |
18 | // Loop the list and exchange items in the collection.
19 | for (int i = sorted.Count() - 1; i >= 0; i--)
20 | {
21 | collection.Insert(0, sorted[i]);
22 | collection.RemoveAt(collection.Count - 1);
23 | }
24 | }
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/Graphics/AppIcon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TFSBuildManager.Views/Graphics/AppIcon.ico
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/Graphics/BuildNotes.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TFSBuildManager.Views/Graphics/BuildNotes.png
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/Graphics/Clone.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TFSBuildManager.Views/Graphics/Clone.png
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/Graphics/Drop.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TFSBuildManager.Views/Graphics/Drop.png
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/Graphics/Edit.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TFSBuildManager.Views/Graphics/Edit.png
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/Graphics/Failed.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TFSBuildManager.Views/Graphics/Failed.png
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/Graphics/InProgress.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TFSBuildManager.Views/Graphics/InProgress.png
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/Graphics/Menu_ChangeTemplate.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TFSBuildManager.Views/Graphics/Menu_ChangeTemplate.png
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/Graphics/Menu_Clean.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TFSBuildManager.Views/Graphics/Menu_Clean.png
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/Graphics/Menu_Delete.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TFSBuildManager.Views/Graphics/Menu_Delete.png
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/Graphics/Menu_Disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TFSBuildManager.Views/Graphics/Menu_Disable.png
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/Graphics/Menu_Enable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TFSBuildManager.Views/Graphics/Menu_Enable.png
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/Graphics/Menu_Pause.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TFSBuildManager.Views/Graphics/Menu_Pause.png
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/Graphics/NotStarted.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TFSBuildManager.Views/Graphics/NotStarted.png
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/Graphics/PartiallySucceeded.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TFSBuildManager.Views/Graphics/PartiallySucceeded.ico
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/Graphics/PartiallySucceeded.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TFSBuildManager.Views/Graphics/PartiallySucceeded.png
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/Graphics/Postponed.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TFSBuildManager.Views/Graphics/Postponed.png
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/Graphics/Queued.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TFSBuildManager.Views/Graphics/Queued.png
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/Graphics/SetDefault.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TFSBuildManager.Views/Graphics/SetDefault.png
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/Graphics/Stopped.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TFSBuildManager.Views/Graphics/Stopped.png
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/Graphics/Succeeded.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TFSBuildManager.Views/Graphics/Succeeded.png
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/Graphics/buildresources.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TFSBuildManager.Views/Graphics/buildresources.png
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/Graphics/controller.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TFSBuildManager.Views/Graphics/controller.png
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/Graphics/dgml.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TFSBuildManager.Views/Graphics/dgml.png
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/Graphics/export.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TFSBuildManager.Views/Graphics/export.png
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/Graphics/import.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TFSBuildManager.Views/Graphics/import.png
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/Graphics/lock_16.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TFSBuildManager.Views/Graphics/lock_16.png
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/Graphics/refresh.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TFSBuildManager.Views/Graphics/refresh.png
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/Graphics/retention.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TFSBuildManager.Views/Graphics/retention.png
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/IMainView.xaml.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace TfsBuildManager.Views
5 | {
6 | using System;
7 | using System.Collections.Generic;
8 |
9 | using TfsBuildManager.Views.ViewModels;
10 |
11 | public interface IMainView
12 | {
13 | IEnumerable SelectedItems { get; }
14 |
15 | IEnumerable SelectedBuilds { get; }
16 |
17 | IEnumerable SelectedActiveBuilds { get; }
18 |
19 | IEnumerable SelectedBuildProcessTemplates { get; }
20 |
21 | IEnumerable SelectedBuildResources { get; }
22 |
23 | string SelectedTeamProject { get; }
24 |
25 | void DisplayError(Exception ex);
26 | }
27 | }
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/ImportBuildDefinitions.xaml:
--------------------------------------------------------------------------------
1 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/ProcessParameterWindow.xaml:
--------------------------------------------------------------------------------
1 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/ProcessParameterWindow.xaml.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace TfsBuildManager.Views
5 | {
6 | using System.Windows;
7 |
8 | ///
9 | /// Interaction logic for ProcessParameterWindow
10 | ///
11 | public partial class ProcessParameterWindow
12 | {
13 | public string[] ProcessParameter;
14 |
15 | public bool BooleanParameter;
16 |
17 | ///
18 | /// Initializes a new instance of the class.
19 | ///
20 | public ProcessParameterWindow()
21 | {
22 | InitializeComponent();
23 | }
24 |
25 | private void ButtonOk_OnClick(object sender, RoutedEventArgs e)
26 | {
27 | if (string.IsNullOrWhiteSpace(this.TextBoxParameterName.Text))
28 | {
29 | MessageBox.Show("Parameter Name must be provided", "Community TFS Build Manager", MessageBoxButton.OK, MessageBoxImage.Error);
30 | return;
31 | }
32 |
33 | if (!(this.RadioButtonBoolean.IsChecked.HasValue && this.RadioButtonBoolean.IsChecked.Value) && !(this.RadioButtonString.IsChecked.HasValue && this.RadioButtonString.IsChecked.Value))
34 | {
35 | MessageBox.Show("Please set whether this is a string or boolean parameter", "Community TFS Build Manager", MessageBoxButton.OK, MessageBoxImage.Error);
36 | return;
37 | }
38 |
39 | if (this.RadioButtonBoolean.IsChecked.HasValue && this.RadioButtonBoolean.IsChecked.Value)
40 | {
41 | this.BooleanParameter = true;
42 | }
43 | else
44 | {
45 | this.BooleanParameter = false;
46 | }
47 |
48 | this.ProcessParameter = new string[2];
49 | this.ProcessParameter[0] = this.TextBoxParameterName.Text;
50 | this.ProcessParameter[1] = this.TextBoxParameterValue.Text;
51 | DialogResult = true;
52 | this.Close();
53 | }
54 | }
55 | }
56 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/ProcessTemplatesGrid.xaml:
--------------------------------------------------------------------------------
1 |
9 |
10 |
11 |
12 |
13 |
14 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/ProcessTemplatesGrid.xaml.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace TfsBuildManager.Views
5 | {
6 | ///
7 | /// Interaction logic for BuildsGrid
8 | ///
9 | public partial class ProcessTemplatesGrid
10 | {
11 | public ProcessTemplatesGrid()
12 | {
13 | this.InitializeComponent();
14 | }
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | using System.Reflection;
5 | using System.Windows;
6 |
7 | [assembly: AssemblyTitle("TFSBuildManager.Views")]
8 |
9 | [assembly: ThemeInfo(
10 | ResourceDictionaryLocation.None, // where theme specific resource dictionaries are located (used if a resource is not found in the page, or application resource dictionaries)
11 | ResourceDictionaryLocation.SourceAssembly // where the generic resource dictionary is located (used if a resource is not found in the page, app, or any theme specific resource dictionaries)
12 | )]
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/Properties/Resources.Designer.cs:
--------------------------------------------------------------------------------
1 | //------------------------------------------------------------------------------
2 | //
3 | // This code was generated by a tool.
4 | // Runtime Version:4.0.30319.32559
5 | //
6 | // Changes to this file may cause incorrect behavior and will be lost if
7 | // the code is regenerated.
8 | //
9 | //------------------------------------------------------------------------------
10 |
11 | namespace TfsBuildManager.Views.Properties {
12 | using System;
13 |
14 |
15 | ///
16 | /// A strongly-typed resource class, for looking up localized strings, etc.
17 | ///
18 | // This class was auto-generated by the StronglyTypedResourceBuilder
19 | // class via a tool like ResGen or Visual Studio.
20 | // To add or remove a member, edit your .ResX file then rerun ResGen
21 | // with the /str option, or rebuild your VS project.
22 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
23 | [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
24 | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
25 | internal class Resources {
26 |
27 | private static global::System.Resources.ResourceManager resourceMan;
28 |
29 | private static global::System.Globalization.CultureInfo resourceCulture;
30 |
31 | [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
32 | internal Resources() {
33 | }
34 |
35 | ///
36 | /// Returns the cached ResourceManager instance used by this class.
37 | ///
38 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
39 | internal static global::System.Resources.ResourceManager ResourceManager {
40 | get {
41 | if (object.ReferenceEquals(resourceMan, null)) {
42 | global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("TfsBuildManager.Views.Properties.Resources", typeof(Resources).Assembly);
43 | resourceMan = temp;
44 | }
45 | return resourceMan;
46 | }
47 | }
48 |
49 | ///
50 | /// Overrides the current thread's CurrentUICulture property for all
51 | /// resource lookups using this strongly typed resource class.
52 | ///
53 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
54 | internal static global::System.Globalization.CultureInfo Culture {
55 | get {
56 | return resourceCulture;
57 | }
58 | set {
59 | resourceCulture = value;
60 | }
61 | }
62 | }
63 | }
64 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/Properties/Settings.Designer.cs:
--------------------------------------------------------------------------------
1 | //------------------------------------------------------------------------------
2 | //
3 | // This code was generated by a tool.
4 | // Runtime Version:4.0.30319.32559
5 | //
6 | // Changes to this file may cause incorrect behavior and will be lost if
7 | // the code is regenerated.
8 | //
9 | //------------------------------------------------------------------------------
10 |
11 | namespace TfsBuildManager.Views.Properties {
12 |
13 |
14 | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
15 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "12.0.0.0")]
16 | internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
17 |
18 | private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
19 |
20 | public static Settings Default {
21 | get {
22 | return defaultInstance;
23 | }
24 | }
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/Properties/Settings.settings:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/RemapWorkspaces.xaml.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace TfsBuildManager.Views
5 | {
6 | using System;
7 | using System.Windows;
8 | using TfsBuildManager.Views.ViewModels;
9 |
10 | ///
11 | /// Interaction logic for RemapWorkspaces.xaml
12 | ///
13 | public partial class RemapWorkspaces : Window
14 | {
15 | private RemapWorkspacesViewModel viewModel;
16 |
17 | public RemapWorkspaces(RemapWorkspacesViewModel viewModel)
18 | {
19 | this.InitializeComponent();
20 | this.viewModel = viewModel;
21 | this.DataContext = viewModel;
22 | }
23 |
24 | private static void DisplayError(Exception ex)
25 | {
26 | MessageBox.Show(ex.ToString(), "Community TFS Build Manager", MessageBoxButton.OK, MessageBoxImage.Error);
27 | }
28 |
29 | private void ApplyButton_Click(object sender, RoutedEventArgs e)
30 | {
31 | try
32 | {
33 | this.viewModel.Save();
34 | this.Close();
35 | }
36 | catch (Exception ex)
37 | {
38 | DisplayError(ex);
39 | }
40 | }
41 |
42 | private void CancelButton_Click(object sender, RoutedEventArgs e)
43 | {
44 | this.Close();
45 | }
46 |
47 | private void ReplacementText_TextChanged(object sender, System.Windows.Controls.TextChangedEventArgs e)
48 | {
49 | this.viewModel.ReplacementText = this.ReplacementText.Text;
50 | this.viewModel.RemapWorkspaces();
51 | this.WorkspacesList.Items.Refresh();
52 | }
53 | }
54 | }
55 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/SelectBuildProcessTemplateWnd.xaml.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace TfsBuildManager.Views
5 | {
6 | using System.Windows;
7 | using TfsBuildManager.Views.ViewModels;
8 |
9 | ///
10 | /// Interaction logic for SelectBuildProcessTemplateWnd
11 | ///
12 | public partial class SelectBuildProcessTemplateWindow
13 | {
14 | private readonly BuildTemplateListViewModel model;
15 |
16 | public SelectBuildProcessTemplateWindow(BuildTemplateListViewModel model)
17 | {
18 | this.model = model;
19 | this.InitializeComponent();
20 | this.Grid1.DataContext = this.model;
21 | }
22 |
23 | public BuildTemplateViewModel SelectedBuildTemplate { get; set; }
24 |
25 | private void OnOK(object sender, RoutedEventArgs e)
26 | {
27 | if (this.BuildTemplateList.SelectedItem != null)
28 | {
29 | this.SelectedBuildTemplate = this.BuildTemplateList.SelectedItem as BuildTemplateViewModel;
30 | this.DialogResult = true;
31 | this.Close();
32 | }
33 | }
34 |
35 | private void OnCancel(object sender, RoutedEventArgs e)
36 | {
37 | this.DialogResult = false;
38 | this.Close();
39 | }
40 | }
41 | }
42 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/SelectBuildQuality.xaml:
--------------------------------------------------------------------------------
1 |
7 |
8 |
9 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/SelectBuildQuality.xaml.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace TfsBuildManager.Views
5 | {
6 | using System.Windows;
7 |
8 | using TfsBuildManager.Views.ViewModels;
9 |
10 | ///
11 | /// Interaction logic for SelectTeamProject
12 | ///
13 | public partial class SelectBuildQuality
14 | {
15 | private readonly BuildQualityListViewModel model;
16 |
17 | public SelectBuildQuality(BuildQualityListViewModel model)
18 | {
19 | this.model = model;
20 | this.InitializeComponent();
21 |
22 | this.Grid1.DataContext = this.model;
23 | }
24 |
25 | public BuildQualityViewModel SelectedBuildQuality { get; set; }
26 |
27 | private void OnOK(object sender, RoutedEventArgs e)
28 | {
29 | this.SetBuildQuality();
30 | }
31 |
32 | private void SetBuildQuality()
33 | {
34 | if (this.BuildQualityList.SelectedItem != null)
35 | {
36 | this.SelectedBuildQuality = this.BuildQualityList.SelectedItem as BuildQualityViewModel;
37 | this.DialogResult = true;
38 | this.Close();
39 | }
40 | }
41 |
42 | private void OnCancel(object sender, RoutedEventArgs e)
43 | {
44 | this.DialogResult = false;
45 | this.Close();
46 | }
47 |
48 | private void OnDoubleClick(object sender, System.Windows.Input.MouseButtonEventArgs e)
49 | {
50 | this.SetBuildQuality();
51 | }
52 | }
53 | }
54 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/SelectTargetBranchWnd.xaml:
--------------------------------------------------------------------------------
1 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/SelectTargetBranchWnd.xaml.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace TfsBuildManager.Views
5 | {
6 | using System.Collections.Generic;
7 | using System.Windows;
8 | using TfsBuildManager.Repository;
9 | using TfsBuildManager.Views.ViewModels;
10 |
11 | ///
12 | /// Interaction logic for SelectTargetBranchWnd
13 | ///
14 | public partial class SelectTargetBranchWindow
15 | {
16 | private readonly string teamProject;
17 | private readonly ITfsClientRepository tfs;
18 | private readonly TargetBranchViewModel viewmodel;
19 |
20 | public SelectTargetBranchWindow(string originalName, IEnumerable targets, string teamProject, ITfsClientRepository tfs)
21 | {
22 | this.teamProject = teamProject;
23 | this.tfs = tfs;
24 | this.InitializeComponent();
25 |
26 | this.viewmodel = new TargetBranchViewModel(originalName, targets);
27 | this.DataContext = this.viewmodel;
28 | }
29 |
30 | public Branch SelectedTargetBranch
31 | {
32 | get
33 | {
34 | return this.viewmodel.SelectedBranch.Branch;
35 | }
36 | }
37 |
38 | public string NewBuildDefinitionName
39 | {
40 | get
41 | {
42 | return this.viewmodel.NewName;
43 | }
44 | }
45 |
46 | private void OnOK(object sender, RoutedEventArgs e)
47 | {
48 | if (this.tfs.GetBuildDefinition(this.teamProject, this.NewBuildDefinitionName) != null)
49 | {
50 | MessageBox.Show(this, "Build definition " + this.NewBuildDefinitionName + " already exists", "Clone to branch", MessageBoxButton.OK, MessageBoxImage.Stop);
51 | return;
52 | }
53 |
54 | this.DialogResult = true;
55 | this.Close();
56 | }
57 |
58 | private void OnCancel(object sender, RoutedEventArgs e)
59 | {
60 | this.DialogResult = false;
61 | this.Close();
62 | }
63 | }
64 | }
65 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/SelectTeamProject.xaml:
--------------------------------------------------------------------------------
1 |
7 |
8 |
9 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/SelectTeamProject.xaml.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace TfsBuildManager.Views
5 | {
6 | using System.Collections.Generic;
7 | using System.Linq;
8 | using System.Windows;
9 |
10 | using TfsBuildManager.Views.ViewModels;
11 |
12 | ///
13 | /// Interaction logic for SelectTeamProject
14 | ///
15 | public partial class SelectTeamProject
16 | {
17 | private readonly TeamProjectListViewModel model;
18 |
19 | public SelectTeamProject(TeamProjectListViewModel model, string selectedTeamProject)
20 | {
21 | this.model = model;
22 | this.InitializeComponent();
23 |
24 | this.Grid1.DataContext = this.model;
25 | if (selectedTeamProject != null)
26 | {
27 | var project = model.TeamProjects.FirstOrDefault(tp => tp.Name == selectedTeamProject);
28 | if (project != null)
29 | {
30 | this.BuildControllerList.SelectedValue = project;
31 | }
32 | }
33 | }
34 |
35 | public IEnumerable SelectedTeamProjects { get; set; }
36 |
37 | public bool SetAsDefault { get; set; }
38 |
39 | private void OnOK(object sender, RoutedEventArgs e)
40 | {
41 | if (this.BuildControllerList.SelectedItems != null && this.BuildControllerList.SelectedItems.Count > 0)
42 | {
43 | var selectedProjects = (from object p in this.BuildControllerList.SelectedItems select p as TeamProjectViewModel).ToList();
44 | this.SelectedTeamProjects = selectedProjects;
45 | this.SetAsDefault = this.cbSetAsDefault.IsChecked.HasValue && this.cbSetAsDefault.IsChecked.Value;
46 | this.DialogResult = true;
47 | this.Close();
48 | }
49 | }
50 |
51 | private void OnCancel(object sender, RoutedEventArgs e)
52 | {
53 | this.DialogResult = false;
54 | this.Close();
55 | }
56 | }
57 | }
58 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/TFSBuildManager.Views.csproj.vspscc:
--------------------------------------------------------------------------------
1 | ""
2 | {
3 | "FILE_VERSION" = "9237"
4 | "ENLISTMENT_CHOICE" = "NEVER"
5 | "PROJECT_FILE_RELATIVE_PATH" = ""
6 | "NUMBER_OF_EXCLUDED_FILES" = "0"
7 | "ORIGINAL_PROJECT_FILE_PATH" = ""
8 | "NUMBER_OF_NESTED_PROJECTS" = "0"
9 | "SOURCE_CONTROL_SETTINGS_PROVIDER" = "PROVIDER"
10 | }
11 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/ViewModels/BuildDateFilter.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 |
5 | namespace TfsBuildManager.Views
6 | {
7 | using System;
8 |
9 | public class BuildDateFilter
10 | {
11 | public string Name { get; set; }
12 |
13 | public DateFilter Value { get; set; }
14 |
15 | public DateTime TimeSpan
16 | {
17 | get
18 | {
19 | switch (this.Value)
20 | {
21 | case DateFilter.Today:
22 | return DateTime.Now.Date;
23 | case DateFilter.OneDay:
24 | return DateTime.Now.Date.AddDays(-1).Date;
25 | case DateFilter.TwoDays:
26 | return DateTime.Now.Date.AddDays(-2).Date;
27 | case DateFilter.OneWeek:
28 | return DateTime.Now.Date.AddDays(-7).Date;
29 | case DateFilter.TwoWeeks:
30 | return DateTime.Now.Date.AddDays(-14).Date;
31 | case DateFilter.FourWeeks:
32 | return DateTime.Now.Date.AddDays(-28).Date;
33 | case DateFilter.Anytime:
34 | return DateTime.MinValue;
35 | default:
36 | return DateTime.Now.Date;
37 | }
38 | }
39 | }
40 | }
41 | }
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/ViewModels/BuildFilterEnum.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace TfsBuildManager.Views
5 | {
6 | public enum BuildFilter
7 | {
8 | ///
9 | /// None
10 | ///
11 | None = 0,
12 |
13 | ///
14 | /// Latest
15 | ///
16 | Completed = 1,
17 |
18 | ///
19 | /// Queued
20 | ///
21 | Queued = 2
22 | }
23 | }
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/ViewModels/BuildResourceViewModel.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace TfsBuildManager.Views
5 | {
6 | using System;
7 | using System.Collections.Generic;
8 | using System.Linq;
9 | using TfsBuildManager.Repository;
10 |
11 | public abstract class BuildResourceViewModel : ViewModelBase
12 | {
13 | public string Name { get; set; }
14 |
15 | public int Id { get; set; }
16 |
17 | public string Status { get; set; }
18 |
19 | public bool Enabled { get; set; }
20 |
21 | public string IsReserved { get; set; }
22 |
23 | public DateTime DateCreated { get; set; }
24 |
25 | public DateTime DateUpdated { get; set; }
26 |
27 | public string QueueCount { get; set; }
28 |
29 | public string MaxConcurrentBuilds { get; set; }
30 |
31 | public string CustomAssemblyPath { get; set; }
32 |
33 | public string EnabledText
34 | {
35 | get { return this.Enabled ? "Enabled" : "Disabled"; }
36 | }
37 |
38 | public string StatusMessage { get; set; }
39 |
40 | public IEnumerable Tags { get; set; }
41 |
42 | public string TagsAsList
43 | {
44 | get
45 | {
46 | if (this.Tags != null)
47 | {
48 | string tags = this.Tags.Aggregate(string.Empty, (current, tag) => current + tag + ",");
49 | return tags.TrimEnd(',');
50 | }
51 |
52 | return string.Empty;
53 | }
54 | }
55 |
56 | public string BuildDirectory { get; set; }
57 |
58 | public abstract void OnRemove(ITfsClientRepository repository);
59 |
60 | public abstract void OnEnable(ITfsClientRepository repository);
61 |
62 | public abstract void OnDisable(ITfsClientRepository repository);
63 | }
64 | }
65 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/ViewModels/BuildTemplateViewModel.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace TfsBuildManager.Views.ViewModels
5 | {
6 | using System.Collections.Generic;
7 | using System.Collections.ObjectModel;
8 | using Microsoft.TeamFoundation.Build.Client;
9 |
10 | public class BuildTemplateListViewModel : ViewModelBase
11 | {
12 | public BuildTemplateListViewModel(IEnumerable templates)
13 | {
14 | this.BuildTemplates = new ObservableCollection();
15 | foreach (var t in templates)
16 | {
17 | this.BuildTemplates.Add(new BuildTemplateViewModel(t));
18 | }
19 | }
20 |
21 | public ObservableCollection BuildTemplates { get; private set; }
22 | }
23 |
24 | public class BuildTemplateViewModel : ViewModelBase
25 | {
26 | public BuildTemplateViewModel(IProcessTemplate template)
27 | {
28 | this.ServerPath = template.ServerPath;
29 | this.TeamProject = template.TeamProject;
30 | this.TemplateType = template.TemplateType.ToString();
31 | }
32 |
33 | public string TemplateType { get; set; }
34 |
35 | public string TeamProject { get; set; }
36 |
37 | public string ServerPath { get; set; }
38 | }
39 | }
40 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/ViewModels/BuildViewEnum.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace TfsBuildManager.Views
5 | {
6 | public enum BuildView
7 | {
8 | ///
9 | /// None
10 | ///
11 | None = 0,
12 |
13 | ///
14 | /// BuildDefinitions
15 | ///
16 | BuildDefinitions = 1,
17 |
18 | ///
19 | /// Builds
20 | ///
21 | Builds = 2,
22 |
23 | ///
24 | /// Build Process Template
25 | ///
26 | BuildProcessTemplates = 3,
27 |
28 | ///
29 | /// Build Resources
30 | ///
31 | BuildResources = 4,
32 | }
33 |
34 | public enum DateFilter
35 | {
36 | ///
37 | /// None
38 | ///
39 | Today = 0,
40 |
41 | ///
42 | /// BuildDefinitions
43 | ///
44 | OneDay = 1,
45 |
46 | ///
47 | /// Builds
48 | ///
49 | TwoDays = 2,
50 |
51 | ///
52 | /// Builds
53 | ///
54 | OneWeek = 3,
55 |
56 | ///
57 | /// Builds
58 | ///
59 | TwoWeeks = 4,
60 |
61 | ///
62 | /// Builds
63 | ///
64 | FourWeeks = 5,
65 |
66 | ///
67 | /// Builds
68 | ///
69 | Anytime = 6
70 | }
71 | }
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/ViewModels/BuildViewItem.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 |
5 | namespace TfsBuildManager.Views
6 | {
7 | public class BuildViewItem
8 | {
9 | public string Name { get; set; }
10 |
11 | public BuildView Value { get; set; }
12 | }
13 | }
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/ViewModels/DateFilterCollection.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 |
5 | namespace TfsBuildManager.Views
6 | {
7 | using System.Collections.ObjectModel;
8 |
9 | public class DateFilterCollection : ObservableCollection
10 | {
11 | public DateFilterCollection()
12 | {
13 | this.Add(new BuildDateFilter { Name = "Today", Value = DateFilter.Today });
14 | this.Add(new BuildDateFilter { Name = "Last 24 hours", Value = DateFilter.OneDay });
15 | this.Add(new BuildDateFilter { Name = "Last 48 hours", Value = DateFilter.TwoDays });
16 | this.Add(new BuildDateFilter { Name = "Last 7 days", Value = DateFilter.OneWeek });
17 | this.Add(new BuildDateFilter { Name = "Last 14 days", Value = DateFilter.TwoWeeks });
18 | this.Add(new BuildDateFilter { Name = "Last 28 days", Value = DateFilter.FourWeeks });
19 | this.Add(new BuildDateFilter { Name = "", Value = DateFilter.Anytime });
20 | }
21 | }
22 | }
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/ViewModels/RemapWorkspacesViewModel.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 |
5 | namespace TfsBuildManager.Views.ViewModels
6 | {
7 | using System;
8 | using System.Collections.ObjectModel;
9 | using System.Linq;
10 | using System.Text.RegularExpressions;
11 | using Microsoft.TeamFoundation.Build.Client;
12 |
13 | public class RemapWorkspacesViewModel : ViewModelBase
14 | {
15 | private ObservableCollection workspaceItems;
16 |
17 | private IBuildDefinition buildDefinition;
18 |
19 | public RemapWorkspacesViewModel(IBuildDefinition buildDefinition)
20 | {
21 | buildDefinition.Refresh();
22 | this.buildDefinition = buildDefinition;
23 | this.workspaceItems = InitializeWorkSpaceItems(buildDefinition);
24 | }
25 |
26 | public string TextToSearch { get; set; }
27 |
28 | public string ReplacementText { get; set; }
29 |
30 | public ObservableCollection WorkspaceItems
31 | {
32 | get
33 | {
34 | return this.workspaceItems;
35 | }
36 | }
37 |
38 | public void RemapWorkspaces()
39 | {
40 | if (!string.IsNullOrWhiteSpace(this.TextToSearch) && !string.IsNullOrWhiteSpace(this.ReplacementText))
41 | {
42 | foreach (var workSpaceItem in this.workspaceItems)
43 | {
44 | workSpaceItem.RemappedSourceControlFolder = Regex.Replace(workSpaceItem.SourceControlFolder, Regex.Escape(this.TextToSearch), this.ReplacementText, RegexOptions.IgnoreCase);
45 | }
46 | }
47 | }
48 |
49 | public void Save()
50 | {
51 | foreach (var mapping in this.buildDefinition.Workspace.Mappings)
52 | {
53 | var workspaceItem = this.WorkspaceItems.FirstOrDefault(mp => string.Compare(mp.SourceControlFolder, mapping.ServerItem, StringComparison.OrdinalIgnoreCase) == 0);
54 | mapping.ServerItem = (workspaceItem != null) ? workspaceItem.RemappedSourceControlFolder : mapping.ServerItem;
55 | }
56 |
57 | this.buildDefinition.Save();
58 | }
59 |
60 | private static ObservableCollection InitializeWorkSpaceItems(IBuildDefinition buildDefinition)
61 | {
62 | var workspaceMappings = new ObservableCollection();
63 | foreach (var mapping in buildDefinition.Workspace.Mappings)
64 | {
65 | workspaceMappings.Add(new WorkspaceItemViewModel()
66 | {
67 | Status = (mapping.MappingType == WorkspaceMappingType.Map) ? "Active" : "Cloaked",
68 | SourceControlFolder = mapping.ServerItem,
69 | RemappedSourceControlFolder = mapping.ServerItem
70 | });
71 | }
72 |
73 | return workspaceMappings;
74 | }
75 | }
76 | }
77 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/ViewModels/TargetBranchViewModel.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace TfsBuildManager.Views.ViewModels
5 | {
6 | using System.Collections.Generic;
7 | using System.Collections.ObjectModel;
8 | using System.IO;
9 | using TfsBuildManager.Repository;
10 |
11 | public class TargetBranchViewModel : ViewModelBase
12 | {
13 | private readonly string originalName;
14 | private string newName;
15 | private TargetBranch selectedBranch;
16 |
17 | public TargetBranchViewModel(string originalName, IEnumerable targets)
18 | {
19 | this.originalName = originalName;
20 | this.TargetBranches = new ObservableCollection();
21 | foreach (var t in targets)
22 | {
23 | this.TargetBranches.Add(new TargetBranch { Branch = t, Path = t.ServerPath });
24 | }
25 | }
26 |
27 | public ObservableCollection TargetBranches { get; private set; }
28 |
29 | public string NewName
30 | {
31 | get
32 | {
33 | return this.newName;
34 | }
35 |
36 | set
37 | {
38 | this.newName = value;
39 | this.NotifyPropertyChanged("NewName");
40 | this.NotifyPropertyChanged("IsEnabled");
41 | }
42 | }
43 |
44 | public TargetBranch SelectedBranch
45 | {
46 | get
47 | {
48 | return this.selectedBranch;
49 | }
50 |
51 | set
52 | {
53 | var old = this.selectedBranch;
54 | this.selectedBranch = value;
55 | this.NewName = this.originalName + "." + Path.GetFileName(value.Path);
56 | this.NotifyPropertyChanged("NewName");
57 | if (value != old)
58 | {
59 | this.NotifyPropertyChanged("IsEnabled");
60 | }
61 | }
62 | }
63 |
64 | public bool IsEnabled
65 | {
66 | get
67 | {
68 | return this.SelectedBranch != null && !string.IsNullOrEmpty(this.NewName);
69 | }
70 | }
71 | }
72 |
73 | public class TargetBranch : ViewModelBase
74 | {
75 | public Branch Branch { get; set; }
76 |
77 | public string Path { get; set; }
78 | }
79 | }
80 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/ViewModels/ViewModelBase.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace TfsBuildManager.Views
5 | {
6 | using System.ComponentModel;
7 |
8 | public abstract class ViewModelBase : INotifyPropertyChanged
9 | {
10 | #region Events
11 |
12 | public event PropertyChangedEventHandler PropertyChanged;
13 |
14 | #endregion // Events
15 |
16 | #region Methods
17 | public void NotifyPropertyChanged(string propertyName)
18 | {
19 | PropertyChangedEventHandler handler = this.PropertyChanged;
20 |
21 | if (handler != null)
22 | {
23 | handler(this, new PropertyChangedEventArgs(propertyName));
24 | }
25 | }
26 |
27 | #endregion // Methods
28 | }
29 | }
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/ViewModels/WorkspaceItemViewModel.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 |
5 | namespace TfsBuildManager.Views.ViewModels
6 | {
7 | public class WorkspaceItemViewModel
8 | {
9 | public string Status { get; set; }
10 |
11 | public string SourceControlFolder { get; set; }
12 |
13 | public string RemappedSourceControlFolder { get; set; }
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/WaitCursor.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace TfsBuildManager.Views
5 | {
6 | using System;
7 | using System.Windows.Forms;
8 |
9 | public class WaitCursor : IDisposable
10 | {
11 | public WaitCursor()
12 | {
13 | Cursor.Current = Cursors.WaitCursor;
14 | }
15 |
16 | public void Dispose()
17 | {
18 | this.Dispose(true);
19 | GC.SuppressFinalize(this);
20 | }
21 |
22 | protected virtual void Dispose(bool disposing)
23 | {
24 | if (disposing)
25 | {
26 | Cursor.Current = Cursors.Default;
27 | }
28 | }
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/app.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.Views/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/Manager/TFSBuildManager.vssscc:
--------------------------------------------------------------------------------
1 | ""
2 | {
3 | "FILE_VERSION" = "9237"
4 | "ENLISTMENT_CHOICE" = "NEVER"
5 | "PROJECT_FILE_RELATIVE_PATH" = ""
6 | "NUMBER_OF_EXCLUDED_FILES" = "0"
7 | "ORIGINAL_PROJECT_FILE_PATH" = ""
8 | "NUMBER_OF_NESTED_PROJECTS" = "0"
9 | "SOURCE_CONTROL_SETTINGS_PROVIDER" = "PROJECT"
10 | }
11 |
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.Explorer/BuildNavigationLink.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace TfsBuildManager.Explorer
5 | {
6 | using System;
7 | using System.Windows.Forms;
8 | using EnvDTE;
9 | using Microsoft.TeamFoundation.Controls;
10 |
11 | [TeamExplorerNavigationLink("{5514499B-D1B9-4194-8D50-999F70DAC731}", TeamExplorerNavigationItemIds.Builds, 0)]
12 | public class BuildNavigationLink : ITeamExplorerNavigationLink
13 | {
14 | public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged;
15 |
16 | public bool IsEnabled
17 | {
18 | get { return true; }
19 | }
20 |
21 | public bool IsVisible
22 | {
23 | get { return true; }
24 | }
25 |
26 | public string Text
27 | {
28 | get { return "Community TFS Build Manager"; }
29 | }
30 |
31 | public void Execute()
32 | {
33 | try
34 | {
35 | EnvDTE80.DTE2 dte2 = Microsoft.VisualStudio.Shell.Package.GetGlobalService(typeof(DTE)) as EnvDTE80.DTE2;
36 | if (dte2 != null)
37 | {
38 | dte2.ExecuteCommand("Tools.CommunityTFSBuildManager");
39 | }
40 | }
41 | catch (Exception ex)
42 | {
43 | MessageBox.Show(ex.ToString());
44 | }
45 | }
46 |
47 | public void Invalidate()
48 | {
49 | }
50 |
51 | public void Dispose()
52 | {
53 | }
54 | }
55 | }
56 |
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.Explorer/GlobalSuppressions.cs:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TfsBuildManager.Explorer/GlobalSuppressions.cs
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.Explorer/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | using System.Reflection;
5 |
6 | [assembly: AssemblyTitle("TFSBuildManager.Explorer")]
7 |
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.Explorer/TfsBuildManager.Explorer.csproj.vspscc:
--------------------------------------------------------------------------------
1 | ""
2 | {
3 | "FILE_VERSION" = "9237"
4 | "ENLISTMENT_CHOICE" = "NEVER"
5 | "PROJECT_FILE_RELATIVE_PATH" = ""
6 | "NUMBER_OF_EXCLUDED_FILES" = "0"
7 | "ORIGINAL_PROJECT_FILE_PATH" = ""
8 | "NUMBER_OF_NESTED_PROJECTS" = "0"
9 | "SOURCE_CONTROL_SETTINGS_PROVIDER" = "PROVIDER"
10 | }
11 |
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.Explorer/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.Repository/AgentSettingsBuildParameter.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace TfsBuildManager.Repository
5 | {
6 | using System;
7 | using Microsoft.TeamFoundation.Build.Workflow.Activities;
8 |
9 | public class AgentSettingsBuildParameter
10 | {
11 | public TagComparison Comparison { get; set; }
12 |
13 | public TimeSpan MaxWaitTime { get; set; }
14 |
15 | public TimeSpan MaxExecutionTime { get; set; }
16 |
17 | public string Name { get; set; }
18 |
19 | public StringList Tags { get; set; }
20 |
21 | public static implicit operator AgentSettingsBuildParameter(AgentSettings ags)
22 | {
23 | AgentSettingsBuildParameter agentSet = new AgentSettingsBuildParameter();
24 | agentSet.MaxExecutionTime = ags.MaxExecutionTime;
25 | agentSet.MaxWaitTime = ags.MaxWaitTime;
26 | agentSet.Name = ags.Name;
27 | agentSet.Comparison = ags.TagComparison;
28 | agentSet.Tags = ags.Tags;
29 | return agentSet;
30 | }
31 |
32 | public static implicit operator AgentSettings(AgentSettingsBuildParameter agentSet)
33 | {
34 | return new AgentSettings { MaxExecutionTime = agentSet.MaxExecutionTime, MaxWaitTime = agentSet.MaxWaitTime, Name = agentSet.Name, TagComparison = agentSet.Comparison, Tags = agentSet.Tags };
35 | }
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.Repository/BuildNoteOptions.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace TfsBuildManager.Repository
5 | {
6 | using System;
7 |
8 | [Flags]
9 | public enum BuildNoteOptions
10 | {
11 | ///
12 | /// WorkItems Details
13 | ///
14 | WorkItemDetails = 1,
15 |
16 | ///
17 | /// TestResults
18 | ///
19 | TestResults = 2,
20 |
21 | ///
22 | /// Changeset Details
23 | ///
24 | ChangesetDetails = 3,
25 |
26 | ///
27 | /// Build Configuration Summary
28 | ///
29 | BuildConfigurationSummary = 4
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.Repository/BuildResourceFilter.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace TfsBuildManager.Repository
5 | {
6 | public class BuildResourceFilter
7 | {
8 | public string TeamProject { get; set; }
9 |
10 | public string Controller { get; set; }
11 | }
12 | }
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.Repository/BuildRetentionPolicy.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace TfsBuildManager.Repository
5 | {
6 | using Microsoft.TeamFoundation.Build.Client;
7 |
8 | public class BuildRetentionPolicy
9 | {
10 | public int StoppedKeep;
11 |
12 | public DeleteOptions StoppedDeleteOptions;
13 |
14 | public int FailedKeep;
15 |
16 | public DeleteOptions FailedDeleteOptions;
17 |
18 | public int PartiallySucceededKeep;
19 |
20 | public DeleteOptions PartiallySucceededDeleteOptions;
21 |
22 | public int SucceededKeep;
23 |
24 | public DeleteOptions SucceededDeleteOptions;
25 | }
26 | }
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.Repository/ExportedAgileTestPlatformSpec.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace TfsBuildManager.Repository
5 | {
6 | using Microsoft.TeamFoundation.Build.Workflow.Activities;
7 |
8 | public class ExportedAgileTestPlatformSpec
9 | {
10 | public bool FailBuildOnFailure { get; set; }
11 |
12 | public string RunName { get; set; }
13 |
14 | public string AssemblyFileSpec { get; set; }
15 |
16 | public ExecutionPlatformType ExecutionPlatform { get; set; }
17 |
18 | public string RunSettingsFileName { get; set; }
19 |
20 | public RunSettingsType TypeRunSettings { get; set; }
21 |
22 | public string TestCaseFilter { get; set; }
23 |
24 | public static implicit operator ExportedAgileTestPlatformSpec(AgileTestPlatformSpec agilespec)
25 | {
26 | ExportedAgileTestPlatformSpec expAgileSpec = new ExportedAgileTestPlatformSpec();
27 | expAgileSpec.AssemblyFileSpec = agilespec.AssemblyFileSpec;
28 | expAgileSpec.ExecutionPlatform = agilespec.ExecutionPlatform;
29 | expAgileSpec.FailBuildOnFailure = agilespec.FailBuildOnFailure;
30 | expAgileSpec.RunName = agilespec.RunName;
31 | expAgileSpec.TestCaseFilter = agilespec.TestCaseFilter;
32 | expAgileSpec.RunSettingsFileName = agilespec.RunSettingsForTestRun.ServerRunSettingsFile;
33 | expAgileSpec.TypeRunSettings = agilespec.RunSettingsForTestRun.TypeRunSettings;
34 | return expAgileSpec;
35 | }
36 |
37 | public static implicit operator AgileTestPlatformSpec(ExportedAgileTestPlatformSpec exportedAgileTestPlatformSpec)
38 | {
39 | AgileTestPlatformSpec agileSpec = new AgileTestPlatformSpec();
40 | agileSpec.AssemblyFileSpec = exportedAgileTestPlatformSpec.AssemblyFileSpec;
41 | agileSpec.ExecutionPlatform = exportedAgileTestPlatformSpec.ExecutionPlatform;
42 | agileSpec.FailBuildOnFailure = exportedAgileTestPlatformSpec.FailBuildOnFailure;
43 | agileSpec.RunName = exportedAgileTestPlatformSpec.RunName;
44 | agileSpec.TestCaseFilter = exportedAgileTestPlatformSpec.TestCaseFilter;
45 | agileSpec.RunSettingsForTestRun = new RunSettings();
46 | agileSpec.RunSettingsForTestRun.ServerRunSettingsFile = exportedAgileTestPlatformSpec.RunSettingsFileName;
47 | agileSpec.RunSettingsForTestRun.TypeRunSettings = exportedAgileTestPlatformSpec.TypeRunSettings;
48 | return agileSpec;
49 | }
50 | }
51 | }
52 |
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.Repository/ExportedBuildDefinition.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace TfsBuildManager.Repository
5 | {
6 | using System.Collections.Generic;
7 | using Microsoft.TeamFoundation.Build.Client;
8 | using Microsoft.TeamFoundation.Build.Common;
9 | using Microsoft.TeamFoundation.Build.Workflow;
10 | using Microsoft.TeamFoundation.Build.Workflow.Activities;
11 |
12 | public class ExportedBuildDefinition
13 | {
14 | public ExportedBuildDefinition()
15 | {
16 | this.BuildReasons = new Dictionary();
17 | this.IntegerParameters = new Dictionary();
18 | this.BuildVerbosities = new Dictionary();
19 | }
20 |
21 | public string Name { get; set; }
22 |
23 | public string Description { get; set; }
24 |
25 | public ContinuousIntegrationType ContinuousIntegrationType { get; set; }
26 |
27 | public string BuildController { get; set; }
28 |
29 | public List AgileTestSpecs { get; set; }
30 |
31 | public StringList ProjectsToBuild { get; set; }
32 |
33 | public PlatformConfigurationList ConfigurationsToBuild { get; set; }
34 |
35 | public DefinitionQueueStatus QueueStatus { get; set; }
36 |
37 | public string ProcessTemplate { get; set; }
38 |
39 | public string DefaultDropLocation { get; set; }
40 |
41 | public AgentSettingsBuildParameter TfvcAgentSettings { get; set; }
42 |
43 | public BuildParameter GitAgentSettings { get; set; }
44 |
45 | public List Schedules { get; set; }
46 |
47 | public int ContinuousIntegrationQuietPeriod { get; set; }
48 |
49 | public List SourceProviders { get; set; }
50 |
51 | public List Mappings { get; set; }
52 |
53 | public Dictionary TestParameters { get; set; }
54 |
55 | public List RetentionPolicyList { get; set; }
56 |
57 | public IDictionary ProcessParameters { get; set; }
58 |
59 | public IDictionary BuildReasons { get; private set; }
60 |
61 | public IDictionary IntegerParameters { get; private set; }
62 |
63 | public IDictionary BuildVerbosities { get; private set; }
64 | }
65 | }
66 |
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.Repository/ExportedIBuildDefinitionSourceProvider.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace TfsBuildManager.Repository
5 | {
6 | using System.Collections.Generic;
7 | using Microsoft.TeamFoundation.Build.Client;
8 |
9 | public class ExportedIBuildDefinitionSourceProvider : IBuildDefinitionSourceProvider
10 | {
11 | public string Name { get; set; }
12 |
13 | public DefinitionTriggerType SupportedTriggerTypes { get; set; }
14 |
15 | public IDictionary Fields { get; set; }
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.Repository/ExportedIRetentionPolicy.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace TfsBuildManager.Repository
5 | {
6 | using Microsoft.TeamFoundation.Build.Client;
7 |
8 | public class ExportedIRetentionPolicy : IRetentionPolicy
9 | {
10 | public IBuildDefinition BuildDefinition { get; set; }
11 |
12 | public BuildReason BuildReason { get; set; }
13 |
14 | public BuildStatus BuildStatus { get; set; }
15 |
16 | public int NumberToKeep { get; set; }
17 |
18 | public DeleteOptions DeleteOptions { get; set; }
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.Repository/ExportedISchedule.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace TfsBuildManager.Repository
5 | {
6 | using System;
7 | using Microsoft.TeamFoundation.Build.Client;
8 |
9 | public class ExportedISchedule : ISchedule
10 | {
11 | public IBuildDefinition BuildDefinition { get; private set; }
12 |
13 | public ScheduleType Type { get; private set; }
14 |
15 | public int StartTime { get; set; }
16 |
17 | public ScheduleDays DaysToBuild { get; set; }
18 |
19 | public TimeZoneInfo TimeZone { get; set; }
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.Repository/ExportedIWorkspaceMapping.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace TfsBuildManager.Repository
5 | {
6 | using Microsoft.TeamFoundation.Build.Client;
7 |
8 | public class ExportedIWorkspaceMapping : IWorkspaceMapping
9 | {
10 | public WorkspaceMappingType MappingType { get; set; }
11 |
12 | public string LocalItem { get; set; }
13 |
14 | public string ServerItem { get; set; }
15 |
16 | public WorkspaceMappingDepth Depth { get; set; }
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.Repository/ITfsContext.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace TfsBuildManager.Repository
5 | {
6 | using System;
7 | using Microsoft.TeamFoundation.Build.Client;
8 |
9 | public interface ITfsContext
10 | {
11 | event EventHandler ProjectChanged;
12 |
13 | string SelectedProject { get; }
14 |
15 | string ActiveConnection { get; }
16 |
17 | void ShowBuild(Uri buildUri);
18 |
19 | void EditBuildDefinition(Uri buildDefinition);
20 |
21 | void ShowControllerManager();
22 |
23 | void RemapWorkspaces(IBuildDefinition buildDefinition);
24 | }
25 | }
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.Repository/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | using System.Reflection;
5 |
6 | [assembly: AssemblyTitle("TFSBuildManager.Repository")]
7 |
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.Repository/TfsBuildManager.Repository.csproj.vspscc:
--------------------------------------------------------------------------------
1 | ""
2 | {
3 | "FILE_VERSION" = "9237"
4 | "ENLISTMENT_CHOICE" = "NEVER"
5 | "PROJECT_FILE_RELATIVE_PATH" = ""
6 | "NUMBER_OF_EXCLUDED_FILES" = "0"
7 | "ORIGINAL_PROJECT_FILE_PATH" = ""
8 | "NUMBER_OF_NESTED_PROJECTS" = "0"
9 | "SOURCE_CONTROL_SETTINGS_PROVIDER" = "PROVIDER"
10 | }
11 |
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.Repository/Transformers/ExportedProcessParameterTransformer.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace TfsBuildManager.Repository.Transformers
5 | {
6 | using System;
7 | using System.Collections.Generic;
8 | using System.Linq;
9 | using Microsoft.TeamFoundation.Build.Common;
10 | using Microsoft.TeamFoundation.Build.Workflow.Activities;
11 | using Newtonsoft.Json;
12 | using Newtonsoft.Json.Linq;
13 |
14 | public static class ExportedProcessParameterTransformer
15 | {
16 | public static TestSpecList ToSpecList(this List agileTestPlatformSpecs)
17 | {
18 | TestSpecList tsl = new TestSpecList();
19 | tsl.AddRange(agileTestPlatformSpecs.Select(aitem => (TestSpec)aitem));
20 | return tsl;
21 | }
22 |
23 | public static object ProcessParameterDeserializer(string[] parameterSpec)
24 | {
25 | string paramKey = parameterSpec[0], paramValue = parameterSpec[1];
26 | switch (paramKey)
27 | {
28 | case "BuildSettings":
29 | var buildSettings = JsonConvert.DeserializeObject(paramValue);
30 | return new BuildSettings
31 | {
32 | ProjectsToBuild = ((JArray)buildSettings.ProjectsToBuild).ToObject(),
33 | PlatformConfigurations = ((JArray)buildSettings.ConfigurationsToBuild).ToObject()
34 | };
35 |
36 | case "AgentSettings":
37 | var agentSettings = JsonConvert.DeserializeObject(paramValue);
38 | if (agentSettings.TfvcAgentSettings != null)
39 | {
40 | AgentSettingsBuildParameter tfvcAgentSettings = ((JObject)agentSettings.TfvcAgentSettings).ToObject();
41 | return (AgentSettings)tfvcAgentSettings;
42 | }
43 |
44 | if (agentSettings.GitAgentSettings != null)
45 | {
46 | return ((JObject)agentSettings.GitAgentSettings).ToObject();
47 | }
48 |
49 | throw new InvalidOperationException(paramKey + " isn't supported for the specified value. Try { \"TfvcAgentSettings\": {your settings} } or { \"GitAgentSettings\": {your settings}");
50 |
51 | case "TestSpecs":
52 | goto case "AgileTestSpecs";
53 | case "AgileTestSpecs":
54 | return JsonConvert.DeserializeObject>(paramValue).ToSpecList();
55 |
56 | default:
57 | return paramValue;
58 | }
59 | }
60 | }
61 | }
62 |
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.Repository/VersionControlTypeEnum.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 |
5 | namespace TfsBuildManager.Repository
6 | {
7 | public enum VersionControlType
8 | {
9 | ///
10 | /// Team foundation version control
11 | ///
12 | Tfvc = 0,
13 |
14 | ///
15 | /// Git version control
16 | ///
17 | Git = 1
18 | }
19 | }
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.Repository/app.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.Repository/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.WordDocumentGenerator.Client/Entities/Build.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace WordDocumentGenerator.Client.Entities
5 | {
6 | using System;
7 |
8 | public class Build
9 | {
10 | public string BuildNumber { get; set; }
11 |
12 | public string BuildState { get; set; }
13 |
14 | public string BuildReason { get; set; }
15 |
16 | public string BuildQuality { get; set; }
17 |
18 | public string BuildRequestedBy { get; set; }
19 |
20 | public string BuildDefinition { get; set; }
21 |
22 | public string BuildTeamProject { get; set; }
23 |
24 | public string BuildStartTime { get; set; }
25 |
26 | public string BuildEndTime { get; set; }
27 |
28 | public string BuildTotalExecutionTimeInSeconds { get; set; }
29 |
30 | public string BuildController { get; set; }
31 |
32 | public string BuildCompletedNoOfDaysAgo { get; set; }
33 |
34 | public Uri BuildUri { get; set; }
35 |
36 | public string BuildRetainIndefinitely { get; set; }
37 |
38 | public string BuildDropLocation { get; set; }
39 |
40 | public string BuildIsDeleted { get; set; }
41 |
42 | public string BuildSourceGetVersion { get; set; }
43 |
44 | public string BuildShelvesetName { get; set; }
45 |
46 | public string BuildLabelName { get; set; }
47 |
48 | public string BuildLogLocation { get; set; }
49 |
50 | public string BuildLastChangedOn { get; set; }
51 |
52 | public string BuildLastModifiedNoOfDaysAgo { get; set; }
53 |
54 | public string BuildLastChangedBy { get; set; }
55 |
56 | public string BuildTestStatus { get; set; }
57 | }
58 | }
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.WordDocumentGenerator.Client/Entities/BuildConfiguration.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace WordDocumentGenerator.Client.Entities
5 | {
6 | using System.Collections.Generic;
7 |
8 | public class BuildConfiguration
9 | {
10 | public string BuildConfigFlavor { get; set; }
11 |
12 | public string BuildConfigPlatform { get; set; }
13 |
14 | public string BuildConfigTotalErrors { get; set; }
15 |
16 | public string BuildConfigTotalWarnings { get; set; }
17 | }
18 | }
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.WordDocumentGenerator.Client/Entities/BuildConfigurationSolution.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace WordDocumentGenerator.Client.Entities
5 | {
6 | public class BuildConfigurationSolution
7 | {
8 | public string BuildRootNodeSolutionServerPath { get; set; }
9 |
10 | public string BuildRootNodeErrorCount { get; set; }
11 |
12 | public string BuildRootNodeWarningCount { get; set; }
13 |
14 | public string BuildRootNodeLogFile { get; set; }
15 | }
16 | }
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.WordDocumentGenerator.Client/Entities/BuildDetail.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace WordDocumentGenerator.Client.Entities
5 | {
6 | using System.Collections.Generic;
7 |
8 | public class BuildDetail
9 | {
10 | public DocumentDetail DocumentDetail { get; set; }
11 |
12 | public Build Build { get; set; }
13 |
14 | [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2227:CollectionPropertiesShouldBeReadOnly", Justification = "Don't have a fix for this just now")]
15 | public IList BuildConfigurations { get; set; }
16 |
17 | [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2227:CollectionPropertiesShouldBeReadOnly", Justification = "Don't have a fix for this just now")]
18 | public IList BuildConfigurationSolutions { get; set; }
19 |
20 | [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2227:CollectionPropertiesShouldBeReadOnly", Justification = "Don't have a fix for this just now")]
21 | public IList WorkItems { get; set; }
22 |
23 | public string WorkItemIntroduction { get; set; }
24 |
25 | public string ChangesetTotalCount { get; set; }
26 |
27 | [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2227:CollectionPropertiesShouldBeReadOnly", Justification = "Don't have a fix for this just now")]
28 | public IList Changesets { get; set; }
29 |
30 | [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2227:CollectionPropertiesShouldBeReadOnly", Justification = "Don't have a fix for this just now")]
31 | public IList ChangesetChangeDetails { get; set; }
32 |
33 | public TestResult TestResult { get; set; }
34 |
35 | [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2227:CollectionPropertiesShouldBeReadOnly", Justification = "Don't have a fix for this just now")]
36 | public IList TestResultPassedItems { get; set; }
37 |
38 | [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2227:CollectionPropertiesShouldBeReadOnly", Justification = "Don't have a fix for this just now")]
39 | public IList TestResultFailedItems { get; set; }
40 |
41 | [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2227:CollectionPropertiesShouldBeReadOnly", Justification = "Don't have a fix for this just now")]
42 | public IList TestResultInconclusiveItems { get; set; }
43 | }
44 | }
45 |
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.WordDocumentGenerator.Client/Entities/Changeset.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace WordDocumentGenerator.Client.Entities
5 | {
6 | using System;
7 |
8 | public class Changeset
9 | {
10 | public string ChangesetId { get; set; }
11 |
12 | public string ChangesetComment { get; set; }
13 |
14 | public string ChangesetCommittedBy { get; set; }
15 |
16 | public string ChangesetCommittedOn { get; set; }
17 |
18 | public Uri ChangesetUri { get; set; }
19 | }
20 | }
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.WordDocumentGenerator.Client/Entities/ChangesetChangeDetail.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace WordDocumentGenerator.Client.Entities
5 | {
6 | using System.Collections.Generic;
7 |
8 | public class ChangesetChangeDetail
9 | {
10 | public string ChangesetChangeId { get; set; }
11 |
12 | [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2227:CollectionPropertiesShouldBeReadOnly", Justification = "Don't have a fix for this just now")]
13 | public IList ChangesetChangeServerPaths { get; set; }
14 | }
15 | }
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.WordDocumentGenerator.Client/Entities/DocumentDetail.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace WordDocumentGenerator.Client.Entities
5 | {
6 | public class DocumentDetail
7 | {
8 | public string Title { get; set; }
9 |
10 | public string CreatedBy { get; set; }
11 |
12 | public string CreatedOn { get; set; }
13 | }
14 | }
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.WordDocumentGenerator.Client/Entities/Item.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace WordDocumentGenerator.Client.Entities
5 | {
6 | using System;
7 |
8 | public class Item
9 | {
10 | private Guid id = Guid.Empty;
11 | private string name = string.Empty;
12 |
13 | public Guid Id
14 | {
15 | get
16 | {
17 | return this.id;
18 | }
19 |
20 | set
21 | {
22 | this.id = value;
23 | }
24 | }
25 |
26 | public string Name
27 | {
28 | get
29 | {
30 | return this.name;
31 | }
32 |
33 | set
34 | {
35 | this.name = value;
36 | }
37 | }
38 | }
39 | }
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.WordDocumentGenerator.Client/Entities/TestResult.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace WordDocumentGenerator.Client.Entities
5 | {
6 | public class TestResult
7 | {
8 | public string TestResultId { get; set; }
9 |
10 | public string TestResultTitle { get; set; }
11 |
12 | public string TestResultStatus { get; set; }
13 |
14 | public string TestResultTotalTest { get; set; }
15 |
16 | public string TestResultTotalTestCompleted { get; set; }
17 |
18 | public string TestResultTotalTestPassed { get; set; }
19 |
20 | public string TestResultTotalTestFailed { get; set; }
21 |
22 | public string TestResultTotalTestPassRate { get; set; }
23 |
24 | public string TestResultTotalTestInconclusive { get; set; }
25 |
26 | public string TestResultIsAutomated { get; set; }
27 | }
28 | }
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.WordDocumentGenerator.Client/Entities/TestResultFailedItem.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace WordDocumentGenerator.Client.Entities
5 | {
6 | public class TestResultFailedItem
7 | {
8 | public string TestResultFailedListTitle { get; set; }
9 |
10 | public string TestResultFailedListStatus { get; set; }
11 |
12 | public string TestResultFailedListReason { get; set; }
13 | }
14 | }
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.WordDocumentGenerator.Client/Entities/TestResultInconclusiveItem.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace WordDocumentGenerator.Client.Entities
5 | {
6 | public class TestResultInconclusiveItem
7 | {
8 | public string TestResultInconclusiveListTitle { get; set; }
9 |
10 | public string TestResultInconclusiveListStatus { get; set; }
11 | }
12 | }
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.WordDocumentGenerator.Client/Entities/TestResultPassedItem.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace WordDocumentGenerator.Client.Entities
5 | {
6 | public class TestResultPassedItem
7 | {
8 | public string TestResultPassedListTitle { get; set; }
9 |
10 | public string TestResultPassedListStatus { get; set; }
11 | }
12 | }
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.WordDocumentGenerator.Client/Entities/WorkItem.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace WordDocumentGenerator.Client.Entities
5 | {
6 | using System;
7 |
8 | public class WorkItem
9 | {
10 | public string WorkItemId { get; set; }
11 |
12 | public string WorkItemTitle { get; set; }
13 |
14 | public string WorkItemState { get; set; }
15 |
16 | public string WorkItemType { get; set; }
17 |
18 | public string WorkItemAssignedTo { get; set; }
19 |
20 | public Uri WorkItemUri { get; set; }
21 |
22 | public string WorkItemIterationPath { get; set; }
23 |
24 | public string WorkItemAreaPath { get; set; }
25 | }
26 | }
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.WordDocumentGenerator.Client/GlobalSuppressions.cs:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TfsBuildManager.WordDocumentGenerator.Client/GlobalSuppressions.cs
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.WordDocumentGenerator.Client/Graphics/ChangeConnection.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TfsBuildManager.WordDocumentGenerator.Client/Graphics/ChangeConnection.png
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.WordDocumentGenerator.Client/Graphics/Changeset.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TfsBuildManager.WordDocumentGenerator.Client/Graphics/Changeset.png
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.WordDocumentGenerator.Client/Graphics/Failed.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TfsBuildManager.WordDocumentGenerator.Client/Graphics/Failed.jpg
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.WordDocumentGenerator.Client/Graphics/Lock.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TfsBuildManager.WordDocumentGenerator.Client/Graphics/Lock.png
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.WordDocumentGenerator.Client/Graphics/PartiallySucceeded.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TfsBuildManager.WordDocumentGenerator.Client/Graphics/PartiallySucceeded.png
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.WordDocumentGenerator.Client/Graphics/Stopped.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TfsBuildManager.WordDocumentGenerator.Client/Graphics/Stopped.png
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.WordDocumentGenerator.Client/Graphics/Succeeded.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TfsBuildManager.WordDocumentGenerator.Client/Graphics/Succeeded.jpg
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.WordDocumentGenerator.Client/Graphics/TestSuite.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TfsBuildManager.WordDocumentGenerator.Client/Graphics/TestSuite.png
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.WordDocumentGenerator.Client/Graphics/Unlock.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TfsBuildManager.WordDocumentGenerator.Client/Graphics/Unlock.png
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.WordDocumentGenerator.Client/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | using System;
5 | using System.Reflection;
6 | using System.Windows;
7 |
8 | [assembly: AssemblyTitle("WordDocumentGenerator.Client")]
9 | [assembly: CLSCompliant(true)]
10 |
11 | [assembly: ThemeInfo(
12 | ResourceDictionaryLocation.None, // where theme specific resource dictionaries are located (used if a resource is not found in the page, or application resource dictionaries)
13 | ResourceDictionaryLocation.SourceAssembly // where the generic resource dictionary is located (used if a resource is not found in the page, app, or any theme specific resource dictionaries)
14 | )]
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.WordDocumentGenerator.Client/Properties/CodeAnalysis.Dictionary.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Changeset
6 | Changesets
7 | Tfs
8 | TFS
9 |
10 |
11 | StyleCop
12 | SourceFiles
13 |
14 |
15 | Stylecop
16 | Sourcefiles
17 |
18 |
21 |
22 |
23 |
24 | AWS
25 | SSH
26 |
27 |
28 |
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.WordDocumentGenerator.Client/Properties/Key.snk:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TfsBuildManager.WordDocumentGenerator.Client/Properties/Key.snk
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.WordDocumentGenerator.Client/Templates/BuildTemplateContent.docx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TfsBuildManager.WordDocumentGenerator.Client/Templates/BuildTemplateContent.docx
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.WordDocumentGenerator.Client/Templates/BuildTemplateCover.docx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TfsBuildManager.WordDocumentGenerator.Client/Templates/BuildTemplateCover.docx
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.WordDocumentGenerator.Client/WordDocumentGenerator.Client.csproj.vspscc:
--------------------------------------------------------------------------------
1 | ""
2 | {
3 | "FILE_VERSION" = "9237"
4 | "ENLISTMENT_CHOICE" = "NEVER"
5 | "PROJECT_FILE_RELATIVE_PATH" = ""
6 | "NUMBER_OF_EXCLUDED_FILES" = "0"
7 | "ORIGINAL_PROJECT_FILE_PATH" = ""
8 | "NUMBER_OF_NESTED_PROJECTS" = "0"
9 | "SOURCE_CONTROL_SETTINGS_PROVIDER" = "PROVIDER"
10 | }
11 |
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.WordDocumentGenerator.Client/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.WordDocumentGenerator.Library/ContentControlXmlMetadata.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace WordDocumentGenerator.Library
5 | {
6 | ///
7 | /// This class is used only for generic document generators that generate based on Xml, XPath and data bound content controls(optional)
8 | ///
9 | public class ContentControlXmlMetadata
10 | {
11 | public string PlaceholderName { get; set; }
12 |
13 | public PlaceholderType PlaceholderType { get; set; }
14 |
15 | public string ControlTagXPath { get; set; }
16 |
17 | public string ControlValueXPath { get; set; }
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.WordDocumentGenerator.Library/DocumentGenerationInfo.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace WordDocumentGenerator.Library
5 | {
6 | using System;
7 | using System.Collections.Generic;
8 |
9 | public class DocumentGenerationInfo
10 | {
11 | ///
12 | /// Namespace Uri for CustomXML part
13 | ///
14 | [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2211:NonConstantFieldsShouldNotBeVisible", Justification = "Don't have a fix for this just now")]
15 | public static Uri NamespaceUri = new Uri(@"http://schemas.WordDocumentGenerator.com/DocumentGeneration");
16 |
17 | ///
18 | /// Gets or sets the place holder tag to type collection.
19 | ///
20 | ///
21 | /// The place holder tag to type collection.
22 | ///
23 | [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2227:CollectionPropertiesShouldBeReadOnly", Justification = "Don't have a fix for this just now")]
24 | public Dictionary PlaceholderTagToTypeCollection { get; set; }
25 |
26 | ///
27 | /// Gets or sets the metadata.
28 | ///
29 | ///
30 | /// The metadata.
31 | ///
32 | public DocumentMetadata Metadata { get; set; }
33 |
34 | ///
35 | /// Gets or sets the template data.
36 | ///
37 | ///
38 | /// The template data.
39 | ///
40 | [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Performance", "CA1819:PropertiesShouldNotReturnArrays", Justification = "Don't have a fix for this just now")]
41 | public byte[] TemplateData { get; set; }
42 |
43 | ///
44 | /// Gets or sets the data context.
45 | ///
46 | ///
47 | /// The data context.
48 | ///
49 | public object DataContext { get; set; }
50 |
51 | ///
52 | /// Gets or sets a value indicating whether this instance is data bound controls.
53 | ///
54 | ///
55 | /// true if this instance is data bound controls; otherwise, false.
56 | ///
57 | public bool IsDataBoundControls { get; set; }
58 | }
59 | }
60 |
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.WordDocumentGenerator.Library/DocumentMetadata.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace WordDocumentGenerator.Library
5 | {
6 | ///
7 | /// Defines the metadata for a Word document
8 | ///
9 | public class DocumentMetadata
10 | {
11 | #region Members
12 |
13 | ///
14 | /// Gets or sets the type of the document.
15 | ///
16 | ///
17 | /// The type of the document.
18 | ///
19 | public string DocumentType { get; set; }
20 |
21 | ///
22 | /// Gets or sets the document version.
23 | ///
24 | ///
25 | /// The document version.
26 | ///
27 | public string DocumentVersion { get; set; }
28 |
29 | #endregion
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.WordDocumentGenerator.Library/NodeType.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace WordDocumentGenerator.Library
5 | {
6 | ///
7 | /// Defines the type of the Node
8 | ///
9 | public enum NodeType
10 | {
11 | ///
12 | /// None
13 | ///
14 | None = 0,
15 |
16 | ///
17 | /// Attribute
18 | ///
19 | Attribute = 1,
20 |
21 | ///
22 | /// Element
23 | ///
24 | Element = 2
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.WordDocumentGenerator.Library/OpenXmlElementDataContext.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace WordDocumentGenerator.Library
5 | {
6 | using DocumentFormat.OpenXml;
7 |
8 | ///
9 | /// OpenXml element and data context
10 | ///
11 | public class OpenXmlElementDataContext
12 | {
13 | ///
14 | /// Gets or sets the element.
15 | ///
16 | ///
17 | /// The element.
18 | ///
19 | public OpenXmlElement Element { get; set; }
20 |
21 | ///
22 | /// Gets or sets the data context.
23 | ///
24 | ///
25 | /// The data context.
26 | ///
27 | public object DataContext { get; set; }
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.WordDocumentGenerator.Library/PlaceholderType.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | namespace WordDocumentGenerator.Library
5 | {
6 | ///
7 | /// Defines the type of the PlaceHolder
8 | ///
9 | public enum PlaceholderType
10 | {
11 | ///
12 | /// None
13 | ///
14 | None = 0,
15 |
16 | ///
17 | /// Recursive
18 | ///
19 | Recursive = 1,
20 |
21 | ///
22 | /// NonRecursive
23 | ///
24 | NonRecursive = 2,
25 |
26 | ///
27 | /// Ignore
28 | ///
29 | Ignore = 3,
30 |
31 | ///
32 | /// Container
33 | ///
34 | Container = 4,
35 |
36 | ///
37 | /// Picture Container
38 | ///
39 | PictureContainer = 5
40 | }
41 | }
42 |
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.WordDocumentGenerator.Library/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------
2 | // (c) https://github.com/tfsbuildextensions/BuildManager. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.
3 | //-----------------------------------------------------------------------
4 | using System;
5 | using System.Reflection;
6 | using System.Windows;
7 |
8 | [assembly: AssemblyTitle("WordDocumentGenerator.Library")]
9 | [assembly: CLSCompliant(true)]
10 |
11 | [assembly: ThemeInfo(
12 | ResourceDictionaryLocation.None, // where theme specific resource dictionaries are located (used if a resource is not found in the page, or application resource dictionaries)
13 | ResourceDictionaryLocation.SourceAssembly // where the generic resource dictionary is located (used if a resource is not found in the page, app, or any theme specific resource dictionaries)
14 | )]
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.WordDocumentGenerator.Library/Properties/CodeAnalysis.Dictionary.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Changeset
6 | Changesets
7 | Tfs
8 | TFS
9 |
10 |
11 | StyleCop
12 | SourceFiles
13 |
14 |
15 | Stylecop
16 | Sourcefiles
17 |
18 |
21 |
22 |
23 |
24 | AWS
25 | SSH
26 |
27 |
28 |
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.WordDocumentGenerator.Library/Properties/Key.snk:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/TfsBuildManager.WordDocumentGenerator.Library/Properties/Key.snk
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.WordDocumentGenerator.Library/WordDocumentGenerator.Library.csproj.vspscc:
--------------------------------------------------------------------------------
1 | ""
2 | {
3 | "FILE_VERSION" = "9237"
4 | "ENLISTMENT_CHOICE" = "NEVER"
5 | "PROJECT_FILE_RELATIVE_PATH" = ""
6 | "NUMBER_OF_EXCLUDED_FILES" = "0"
7 | "ORIGINAL_PROJECT_FILE_PATH" = ""
8 | "NUMBER_OF_NESTED_PROJECTS" = "0"
9 | "SOURCE_CONTROL_SETTINGS_PROVIDER" = "PROVIDER"
10 | }
11 |
--------------------------------------------------------------------------------
/Manager/TfsBuildManager.WordDocumentGenerator.Library/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/Manager/VSSDK/Microsoft.VsSDK.Build.Tasks.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tfsbuildextensions/BuildManager/7b858a6c27e4af91dbd3c27b146b7f6e2814f787/Manager/VSSDK/Microsoft.VsSDK.Build.Tasks.dll
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | [](https://ci.appveyor.com/project/tfsbuildextensions/buildmanager)
2 |
3 |
4 | # Community TFS Build Manager
5 |
6 | ## Visual Studio Extensions
7 | VS 2010, 12, 13 and 15 extensions are in the [VS Gallery](https://marketplace.visualstudio.com/search?term=publisher%3A%22Community%20TFS%20Build%20Extensions%22&target=VS&sortBy=Relevance)
8 |
9 | ## Standalone
10 | 2013 executable can be found in [Releases](https://github.com/tfsbuildextensions/BuildManager/releases)
11 |
--------------------------------------------------------------------------------