X-Git-Url: https://code.consxy.com/gitweb/?a=blobdiff_plain;f=src%2Fmain%2Faws%2Faws.lisp;h=a6218dd4f6118efbc64c9a53f6428a2adc2496eb;hb=3f51764d1e808faae658768fd01e4fff87a5ab01;hp=2913d3244492dc5f9ca8c259c2ad4a8eff6c521b;hpb=92a8cc8928e1f5d6aa13708b35cb4551aa736a37;p=candle diff --git a/src/main/aws/aws.lisp b/src/main/aws/aws.lisp index 2913d32..a6218dd 100644 --- a/src/main/aws/aws.lisp +++ b/src/main/aws/aws.lisp @@ -26,7 +26,7 @@ (values-list retn)))) (defun start-shutdown-thread () - (format t "Starting AWS shutdown thread~%") + (log:info "Starting AWS shutdown thread") (sb-thread:make-thread (lambda () (loop @@ -42,20 +42,20 @@ :name "AWS Shutdown Thread")) (defmethod candle:shutdown-system ((job-system (eql :aws))) - (format t "Shutting down AWS box for exit~%") + (log:info "Shutting down AWS box for exit") ; If there's a job going, we need to wait for it to finish (sb-thread:with-mutex (*aws-mutex*)) (stop-aws-box)) (defun aws-command (cmd &rest args) (with-output-to-string (out) - (sb-ext:run-program - *aws-exec* - (append - (list "ec2" cmd) - args) - :output out - :error *error-output*))) + (sb-ext:run-program + *aws-exec* + (append + (list "ec2" cmd) + args) + :output out + :error *error-output*))) (defun describe-property (property) (read-from-string @@ -97,27 +97,35 @@ "--delete" "-e" (format nil "ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -i ~A" *aws-keyfile*) + "--exclude" + ".git" (candle:project-dir (candle:job-project job)) - (format nil "~A@~A:~A" *aws-username* (describe-property "PublicIpAddress") *remote-work-dir*))) + (format nil "~A@~A:~A/~A" *aws-username* + (describe-property "PublicIpAddress") + *remote-work-dir* + (candle:project-name (candle:job-project job))))) (let* ((out nil) (code nil)) - (setf out - (with-output-to-string (out-str) - (setf code - (sb-ext:process-exit-code - (sb-ext:run-program - *ssh-exec* - (list - "-o" - "StrictHostKeyChecking=no" - "-o" - "UserKnownHostsFile=/dev/null" - "-i" - *aws-keyfile* - (describe-property "PublicIpAddress") - (format nil "cd ~A ; ~A run" *remote-work-dir* *remote-candle-location*)) - :output out-str - :error out-str - :wait t))))) - (values (zerop code) out))) + (setf out + (with-output-to-string (out-str) + (setf code + (sb-ext:process-exit-code + (sb-ext:run-program + *ssh-exec* + (list + "-o" + "StrictHostKeyChecking=no" + "-o" + "UserKnownHostsFile=/dev/null" + "-i" + *aws-keyfile* + (describe-property "PublicIpAddress") + (format nil "cd ~A/~A ; ~A run --env aws" + *remote-work-dir* + (candle:project-name (candle:job-project job)) + *remote-candle-location*)) + :output out-str + :error out-str + :wait t))))) + (values (zerop code) out)))