Esempio n. 1
0
 public DeploymentActivity(DeploymentActivityResourceTypes resourceType, String resourceId, DeploymentActivityTaskTypes taskType)
 {
     RowKey           = DateTime.UtcNow.ToInverseTicksRowKey();
     PartitionKey     = resourceId;
     ResourceType     = resourceType;
     Type             = taskType;
     EnqueueTimeStamp = DateTime.UtcNow.ToJSONString();
     RetryCount       = 1;
     Status           = DeploymentActivityStatus.Queued;
 }
Esempio n. 2
0
 protected virtual Task <InvokeResult> PerformActionAsync(DeploymentInstance instance, EntityHeader org, EntityHeader user, DeploymentActivityTaskTypes activityType, int timeoutSeconds = 120)
 {
     return(Task.FromResult <InvokeResult>(InvokeResult.Success));
 }
Esempio n. 3
0
 private InvokeResult CanTransitionToState(DeploymentHost host, DeploymentInstance instance, DeploymentActivityTaskTypes taskType, EntityHeader org, EntityHeader user)
 {
     return(InvokeResult.Success);
 }
Esempio n. 4
0
        private async Task <InvokeResult> PerformActionAsync(DeploymentInstance instance, EntityHeader org, EntityHeader user, DeploymentActivityTaskTypes activityType, int timeoutSeconds = 120)
        {
            var timeout = DateTime.UtcNow.Add(TimeSpan.FromSeconds(timeoutSeconds));

            await AuthorizeAsync(instance, AuthorizeResult.AuthorizeActions.Perform, user, org, $"{activityType}Instance");

            await _deploymentActivityQueueManager.Enqueue(new DeploymentActivity(DeploymentActivityResourceTypes.Instance, instance.Id, activityType)
            {
                RequestedByUserId           = user.Id,
                RequestedByUserName         = user.Text,
                RequestedByOrganizationId   = org.Id,
                RequestedByOrganizationName = org.Text,
                TimeoutTimeStamp            = timeout.ToJSONString()
            });

            return(InvokeResult.Success);
        }