Module: Squared::Workspace
- Extended by:
- Common
- Defined in:
- lib/squared/workspace.rb,
lib/squared/workspace/repo.rb,
lib/squared/workspace/series.rb,
lib/squared/workspace/application.rb,
lib/squared/workspace/project/git.rb,
lib/squared/workspace/project/base.rb,
lib/squared/workspace/project/node.rb,
lib/squared/workspace/project/ruby.rb,
lib/squared/workspace/support/base.rb,
lib/squared/workspace/project/docker.rb,
lib/squared/workspace/project/python.rb,
lib/squared/workspace/support/variables.rb,
lib/squared/workspace/project/support/class.rb,
lib/squared/workspace/project/support/utils.rb,
lib/squared/workspace/project/support/optionpartition.rb
Defined Under Namespace
Modules: Git, Project, Repo, Support
Classes: Application, Series
Constant Summary
Constants included
from Common
Common::ARG, Common::PATH
Class Method Summary
collapse
Class Method Details
.expect(name) ⇒ Object
22
23
24
25
26
27
|
# File 'lib/squared/workspace.rb', line 22
def expect(name)
ret = project name
return ret if ret&.path&.directory? && !ret.path.empty?
raise NoMethodError, "project is not initialized (#{name})"
end
|
.project?(name) ⇒ Boolean
29
30
31
|
# File 'lib/squared/workspace.rb', line 29
def project?(name)
!!project(name)&.enabled?
end
|
.resolve(*args, base: '..') ⇒ Object
8
9
10
11
12
13
14
15
16
17
18
19
20
|
# File 'lib/squared/workspace.rb', line 8
def resolve(*args, base: '..')
values = __get__(:project).values
ret = args.map do |id|
if id.is_a?(Symbol)
project id
else
values.find { |proj| proj.name == id } ||
values.find { |proj| proj.project == id } ||
values.find { |proj| proj.path.to_s == File.expand_path(id, base) }
end
end
ret.size == 1 ? ret.first : ret
end
|