<% file_name = File.join(File.expand_path(File.dirname(__FILE__)), "..", "logs", "deploy-" + @timestamp + ".log") content_loaded = false if File.exists?(file_name) file = File.new(file_name, "r") content = "" while (line = file.gets) content += line end file.close content_loaded = true else content = "Unable to locate deployment log with timestamp: " + @timestamp end step1 = content.include?("Generating public/private rsa key pair.") ? "Done" : "Pending" step2 = content.include?("Executing ssh-copy-id") ? "Done" : "Pending" if step1 == "Pending" and step2 == "Done" step1 = "Skipped" end step3 = content.include?("Head node successfully created") ? "Done" : "Pending" if step3 == "Done" if step1 == "Pending" step1 = "Skipped" end if step2 == "Pending" step2 = "Skipped" end end step4 = content.include?("AppController just started") ? "Done" : "Pending" step5 = content.include?("Your user account has been created successfully.") ? "Done" : "Pending" step6 = content.include?("Please wait for your app to start up") ? "Done" : "Pending" step7 = content.include?("The status of your AppScale instance is at the following URL") ? "Done" : "Pending" if step7 == "Done" and step6 == "Pending" step6 = "Skipped" end status = "In Progress" if step7 == "Done" status = "Finished" elsif content.include?("__ERROR__") status = "Failed" elsif !content_loaded status = "Invalid Request (Unable to Locate the Specified Log)" step1 = step2 = step3 = step4 = step5 = step6 = step7 = "?" end progress = "0%" if step7 == "Done" progress = "100%" elsif step6 == "Done" progress = "90%" elsif step5 == "Done" progress = "70%" elsif step4 == "Done" progress = "40%" elsif step3 == "Done" progress = "30%" elsif step2 == "Done" progress = "20%" elsif step1 == "Done" progress = "10%" end %> <% if status != "Failed" and !status.include?("Invalid Request") %> <% end %>

Status: <%= status %>

Deployment Stages

Generate cryptographic keys (Xen/KVM Only) <%=step1%>
Distribute keys among the nodes (Xen/KVM Only) <%=step2%>
Start the head node <%=step3%>
Start AppController on head node <%=step4%>
Create AppScale administrator account <%=step5%>
Deploy target application <%=step6%>
Finalize deployment <%=step7%>

Cloud Deployment Log - <%= @timestamp %>