Guest User

Untitled

a guest
Jan 21st, 2018
60
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.74 KB | None | 0 0
  1. (ns core
  2. (:use [pallet core compute]
  3. [pallet.phase :only [phase-fn]]
  4. [pallet.action.exec-script :only [exec-script]]))
  5.  
  6. (def c2 (compute-service-from-config-file :appapp))
  7. (def n2 (nodes c2))
  8.  
  9.  
  10. (def pa-node-spec
  11. (node-spec
  12. :image nil))
  13.  
  14. (def pa-server-spec
  15. (server-spec
  16. :phases {:configure (phase-fn
  17. (exec-script
  18. (touch hello)))}))
  19.  
  20. (def pa-group-spec
  21. (group-spec "jasontest" :node-spec pa-node-spec))
  22.  
  23. #_ (lift pa-group-spec :compute c2 :phase :configure)
  24.  
  25. (ns pallet.compute.appapp
  26. (:require
  27. [clojure.java.io :as io]
  28. [clojure.string :as string]
  29. [clojure.tools.logging :as logging]
  30. [pallet.action-plan :as action-plan]
  31. [pallet.blobstore :as blobstore]
  32. [pallet.common.filesystem :as filesystem]
  33. [pallet.compute :as compute]
  34. [pallet.compute.implementation :as implementation]
  35. [pallet.compute.jvm :as jvm]
  36. [pallet.environment :as environment]
  37. [pallet.execute :as execute]
  38. [pallet.utils :as utils]
  39. [pallet.futures :as futures]
  40. [pallet.script :as script]
  41. [pallet.stevedore :as stevedore]
  42. [pallet.utils :as utils]
  43. [slingshot.core :as slingshot]))
  44.  
  45. (defn foo [s]
  46. (def foo-s s)
  47. s
  48. )
  49.  
  50. #_ (keys foo-s)
  51. #_ (:selected-nodes foo-s)
  52. #_ (:groups foo-s)
  53.  
  54. (def env
  55. {
  56. :user (utils/make-user "jackson")
  57. :algorithms
  58. {:lift-fn pallet.core/sequential-lift
  59. ;;:lift-fn foo
  60. ;;:vmfest {:create-nodes-fn pallet.compute.vmfest/parallel-create-nodes}
  61. ;;:converge-fn pallet.core/parallel-adjust-node-counts
  62. :converge-fn nil
  63. }})
  64.  
  65. (deftype AppAppNode
  66. []
  67. pallet.compute/Node
  68. (ssh-port [node] 22)
  69. (primary-ip [node] "10.35.10.118")
  70. (private-ip [node] "10.35.10.118")
  71. (is-64bit? [node] true)
  72. (group-name [node] "jasontest")
  73. (hostname [node] "smfd-akg-19-sr3.devel.twitter.com")
  74. (os-family [node] :debian)
  75. (os-version [node] "10.5")
  76. (running? [node] true)
  77. (terminated? [node] false)
  78. (id [node] "smfd-akg-19-sr3.devel.twitter.com"))
  79.  
  80. (deftype AppAppService
  81. []
  82. pallet.compute/ComputeService
  83. (nodes [compute] [(AppAppNode.)])
  84. (run-nodes [compute group-spec node-count user init-script]
  85. (println "run-nodes"))
  86. (reboot [compute nodes] )
  87. (boot-if-down [compute nodes])
  88. (shutdown-node [compute node user])
  89. (shutdown [compute nodes user])
  90. (ensure-os-family [compute-service group] group)
  91. (destroy-nodes-in-group [compute group-name])
  92. (destroy-node [compute node])
  93. (images [compute])
  94. (close [compute])
  95.  
  96. pallet.environment.Environment
  97. (environment [_] env)
  98. )
  99.  
  100.  
  101. ;;;; Compute service
  102. (defmethod implementation/service :appapp
  103. [_ _]
  104. (AppAppService.))
Add Comment
Please, Sign In to add comment