コード例 #1
0
        public ProcessTemplates(Uri collectionUri, ITfsCredentials tfsCredentials = null)
        {
            this._collectionUri = collectionUri;

            this._tfsTeamProjectCollection = TfsTeamProjectCollectionFactory.GetTeamProjectCollection(this._collectionUri, tfsCredentials);

            this._teamProjectCollectionService = this._tfsTeamProjectCollection.GetConfigurationServer().GetService<ITeamProjectCollectionService>();
            this._teamProjectCollection = this._teamProjectCollectionService.GetCollection(this._tfsTeamProjectCollection.InstanceId);
        }
コード例 #2
0
 public TeamProjectCollections(Uri tfsUri, ITfsCredentials tfsCredentials)
 {
     this._tfsUri = tfsUri;
     this._tfsCredentials = tfsCredentials;
     this._tfsTeamProjectCollection = TfsTeamProjectCollectionFactory.GetTeamProjectCollection(tfsUri, this._tfsCredentials);
     this._tfsConfigurationServer = this._tfsTeamProjectCollection.GetConfigurationServer();
     this._registration = (IRegistration)this._tfsTeamProjectCollection.GetService(typeof(IRegistration));
     this._teamProjectCollectionService = this._tfsConfigurationServer.GetService<ITeamProjectCollectionService>();
 }
コード例 #3
0
        public static void GetAllCollections(string tfsCollectionUri)
        {
            Uri configurationServerUri = new Uri(tfsCollectionUri);
            TfsConfigurationServer configurationServer = TfsConfigurationServerFactory.GetConfigurationServer(configurationServerUri);

            ITeamProjectCollectionService tpcService = configurationServer.GetService <ITeamProjectCollectionService>();

            var tpc = tpcService.GetCollections();
        }
コード例 #4
0
 public TeamProjectCollections(Uri tfsUri, ITfsCredentials tfsCredentials)
 {
     this._tfsUri                       = tfsUri;
     this._tfsCredentials               = tfsCredentials;
     this._tfsTeamProjectCollection     = TfsTeamProjectCollectionFactory.GetTeamProjectCollection(tfsUri, this._tfsCredentials);
     this._tfsConfigurationServer       = this._tfsTeamProjectCollection.GetConfigurationServer();
     this._registration                 = (IRegistration)this._tfsTeamProjectCollection.GetService(typeof(IRegistration));
     this._teamProjectCollectionService = this._tfsConfigurationServer.GetService <ITeamProjectCollectionService>();
 }
コード例 #5
0
        public ProcessTemplates(Uri collectionUri, ITfsCredentials tfsCredentials = null)
        {
            this._collectionUri = collectionUri;

            this._tfsTeamProjectCollection = TfsTeamProjectCollectionFactory.GetTeamProjectCollection(this._collectionUri, tfsCredentials);

            this._teamProjectCollectionService = this._tfsTeamProjectCollection.GetConfigurationServer().GetService <ITeamProjectCollectionService>();
            this._teamProjectCollection        = this._teamProjectCollectionService.GetCollection(this._tfsTeamProjectCollection.InstanceId);
        }
コード例 #6
0
        public virtual void Initialize(TfsConfigurationServer tfsConfigurationServer)
        {
            _teamFoundationServerCollections = null;

            if (tfsConfigurationServer != null)
            {
                TfsConfigurationServerInstance = tfsConfigurationServer;
                TfsCollectionService           = tfsConfigurationServer.GetService <ITeamProjectCollectionService>();
            }
        }
コード例 #7
0
        static void Main(string[] args)
        {
            string rootLogFolder = ConfigurationManager.AppSettings["RootLogFolder"].ToString();

            try
            {
                Console.WriteLine("*** Scanning all Team Projects in all Team Project Collections ***");

                string tfsRootUrl = ConfigurationManager.AppSettings["TfsRootUrl"].ToString();
                Console.WriteLine("Tfs Root Url: " + tfsRootUrl);

                Uri tfsConfigurationServerUri = new Uri(tfsRootUrl);
                TfsConfigurationServer        configurationServer = TfsConfigurationServerFactory.GetConfigurationServer(tfsConfigurationServerUri);
                ITeamProjectCollectionService tpcService          = configurationServer.GetService <ITeamProjectCollectionService>();

                string configDbConnectionString = ConfigurationManager.AppSettings["ConfigDBConnectionString"].ToString();
                Console.WriteLine("Config DB Connectionstring: " + configDbConnectionString);

                using (IVssDeploymentServiceHost deploymentServiceHost = CreateDeploymentServiceHost(configDbConnectionString))
                {
                    foreach (TeamProjectCollection tpc in tpcService.GetCollections().OrderBy(tpc => tpc.Name))
                    {
                        string nameOfLogFile           = "UpgradeTeamProjectFeatures-" + tpc.Name + ".txt";
                        string fullPathOfLogFile       = System.IO.Path.Combine(rootLogFolder, nameOfLogFile);
                        System.IO.StreamWriter logFile = new System.IO.StreamWriter(fullPathOfLogFile);

                        logFile.WriteLine(String.Format("*** scanning Team Projects in TPC {0} ***", tpc.Name));
                        logFile.WriteLine();

                        string tpcUrl = tfsRootUrl + "/" + tpc.Name;
                        TfsTeamProjectCollection tfsCollection = new TfsTeamProjectCollection(new Uri(tpcUrl));

                        WorkItemStore witStore = tfsCollection.GetService <WorkItemStore>();
                        foreach (Microsoft.TeamFoundation.WorkItemTracking.Client.Project project in witStore.Projects)
                        {
                            Console.WriteLine("Team Project " + project.Name);
                            logFile.WriteLine(">> Team Project " + project.Name);
                            RunFeatureEnablement(deploymentServiceHost, project, tfsCollection.InstanceId, logFile);
                            logFile.WriteLine();
                        }

                        logFile.Close();
                    }
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex);
            }
        }
