public async Task Enqueue(DeploymentActivity deploymentActivity)
        {
            await _repo.AddDeploymentActivityAsync(deploymentActivity);

            var buffer    = Encoding.UTF8.GetBytes(deploymentActivity.RowKey);
            var eventData = new EventData(buffer);
            await _eventHubClient.SendAsync(eventData);
        }
Ejemplo n.º 2
0
        public async Task ShouldGetScheduledActivitiesIfScheudleExpires()
        {
            _deploymentSettings.Setup(dep => dep.DeploymentAdminTableStorage).Returns(new ConnectionSettings()
            {
                AccountId = Environment.GetEnvironmentVariable("TEST_AZURESTORAGE_ACCOUNTID", EnvironmentVariableTarget.User),
                AccessKey = Environment.GetEnvironmentVariable("TEST_AZURESTORAGE_ACCESSKEY", EnvironmentVariableTarget.User)
            });

            var repo = new DeploymentActivityRepo(_deploymentSettings.Object, _adminLogger.Object);

            var activity = new DeploymentActivity(DeploymentActivityResourceTypes.Instance, "someid", DeploymentActivityTaskTypes.ReloadSolution)
            {
                RowKey       = Guid.NewGuid().ToId(),
                Status       = DeploymentActivityStatus.Scheduled,
                ScheduledFor = DateTime.UtcNow.AddSeconds(-3).ToJSONString()
            };

            await repo.AddDeploymentActivityAsync(activity);

            var scheduledActivities = await repo.GetScheduledDeploymentActivitiesAsync();

            Assert.AreEqual(1, scheduledActivities.Where(act => act.RowKey == activity.RowKey).Count());
            await repo.RemoveDeploymentActivityAsync(activity);
        }
Ejemplo n.º 3
0
        public async Task ShouldGetScheduledActivitiesIfScheudleExpires()
        {
            _deploymentSettings.Setup(dep => dep.DeploymentAdminTableStorage).Returns(new ConnectionSettings()
            {
                AccountId = "nuviotdev",
                AccessKey = "Za6PpxUbXjXic8rhK3lbcWyUQyVY2NVsgXRRD1rVj2LAjXUnji5/ooJx7u0ob9cPKTkPu/woa74DBE6IVKsLQA=="
            });

            var repo = new DeploymentActivityRepo(_deploymentSettings.Object, _adminLogger.Object);

            var activity = new DeploymentActivity(DeploymentActivityResourceTypes.Instance, "someid", DeploymentActivityTaskTypes.ReloadSolution)
            {
                RowKey       = Guid.NewGuid().ToId(),
                Status       = DeploymentActivityStatus.Scheduled,
                ScheduledFor = DateTime.UtcNow.AddSeconds(-3).ToJSONString()
            };

            await repo.AddDeploymentActivityAsync(activity);

            var scheduledActivities = await repo.GetScheduledDeploymentActivitiesAsync();

            Assert.AreEqual(1, scheduledActivities.Where(act => act.RowKey == activity.RowKey).Count());
            await repo.RemoveDeploymentActivityAsync(activity);
        }