Its been a very slow road for me and coding the last few weeks. Between constant meetings and having to rebuild my home workstation (beta –> RC), I’m surprised I’ve got anything done.
AutoDeploy consists of internal services and a task is simply a container for the service definition and required attributes. the current services and completion % (total guess…there is no road-map so its pretty hard too tell)
Those listed with 80% function but have limited logging. Logging has been my biggest challenge. I want to ensure the logging (status, audit, etc) is available to the host program. AutoDeploy is only a dll and I’m having a hard time finding the best implementation to ensure that messages flow back to the host.
Without any more delay I present the current hotness…
1: var deployment = new Deployment();
2: deployment
3: .Named("PROJECTNAME")
4: .AtInterval(1)
5: .AddTask(
6: new FluentTask()
7: .Type(Task.TaskType.FolderMonitor)
8: .Source("http://REPO/tags/")
9: .Destination(@"D:\Temp\")
10: .Authentication()
11: .Credential(new NetworkCredential(@"UID","PASS"))
12: .Save()
13: )
14: .AddTask(
15: new FluentTask()
16: .Type(Task.TaskType.AspnetBuild)
17: .Save()
18: )
19: .AddTask(
20: new FluentTask()
21: .Type(Task.TaskType.FileCopy)
22: .Destination(@"\\SERVER_OR_LOCAL\Deployment")
23: .Save()
24: )
25: .AddCustomTask("WaitN")
26: .Save();
Changes of Note:
1: var _deploymentContainer = DeploymentContainer.GetInstance;
2: var deployment = new Deployment();
3: deployment.Name = "PROJECT";
4: deployment.Interval = 5;
5:
6: var monitorTask = new Task();
7: monitorTask.Type = Task.TaskType.FolderMonitor;
8: monitorTask.Source = "http://subversion/repo/tags/";
9: monitorTask.Destination = @"C:\Temp\";
10: monitorTask.Authentication.Credentials _
11: = new NetworkCredential(@"DOMAIN\PolerckyE", "PASSWORD");
12:
13: deployment.AddTask(monitorTask);
14:
15: var buildTask = new Task();
16: buildTask.Type = Task.TaskType.AspnetBuild;
17: deployment.AddTask(buildTask);
18:
19: var copyTask = new Task();
20: copyTask.Type = Task.TaskType.FileCopy;
21: copyTask.Destination = @"\\ServerName\path\";
22: deployment.AddTask(copyTask);
23:
24: deployment.AddCustomTask("WaitN");
25:
26: _deploymentContainer.AddDeployment(deployment);
Related posts: