Class: Mortar::Project::Project
- Inherits:
-
Object
- Object
- Mortar::Project::Project
- Defined in:
- lib/mortar/project.rb
Instance Attribute Summary collapse
-
#name ⇒ Object
Returns the value of attribute name.
-
#remote ⇒ Object
Returns the value of attribute remote.
-
#root_path ⇒ Object
Returns the value of attribute root_path.
Class Method Summary collapse
Instance Method Summary collapse
- #controlscripts ⇒ Object
- #controlscripts_path ⇒ Object
- #embedded_project? ⇒ Boolean
-
#initialize(name, root_path, remote) ⇒ Project
constructor
A new instance of Project.
- #luigiscripts ⇒ Object
- #luigiscripts_path ⇒ Object
- #pigscripts ⇒ Object
- #pigscripts_path ⇒ Object
- #python_udfs ⇒ Object
- #python_udfs_path ⇒ Object
- #sparkjobs_path ⇒ Object
- #sparkscripts ⇒ Object
- #sparkscripts_path ⇒ Object
- #tmp_path ⇒ Object
Constructor Details
#initialize(name, root_path, remote) ⇒ Project
Returns a new instance of Project.
33 34 35 36 37 |
# File 'lib/mortar/project.rb', line 33 def initialize(name, root_path, remote) @name = name @root_path = root_path @remote = remote end |
Instance Attribute Details
#name ⇒ Object
Returns the value of attribute name.
29 30 31 |
# File 'lib/mortar/project.rb', line 29 def name @name end |
#remote ⇒ Object
Returns the value of attribute remote.
30 31 32 |
# File 'lib/mortar/project.rb', line 30 def remote @remote end |
#root_path ⇒ Object
Returns the value of attribute root_path.
31 32 33 |
# File 'lib/mortar/project.rb', line 31 def root_path @root_path end |
Class Method Details
.required_directories ⇒ Object
25 26 27 |
# File 'lib/mortar/project.rb', line 25 def self.required_directories ["macros", "pigscripts", "udfs"] end |
Instance Method Details
#controlscripts ⇒ Object
66 67 68 69 70 71 72 73 |
# File 'lib/mortar/project.rb', line 66 def controlscripts @controlscripts ||= ControlScripts.new( controlscripts_path, "controlscripts", ".py", :optional => true) @controlscripts end |
#controlscripts_path ⇒ Object
62 63 64 |
# File 'lib/mortar/project.rb', line 62 def controlscripts_path File.join(@root_path, "controlscripts") end |
#embedded_project? ⇒ Boolean
113 114 115 |
# File 'lib/mortar/project.rb', line 113 def () File.exists?(File.join(@root_path, ".mortar-project-remote")) end |
#luigiscripts ⇒ Object
79 80 81 82 83 84 85 86 |
# File 'lib/mortar/project.rb', line 79 def luigiscripts @luigiscripts ||= LuigiScripts.new( luigiscripts_path, "luigiscripts", ".py", :optional => true) @luigiscripts end |
#luigiscripts_path ⇒ Object
75 76 77 |
# File 'lib/mortar/project.rb', line 75 def luigiscripts_path File.join(@root_path, "luigiscripts") end |
#pigscripts ⇒ Object
54 55 56 57 58 59 60 |
# File 'lib/mortar/project.rb', line 54 def pigscripts @pigscripts ||= PigScripts.new( pigscripts_path, "pigscripts", ".pig") @pigscripts end |
#pigscripts_path ⇒ Object
50 51 52 |
# File 'lib/mortar/project.rb', line 50 def pigscripts_path File.join(@root_path, "pigscripts") end |
#python_udfs ⇒ Object
43 44 45 46 47 48 |
# File 'lib/mortar/project.rb', line 43 def python_udfs @python_udfs ||= PythonUDFs.new( python_udfs_path, "python", ".py") end |
#python_udfs_path ⇒ Object
39 40 41 |
# File 'lib/mortar/project.rb', line 39 def python_udfs_path File.join(@root_path, "udfs/python") end |
#sparkjobs_path ⇒ Object
88 89 90 |
# File 'lib/mortar/project.rb', line 88 def sparkjobs_path File.join(@root_path, "src/main/scala") end |
#sparkscripts ⇒ Object
96 97 98 99 100 101 102 103 |
# File 'lib/mortar/project.rb', line 96 def sparkscripts @sparkscripts ||= SparkScripts.new( sparkscripts_path, "sparkscripts", "", :optional => true) @sparkscripts end |
#sparkscripts_path ⇒ Object
92 93 94 |
# File 'lib/mortar/project.rb', line 92 def sparkscripts_path File.join(@root_path, "sparkscripts") end |
#tmp_path ⇒ Object
105 106 107 108 109 110 111 |
# File 'lib/mortar/project.rb', line 105 def tmp_path path = File.join(@root_path, "tmp") unless File.directory? path FileUtils.mkdir_p path end path end |