Class: Integrity::Project
- Includes:
- DataMapper::Resource, Helpers::Notifiers, Helpers::Push
- Defined in:
- lib/integrity/project.rb,
lib/integrity/project/push.rb,
lib/integrity/project/notifiers.rb
Defined Under Namespace
Modules: Helpers
Class Method Summary collapse
Instance Method Summary collapse
- #build(commit_identifier = "HEAD") ⇒ Object
- #human_readable_status ⇒ Object
- #last_commit ⇒ Object
- #previous_commits ⇒ Object
- #public=(flag) ⇒ Object
- #status ⇒ Object
Class Method Details
.only_public_unless(condition) ⇒ Object
30 31 32 33 34 35 36 |
# File 'lib/integrity/project.rb', line 30 def self.only_public_unless(condition) if condition all else all(:public => true) end end |
Instance Method Details
#build(commit_identifier = "HEAD") ⇒ Object
38 39 40 41 42 |
# File 'lib/integrity/project.rb', line 38 def build(commit_identifier="HEAD") commit_identifier = head_of_remote_repo if commit_identifier == "HEAD" commit = find_or_create_commit_with_identifier(commit_identifier) Build.queue(commit) end |
#human_readable_status ⇒ Object
56 57 58 |
# File 'lib/integrity/project.rb', line 56 def human_readable_status last_commit && last_commit.human_readable_status end |
#last_commit ⇒ Object
44 45 46 |
# File 'lib/integrity/project.rb', line 44 def last_commit commits.first(:project_id => id, :order => [:committed_at.desc]) end |
#previous_commits ⇒ Object
48 49 50 |
# File 'lib/integrity/project.rb', line 48 def previous_commits commits.all(:project_id => id, :order => [:committed_at.desc]).tap {|commits| commits.shift } end |
#public=(flag) ⇒ Object
60 61 62 63 64 65 |
# File 'lib/integrity/project.rb', line 60 def public=(flag) attribute_set(:public, case flag when "1", "0" then flag == "1" else !!flag end) end |
#status ⇒ Object
52 53 54 |
# File 'lib/integrity/project.rb', line 52 def status last_commit && last_commit.status end |