コード例 #1
0
        static void CreateJobs(ClusterLoadRepository repo, string poolName)
        {
            Task <IEnumerable <JobInstance> > tJobs;

            var J1 = new JobInstance()
            {
                id = Guid.NewGuid().ToString(), Nodes = 4, QueueName = poolName, SchedulerId = "124", Status = AutoScaling.Models.JobStatusEnum.Queued
            };

            repo.CreateJobInstanceAsync(J1).Wait();
            var J2 = new JobInstance()
            {
                id = Guid.NewGuid().ToString(), Nodes = 4, QueueName = poolName, SchedulerId = "127", Status = AutoScaling.Models.JobStatusEnum.Queued
            };

            repo.CreateJobInstanceAsync(J2).Wait();
            var J3 = new JobInstance()
            {
                id = Guid.NewGuid().ToString(), Nodes = 8, QueueName = poolName, SchedulerId = "130", Status = AutoScaling.Models.JobStatusEnum.Queued
            };

            repo.CreateJobInstanceAsync(J3).Wait();

            tJobs = repo.GetJobInstancesAsync(poolName);
            var jobs = tJobs.Result;

            foreach (var item in jobs)
            {
                Console.WriteLine($"{item.id} {item.Status}");
            }
        }
コード例 #2
0
        static void CreateClusterLoadData(string poolName)
        {
            var repo = new ClusterLoadRepository(_endpoint, _authKey, _database);

            repo.InitializeAsync().Wait();
            DeleteJobs(repo, poolName);
            DeleteNodes(repo, poolName);
            CreateJobs(repo, poolName);
            CreateNodes(repo, poolName);
        }
コード例 #3
0
        static void DeleteJobs(ClusterLoadRepository repo, string poolName)
        {
            Task <IEnumerable <JobInstance> > tJobs;

            tJobs = repo.GetJobInstancesAsync(poolName);
            var jobs = tJobs.Result;

            // clean up
            foreach (var item in jobs)
            {
                repo.DeleteJobInstanceAsync(item.id).Wait();
            }
        }
コード例 #4
0
        static void DeleteNodes(ClusterLoadRepository repo, string poolName)
        {
            Task <IEnumerable <VMInstance> > tVms;

            tVms = repo.GetVMInstancesAsync(poolName);
            var vms = tVms.Result;

            // clean up
            foreach (var item in vms)
            {
                repo.DeleteVMInstanceAsync(item.id).Wait();
            }
        }
コード例 #5
0
        static void CreateClusterConfig()
        {
            var repo = new ClusterLoadRepository(_endpoint, _authKey, _database);

            repo.InitializeAsync().Wait();

            var config = new ConfigPool();

            config.SubscriptionId = "";
            config.ClientId       = "";
            config.ClientSecret   = "";
            config.TenantId       = "";
            config.RgVmssName.Add("pinta-nodes,pinta00");
            config.RgVmssName.Add("pinta-nodes,a900");

            repo.CreateConfigPoolAsync(config).Wait();
        }
コード例 #6
0
        static void CreateNodes(ClusterLoadRepository repo, string poolName)
        {
            Task <IEnumerable <VMInstance> > tVms;

            var vm1 = new VMInstance()
            {
                id = Guid.NewGuid().ToString(), Name = "pinta00s2000000", PoolName = poolName, Status = VMInstanceStatusEnum.Running, JobStatus = VMJobStatusEnum.Free
            };

            repo.CreateVMInstanceAsync(vm1).Wait();
            var vm2 = new VMInstance()
            {
                id = Guid.NewGuid().ToString(), Name = "pinta00s2000001", PoolName = poolName, Status = VMInstanceStatusEnum.Running, JobStatus = VMJobStatusEnum.Free
            };

            repo.CreateVMInstanceAsync(vm2).Wait();
            var vm3 = new VMInstance()
            {
                id = Guid.NewGuid().ToString(), Name = "pinta00s2000002", PoolName = poolName, Status = VMInstanceStatusEnum.Running, JobStatus = VMJobStatusEnum.Free
            };

            repo.CreateVMInstanceAsync(vm3).Wait();
            var vm4 = new VMInstance()
            {
                id = Guid.NewGuid().ToString(), Name = "pinta00s2000004", PoolName = poolName, Status = VMInstanceStatusEnum.Running, JobStatus = VMJobStatusEnum.Free
            };

            repo.CreateVMInstanceAsync(vm4).Wait();

            tVms = repo.GetVMInstancesAsync(poolName);
            var vms = tVms.Result;

            foreach (var item in vms)
            {
                Console.WriteLine($"{item.id} {item.Status}");
            }
        }
コード例 #7
0
 public DocumentDBWatcher(string endpoint, string authKey, string databaseId)
 {
     _repo = new ClusterLoadRepository(endpoint, authKey, databaseId);
     _repo.InitializeAsync().Wait();
 }