コード例 #8
0
ファイル: TFSService.cs プロジェクト: ericogr/TFSTemplateTool
        public IList <Collection> GetCollections()
        {
            Uri tfsUri = new Uri(this.Url);
            TfsConfigurationServer        configuracao = TfsConfigurationServerFactory.GetConfigurationServer(tfsUri);
            ITeamProjectCollectionService tpcService   = configuracao.GetService <ITeamProjectCollectionService>();

            IList <TeamProjectCollection> tfsCollections = tpcService.GetCollections();
            IList <Collection>            collections    = new List <Collection>();

            foreach (TeamProjectCollection tpc in tfsCollections)
            {
                collections.Add(new Collection(tpc.Name));
            }

            return(collections);
        }
コード例 #9
0
ファイル: Program.cs プロジェクト: kulcsar/alm-syncusers
        private static List <User> GetAllTfsValidUsers(string tfsServerUrl)
        {
            List <User> tfsUsers = new List <User>();

            TfsConfigurationServer configServer = Connect(tfsServerUrl);

            // Get all Team Project Collections
            ITeamProjectCollectionService tpcService = configServer.GetService <ITeamProjectCollectionService>();

            foreach (TeamProjectCollection tpc in tpcService.GetCollections())
            {
                TfsTeamProjectCollection teamProjectCollection = configServer.GetTeamProjectCollection(tpc.Id);
                teamProjectCollection.EnsureAuthenticated();

                var identityManagementService = teamProjectCollection.GetService <IIdentityManagementService>();
                // Get members of Project Collection Valid Users group
                var collectionWideValidUsers = identityManagementService.ReadIdentity(IdentitySearchFactor.DisplayName,
                                                                                      "Project Collection Valid Users",
                                                                                      MembershipQuery.Expanded,
                                                                                      ReadIdentityOptions.None);
                var validMembers = identityManagementService.ReadIdentities(collectionWideValidUsers.Members,
                                                                            MembershipQuery.Expanded,
                                                                            ReadIdentityOptions.ExtendedProperties);
                var members = validMembers
                              .Where(m => !m.IsContainer &&
                                     m.Descriptor.IdentityType != "Microsoft.TeamFoundation.UnauthenticatedIdentity" &&
                                     m.Descriptor.IdentityType != "Microsoft.TeamFoundation.ServiceIdentity")
                              .Select(m => new User {
                    DisplayName = m.DisplayName, AccountName = m.UniqueName
                })
                              .ToList();

                // Collect members
                foreach (var m in members)
                {
                    if (!tfsUsers.Any(t => t.AccountName == m.AccountName))
                    {
                        tfsUsers.Add(m);
                    }
                }
            }

            tfsUsers = tfsUsers.OrderBy(m => m.DisplayName).ToList();

            return(tfsUsers);
        }
コード例 #10
0
        public static ICollection <BuildServiceHostDefinition> GetAllBuildServiceHosts(TfsConfigurationServer configurationServer)
        {
            List <BuildServiceHostDefinition> buildServiceHostCollection = new List <BuildServiceHostDefinition>();
            ITeamProjectCollectionService     collectionService          = configurationServer.GetService <ITeamProjectCollectionService>();

            if (collectionService != null)
            {
                IList <TeamProjectCollection> collections = collectionService.GetCollections();
                foreach (TeamProjectCollection collection in collections)
                {
                    if (collection.State == TeamFoundationServiceHostStatus.Started)
                    {
                        TfsTeamProjectCollection tpc = configurationServer.GetTeamProjectCollection(collection.Id);
                        buildServiceHostCollection.AddRange(BuildServerHelper.GetAllBuildServiceHosts(tpc));
                    }
                }
            }
            return(buildServiceHostCollection);
        }
コード例 #11
0
        public static ICollection <ProjectDefinition> GetAllProjects(TfsConfigurationServer configurationServer)
        {
            List <ProjectDefinition>      projectList       = new List <ProjectDefinition>();
            ITeamProjectCollectionService collectionService = configurationServer.GetService <ITeamProjectCollectionService>();

            if (collectionService != null)
            {
                IList <TeamProjectCollection> collections = collectionService.GetCollections();
                foreach (TeamProjectCollection collection in collections)
                {
                    if (collection.State == TeamFoundationServiceHostStatus.Started)
                    {
                        TfsTeamProjectCollection tpc = configurationServer.GetTeamProjectCollection(collection.Id);
                        VersionControlServer     vcs = tpc.GetService <VersionControlServer>();
                        if (vcs != null)
                        {
                            TeamProject[] projects = vcs.GetAllTeamProjects(true);
                            foreach (TeamProject project in projects)
                            {
                                string name = project.Name;
                                IEnumerable <Changeset> changesets = vcs.QueryHistory(project.ServerItem, VersionSpec.Latest, 0, RecursionType.None, String.Empty, null, VersionSpec.Latest, int.MaxValue, true, false, false, true).OfType <Changeset>();
                                Changeset firstChangeset           = changesets.FirstOrDefault();
                                if (firstChangeset != null)
                                {
                                    DateTime creationDate = firstChangeset.CreationDate;

                                    ProjectDefinition projectDefinition = new ProjectDefinition();
                                    projectDefinition.Name            = project.Name;
                                    projectDefinition.CollectionName  = collection.Name;
                                    projectDefinition.UtcCreationDate = creationDate.ToUniversalTime();
                                    projectList.Add(projectDefinition);
                                }
                            }
                        }
                    }
                }
            }
            return(projectList);
        }