houston-core 0.5.6 → 0.6.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +94 -69
- data/app/adapters/houston/adapters/deployment/engineyard.rb +4 -3
- data/app/adapters/houston/adapters/version_control/git_adapter.rb +36 -42
- data/app/adapters/houston/adapters/version_control/git_adapter/github_repo.rb +2 -2
- data/app/adapters/houston/adapters/version_control/git_adapter/remote_repo.rb +23 -11
- data/app/adapters/houston/adapters/version_control/git_adapter/repo.rb +18 -8
- data/app/adapters/houston/adapters/version_control/null_repo.rb +8 -0
- data/app/assets/javascripts/core/handlebars_helpers.coffee +3 -3
- data/app/assets/stylesheets/application/github_repos.scss +77 -0
- data/app/assets/stylesheets/application/navigation.scss +2 -0
- data/app/assets/stylesheets/application/pull_requests.scss +44 -58
- data/app/assets/stylesheets/core/avatars.scss +5 -0
- data/app/assets/stylesheets/core/colors.scss.erb +10 -7
- data/app/concerns/commit_synchronizer.rb +3 -0
- data/app/controllers/github/pulls_controller.rb +12 -0
- data/app/controllers/project_tests_controller.rb +3 -3
- data/app/controllers/projects_controller.rb +45 -1
- data/app/controllers/releases_controller.rb +42 -26
- data/app/helpers/application_helper.rb +8 -0
- data/app/helpers/avatar_helper.rb +2 -2
- data/app/helpers/commit_helper.rb +2 -2
- data/app/helpers/oembed_helper.rb +8 -0
- data/app/helpers/project_helper.rb +4 -5
- data/app/helpers/release_helper.rb +11 -0
- data/app/helpers/timeline_helper.rb +1 -1
- data/app/helpers/url_helper.rb +0 -18
- data/app/interactors/cache_key_dependencies.rb +28 -0
- data/app/jobs/sync_all_tickets_job.rb +1 -0
- data/app/mailers/view_mailer.rb +0 -1
- data/app/models/commit.rb +1 -1
- data/app/models/github/pull_request.rb +82 -26
- data/app/models/github/pull_request_event.rb +2 -2
- data/app/models/milestone.rb +1 -0
- data/app/models/project.rb +14 -0
- data/app/models/project_dependencies.rb +5 -3
- data/app/models/task.rb +1 -1
- data/app/models/user.rb +41 -0
- data/app/views/commits/show.html.erb +9 -1
- data/app/views/github/pulls/index.html.erb +102 -0
- data/app/views/project_notification/new_release.html.erb +6 -0
- data/app/views/project_tickets/index.xls.erb +0 -7
- data/app/views/projects/_form.html.erb +29 -17
- data/app/views/projects/index.html.erb +3 -3
- data/app/views/projects/new_from_github.html.erb +67 -0
- data/app/views/releases/_commits.html.erb +1 -1
- data/app/views/releases/show.html.erb +9 -0
- data/app/views/users/_form.html.erb +35 -19
- data/config/application.rb +12 -0
- data/config/initializers/mime_types.rb +1 -0
- data/config/routes.rb +17 -3
- data/db/migrate/20151201042126_require_projects_to_have_name_and_slug.rb +6 -0
- data/db/migrate/20151202005557_add_head_sha_to_projects.rb +24 -0
- data/db/migrate/20151202011812_require_projects_to_have_color.rb +13 -0
- data/db/migrate/20151205204922_require_project_slugs_to_be_unique.rb +5 -0
- data/db/migrate/20151205214647_add_avatar_url_to_pull_requests.rb +5 -0
- data/db/migrate/20151209004458_add_json_labels_to_pull_requests.rb +5 -0
- data/db/migrate/20151209030113_add_timestamps_to_pull_requests.rb +6 -0
- data/db/structure.sql +31 -5
- data/houston.gemspec +7 -7
- data/lib/configuration.rb +3 -2
- data/lib/houston/version.rb +1 -1
- data/lib/rack/oembed.rb +23 -0
- data/templates/new-instance/config/jobs/cache_key_dependencies.rb +3 -0
- data/templates/new-instance/config/triggers/tests/slack_when_analyzed.rb +1 -4
- data/templates/new-instance/config/triggers/tests/slack_when_completed.rb +1 -1
- data/templates/new-instance/lib/slack_helpers.rb +1 -1
- data/test/integration/ticket_tasks_api_test.rb +1 -1
- data/test/unit/adapters/git_adapter_test.rb +29 -8
- data/test/unit/adapters/version_control_adapters_api_test.rb +2 -0
- data/test/unit/controllers/hooks_controller_test.rb +4 -4
- data/test/unit/models/commit_test.rb +2 -2
- data/test/unit/models/project_test.rb +2 -2
- data/test/unit/models/pull_request_test.rb +9 -4
- data/test/unit/models/task_test.rb +1 -1
- data/test/unit/models/ticket_test.rb +1 -1
- metadata +31 -16
@@ -5,7 +5,7 @@ Houston.config do
|
|
5
5
|
next if test_run.branch.nil?
|
6
6
|
next if test_run.aborted?
|
7
7
|
|
8
|
-
nickname =
|
8
|
+
nickname = test_run.user.slack_username if test_run.user
|
9
9
|
project_slug = test_run.project.slug
|
10
10
|
project_channel = "##{project_slug}"
|
11
11
|
branch = "#{project_slug}/#{test_run.branch}"
|
@@ -1,6 +1,6 @@
|
|
1
1
|
def slack_send_message_to(message, channel, options={})
|
2
2
|
if channel.is_a?(User)
|
3
|
-
channel =
|
3
|
+
channel = channel.slack_username
|
4
4
|
|
5
5
|
unless channel
|
6
6
|
Rails.logger.info "\e[34m[slack:say] I don't know the Slack username for #{channel.email}\e[0m"
|
@@ -60,7 +60,7 @@ class TicketTasksApiTest < ActionDispatch::IntegrationTest
|
|
60
60
|
private
|
61
61
|
|
62
62
|
def tasks_path
|
63
|
-
"api/v1/projects/#{project.slug}/tickets/by_number/#{ticket.number}/tasks"
|
63
|
+
"/api/v1/projects/#{project.slug}/tickets/by_number/#{ticket.number}/tasks"
|
64
64
|
end
|
65
65
|
|
66
66
|
def env
|
@@ -106,19 +106,24 @@ STR
|
|
106
106
|
end
|
107
107
|
|
108
108
|
|
109
|
+
|
109
110
|
test "should return a NullRepo if you give it an invalid path" do
|
110
|
-
|
111
|
-
|
112
|
-
|
111
|
+
repo = GitAdapter.build Project.new, Rails.root.join("nope")
|
112
|
+
assert_equal Houston::Adapters::VersionControl::NullRepo, repo
|
113
|
+
end
|
114
|
+
|
115
|
+
test "should return a NullRepo if you give it an invalid endpoint" do
|
116
|
+
repo = GitAdapter.build Project.new, "git@github.com:houston/nope.git"
|
117
|
+
assert_equal Houston::Adapters::VersionControl::NullRepo, repo
|
113
118
|
end
|
114
119
|
|
115
120
|
|
116
121
|
|
117
122
|
test "RemoteRepo should try pulling changes when a commit is not found" do
|
118
|
-
|
123
|
+
repo = new_remote_repo
|
124
|
+
connection = repo.send :connection
|
119
125
|
stub(connection).lookup { |*args| raise CommitNotFound }
|
120
126
|
stub(connection).close
|
121
|
-
repo = GitAdapter::RemoteRepo.new(connection, :location)
|
122
127
|
mock(repo).pull!(async: false)
|
123
128
|
|
124
129
|
assert_raises CommitNotFound do
|
@@ -128,20 +133,20 @@ STR
|
|
128
133
|
|
129
134
|
|
130
135
|
|
131
|
-
context "
|
136
|
+
context "clone!" do
|
132
137
|
setup do
|
133
138
|
system "rm -rf #{Shellwords.escape temporary_path}"
|
134
139
|
end
|
135
140
|
|
136
141
|
should "work with a remote repo using the SSH transport" do
|
137
142
|
remote_path = "git@github.com:houston/fixture.git"
|
138
|
-
GitAdapter.clone!
|
143
|
+
GitAdapter::RemoteRepo.new(temporary_path, remote_path).clone!
|
139
144
|
assert File.exists?(fetch_head)
|
140
145
|
end
|
141
146
|
|
142
147
|
should "work with a remote repo using the Git transport" do
|
143
148
|
remote_path = "git://github.com/houston/fixture.git"
|
144
|
-
GitAdapter.clone!
|
149
|
+
GitAdapter::RemoteRepo.new(temporary_path, remote_path).clone!
|
145
150
|
assert File.exists?(fetch_head)
|
146
151
|
end
|
147
152
|
end
|
@@ -177,6 +182,18 @@ STR
|
|
177
182
|
|
178
183
|
|
179
184
|
|
185
|
+
context "Given a GitHub repo, it" do
|
186
|
+
should "be able to identify the repo name" do
|
187
|
+
repo = GitAdapter::GithubRepo.new temporary_path, "git://github.com/houston/fixture.git"
|
188
|
+
assert_equal "houston/fixture", repo.repo_name
|
189
|
+
|
190
|
+
repo = GitAdapter::GithubRepo.new temporary_path, "git@github.com:houston/fixture.git"
|
191
|
+
assert_equal "houston/fixture", repo.repo_name
|
192
|
+
end
|
193
|
+
end
|
194
|
+
|
195
|
+
|
196
|
+
|
180
197
|
private
|
181
198
|
|
182
199
|
def new_local_repo
|
@@ -187,6 +204,10 @@ private
|
|
187
204
|
GitAdapter.connect "git://github.com/houston/fixture.git", temporary_path
|
188
205
|
end
|
189
206
|
|
207
|
+
def github_repo
|
208
|
+
"git://github.com/houston/fixture.git"
|
209
|
+
end
|
210
|
+
|
190
211
|
def test_path
|
191
212
|
@test_path ||= Rails.root.join("test", "data", "bare_repo.git").to_s
|
192
213
|
end
|
@@ -26,6 +26,7 @@ class VersionControlAdatersApiTest < ActiveSupport::TestCase
|
|
26
26
|
assert_respond_to repo, :all_commits
|
27
27
|
assert_respond_to repo, :ancestors
|
28
28
|
assert_respond_to repo, :ancestors_until
|
29
|
+
assert_respond_to repo, :branch
|
29
30
|
assert_respond_to repo, :branches
|
30
31
|
assert_respond_to repo, :branches_at
|
31
32
|
assert_respond_to repo, :commits_between
|
@@ -33,6 +34,7 @@ class VersionControlAdatersApiTest < ActiveSupport::TestCase
|
|
33
34
|
assert_respond_to repo, :native_commit
|
34
35
|
assert_respond_to repo, :read_file
|
35
36
|
assert_respond_to repo, :refresh!
|
37
|
+
assert_respond_to repo, :exists?
|
36
38
|
end
|
37
39
|
end
|
38
40
|
|
@@ -40,18 +40,18 @@ class HooksControllerTest < ActionController::TestCase
|
|
40
40
|
pr = Object.new
|
41
41
|
stub(Github::PullRequest).upsert! { pr }
|
42
42
|
stub(pr).persisted? { true }
|
43
|
-
mock(pr).add_label!("new-label", as: "baxterthehacker")
|
43
|
+
mock(pr).add_label!({"name" => "new-label", "color" => "#445566"}, as: "baxterthehacker")
|
44
44
|
post :github, hook: github_pull_request_event_payload(action: "labeled",
|
45
|
-
label: {name
|
45
|
+
label: {"name" => "new-label", "color" => "#445566"})
|
46
46
|
end
|
47
47
|
|
48
48
|
should "remove a label to GitHub::PullRequest when the action is \"unlabeled\"" do
|
49
49
|
pr = Object.new
|
50
50
|
stub(Github::PullRequest).upsert! { pr }
|
51
51
|
stub(pr).persisted? { true }
|
52
|
-
mock(pr).remove_label!("removed-label", as: "baxterthehacker")
|
52
|
+
mock(pr).remove_label!({"name" => "removed-label", "color" => "#445566"}, as: "baxterthehacker")
|
53
53
|
post :github, hook: github_pull_request_event_payload(action: "unlabeled",
|
54
|
-
label: {name
|
54
|
+
label: {"name" => "removed-label", "color" => "#445566"})
|
55
55
|
end
|
56
56
|
end
|
57
57
|
|
@@ -178,9 +178,9 @@ class CommitTest < ActiveSupport::TestCase
|
|
178
178
|
assert_equal [], task.commits
|
179
179
|
end
|
180
180
|
|
181
|
-
should "trigger `
|
181
|
+
should "trigger `mark_committed!` on each task" do
|
182
182
|
commit = Commit.new params(message: "[skip] Hi [#378b]")
|
183
|
-
mock.instance_of(Task).
|
183
|
+
mock.instance_of(Task).mark_committed!(commit)
|
184
184
|
commit.save!
|
185
185
|
end
|
186
186
|
end
|
@@ -11,13 +11,13 @@ class ProjectTest < ActiveSupport::TestCase
|
|
11
11
|
should "validate version control parameters when a version control adapter is specified" do
|
12
12
|
project = Project.new(version_control_name: "Git", extended_attributes: {"git_location" => "/wrong/path"})
|
13
13
|
project.valid?
|
14
|
-
|
14
|
+
assert project.errors[:git_location].any?
|
15
15
|
end
|
16
16
|
|
17
17
|
should "not validate version control parameters if no adapter is specified" do
|
18
18
|
project = Project.new(version_control_name: "None", extended_attributes: {"git_location" => "/wrong/path"})
|
19
19
|
project.valid?
|
20
|
-
|
20
|
+
refute project.errors[:git_location].any?
|
21
21
|
end
|
22
22
|
end
|
23
23
|
|
@@ -5,6 +5,11 @@ class PullRequestTest < ActiveSupport::TestCase
|
|
5
5
|
attr_reader :project, :pull_request
|
6
6
|
|
7
7
|
|
8
|
+
def setup
|
9
|
+
stub(User).find_by_github_username { |*args| User.first }
|
10
|
+
end
|
11
|
+
|
12
|
+
|
8
13
|
context "Given GitHub API's description of a pull request" do
|
9
14
|
setup do
|
10
15
|
@project = Project.create!(
|
@@ -98,19 +103,19 @@ class PullRequestTest < ActiveSupport::TestCase
|
|
98
103
|
base_sha: "e0e4580f44317a084dd5142fef6b4144a4394819",
|
99
104
|
head_ref: "divergent-branch",
|
100
105
|
head_sha: "baa3ef218a40f23fe542f98d8b8e60a2e8e0bff0",
|
101
|
-
labels:
|
106
|
+
labels: [{"name" => "old-label"}])
|
102
107
|
end
|
103
108
|
|
104
109
|
context "#add_label!" do
|
105
110
|
should "add a label to the pull request" do
|
106
|
-
@pull_request.add_label! "new-label"
|
107
|
-
assert_equal
|
111
|
+
@pull_request.add_label!("name" => "new-label")
|
112
|
+
assert_equal [{"name" => "old-label"}, {"name" => "new-label"}], @pull_request.reload.labels
|
108
113
|
end
|
109
114
|
end
|
110
115
|
|
111
116
|
context "#remove_label!" do
|
112
117
|
should "remove a label from the pull request" do
|
113
|
-
@pull_request.remove_label! "old-label"
|
118
|
+
@pull_request.remove_label!("name" => "old-label")
|
114
119
|
assert_equal [], @pull_request.reload.labels
|
115
120
|
end
|
116
121
|
end
|
@@ -90,7 +90,7 @@ class TaskTest < ActiveSupport::TestCase
|
|
90
90
|
context "is committed, it" do
|
91
91
|
should "fire 'task:committed'" do
|
92
92
|
assert_triggered "task:committed" do
|
93
|
-
task.
|
93
|
+
task.mark_committed! Struct.new(:authored_at).new(time)
|
94
94
|
end
|
95
95
|
end
|
96
96
|
end
|
@@ -33,7 +33,7 @@ class TicketTest < ActiveSupport::TestCase
|
|
33
33
|
|
34
34
|
context "on a ticket that has been released" do
|
35
35
|
setup do
|
36
|
-
project
|
36
|
+
project.update_column :version_control_name, "Mock"
|
37
37
|
@ticket.update_column :first_release_at, 5.days.ago
|
38
38
|
@ticket.releases << Release.create!(user_id: 1, project: project)
|
39
39
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: houston-core
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.6.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Bob Lail
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-
|
11
|
+
date: 2015-12-14 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 4.
|
19
|
+
version: 4.2.5
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: 4.
|
26
|
+
version: 4.2.5
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: sprockets
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -128,42 +128,42 @@ dependencies:
|
|
128
128
|
requirements:
|
129
129
|
- - '='
|
130
130
|
- !ruby/object:Gem::Version
|
131
|
-
version: 3.0.
|
131
|
+
version: 3.0.1
|
132
132
|
type: :runtime
|
133
133
|
prerelease: false
|
134
134
|
version_requirements: !ruby/object:Gem::Requirement
|
135
135
|
requirements:
|
136
136
|
- - '='
|
137
137
|
- !ruby/object:Gem::Version
|
138
|
-
version: 3.0.
|
138
|
+
version: 3.0.1
|
139
139
|
- !ruby/object:Gem::Dependency
|
140
140
|
name: devise
|
141
141
|
requirement: !ruby/object:Gem::Requirement
|
142
142
|
requirements:
|
143
143
|
- - "~>"
|
144
144
|
- !ruby/object:Gem::Version
|
145
|
-
version: 3.
|
145
|
+
version: 3.5.0
|
146
146
|
type: :runtime
|
147
147
|
prerelease: false
|
148
148
|
version_requirements: !ruby/object:Gem::Requirement
|
149
149
|
requirements:
|
150
150
|
- - "~>"
|
151
151
|
- !ruby/object:Gem::Version
|
152
|
-
version: 3.
|
152
|
+
version: 3.5.0
|
153
153
|
- !ruby/object:Gem::Dependency
|
154
154
|
name: devise_invitable
|
155
155
|
requirement: !ruby/object:Gem::Requirement
|
156
156
|
requirements:
|
157
157
|
- - "~>"
|
158
158
|
- !ruby/object:Gem::Version
|
159
|
-
version: 1.
|
159
|
+
version: 1.5.3
|
160
160
|
type: :runtime
|
161
161
|
prerelease: false
|
162
162
|
version_requirements: !ruby/object:Gem::Requirement
|
163
163
|
requirements:
|
164
164
|
- - "~>"
|
165
165
|
- !ruby/object:Gem::Version
|
166
|
-
version: 1.
|
166
|
+
version: 1.5.3
|
167
167
|
- !ruby/object:Gem::Dependency
|
168
168
|
name: houston-devise_ldap_authenticatable
|
169
169
|
requirement: !ruby/object:Gem::Requirement
|
@@ -464,42 +464,42 @@ dependencies:
|
|
464
464
|
requirements:
|
465
465
|
- - "~>"
|
466
466
|
- !ruby/object:Gem::Version
|
467
|
-
version:
|
467
|
+
version: '5.0'
|
468
468
|
type: :runtime
|
469
469
|
prerelease: false
|
470
470
|
version_requirements: !ruby/object:Gem::Requirement
|
471
471
|
requirements:
|
472
472
|
- - "~>"
|
473
473
|
- !ruby/object:Gem::Version
|
474
|
-
version:
|
474
|
+
version: '5.0'
|
475
475
|
- !ruby/object:Gem::Dependency
|
476
476
|
name: uglifier
|
477
477
|
requirement: !ruby/object:Gem::Requirement
|
478
478
|
requirements:
|
479
479
|
- - ">="
|
480
480
|
- !ruby/object:Gem::Version
|
481
|
-
version:
|
481
|
+
version: 2.7.2
|
482
482
|
type: :runtime
|
483
483
|
prerelease: false
|
484
484
|
version_requirements: !ruby/object:Gem::Requirement
|
485
485
|
requirements:
|
486
486
|
- - ">="
|
487
487
|
- !ruby/object:Gem::Version
|
488
|
-
version:
|
488
|
+
version: 2.7.2
|
489
489
|
- !ruby/object:Gem::Dependency
|
490
490
|
name: coffee-rails
|
491
491
|
requirement: !ruby/object:Gem::Requirement
|
492
492
|
requirements:
|
493
493
|
- - "~>"
|
494
494
|
- !ruby/object:Gem::Version
|
495
|
-
version: 4.
|
495
|
+
version: 4.1.0
|
496
496
|
type: :runtime
|
497
497
|
prerelease: false
|
498
498
|
version_requirements: !ruby/object:Gem::Requirement
|
499
499
|
requirements:
|
500
500
|
- - "~>"
|
501
501
|
- !ruby/object:Gem::Version
|
502
|
-
version: 4.
|
502
|
+
version: 4.1.0
|
503
503
|
- !ruby/object:Gem::Dependency
|
504
504
|
name: rufus-scheduler
|
505
505
|
requirement: !ruby/object:Gem::Requirement
|
@@ -830,6 +830,7 @@ files:
|
|
830
830
|
- app/assets/stylesheets/application/forms.scss
|
831
831
|
- app/assets/stylesheets/application/freight_train.css.scss
|
832
832
|
- app/assets/stylesheets/application/full_screen.scss
|
833
|
+
- app/assets/stylesheets/application/github_repos.scss
|
833
834
|
- app/assets/stylesheets/application/infinite_scroll.scss
|
834
835
|
- app/assets/stylesheets/application/keyboard_shortcuts.scss
|
835
836
|
- app/assets/stylesheets/application/markdown.scss
|
@@ -918,6 +919,7 @@ files:
|
|
918
919
|
- app/controllers/commits_controller.rb
|
919
920
|
- app/controllers/concerns/.keep
|
920
921
|
- app/controllers/deploys_controller.rb
|
922
|
+
- app/controllers/github/pulls_controller.rb
|
921
923
|
- app/controllers/home_controller.rb
|
922
924
|
- app/controllers/hooks_controller.rb
|
923
925
|
- app/controllers/jobs_controller.rb
|
@@ -964,6 +966,7 @@ files:
|
|
964
966
|
- app/helpers/maintenance_light_helper.rb
|
965
967
|
- app/helpers/markdown_helper.rb
|
966
968
|
- app/helpers/navigation_helper.rb
|
969
|
+
- app/helpers/oembed_helper.rb
|
967
970
|
- app/helpers/project_helper.rb
|
968
971
|
- app/helpers/release_helper.rb
|
969
972
|
- app/helpers/score_card_helper.rb
|
@@ -975,6 +978,7 @@ files:
|
|
975
978
|
- app/helpers/url_helper.rb
|
976
979
|
- app/helpers/user_helper.rb
|
977
980
|
- app/helpers/version_helper.rb
|
981
|
+
- app/interactors/cache_key_dependencies.rb
|
978
982
|
- app/interactors/test_run_comparer.rb
|
979
983
|
- app/interactors/ticket_report.rb
|
980
984
|
- app/jobs/sync_all_tickets_job.rb
|
@@ -1080,6 +1084,7 @@ files:
|
|
1080
1084
|
- app/views/devise/registrations/new.html.erb
|
1081
1085
|
- app/views/devise/sessions/new.html.erb
|
1082
1086
|
- app/views/devise/unlocks/new.html.erb
|
1087
|
+
- app/views/github/pulls/index.html.erb
|
1083
1088
|
- app/views/home/index.html.erb
|
1084
1089
|
- app/views/jobs/show.html.erb
|
1085
1090
|
- app/views/layouts/_mobile_navigation.html.erb
|
@@ -1121,6 +1126,7 @@ files:
|
|
1121
1126
|
- app/views/projects/edit.html.erb
|
1122
1127
|
- app/views/projects/index.html.erb
|
1123
1128
|
- app/views/projects/new.html.erb
|
1129
|
+
- app/views/projects/new_from_github.html.erb
|
1124
1130
|
- app/views/releases/_antecedents.html.erb
|
1125
1131
|
- app/views/releases/_changelog.html.erb
|
1126
1132
|
- app/views/releases/_commits.html.erb
|
@@ -1379,6 +1385,13 @@ files:
|
|
1379
1385
|
- db/migrate/20151108221505_convert_pull_request_labels_to_array.rb
|
1380
1386
|
- db/migrate/20151108223154_sync_body_also_for_pull_requests.rb
|
1381
1387
|
- db/migrate/20151108233510_add_props_to_pull_requests.rb
|
1388
|
+
- db/migrate/20151201042126_require_projects_to_have_name_and_slug.rb
|
1389
|
+
- db/migrate/20151202005557_add_head_sha_to_projects.rb
|
1390
|
+
- db/migrate/20151202011812_require_projects_to_have_color.rb
|
1391
|
+
- db/migrate/20151205204922_require_project_slugs_to_be_unique.rb
|
1392
|
+
- db/migrate/20151205214647_add_avatar_url_to_pull_requests.rb
|
1393
|
+
- db/migrate/20151209004458_add_json_labels_to_pull_requests.rb
|
1394
|
+
- db/migrate/20151209030113_add_timestamps_to_pull_requests.rb
|
1382
1395
|
- db/seeds.rb
|
1383
1396
|
- db/structure.sql
|
1384
1397
|
- houston.gemspec
|
@@ -1397,6 +1410,7 @@ files:
|
|
1397
1410
|
- lib/houston_server.rb
|
1398
1411
|
- lib/parallel_enumerable.rb
|
1399
1412
|
- lib/patches/sprockets_output_path_for_assets.rb
|
1413
|
+
- lib/rack/oembed.rb
|
1400
1414
|
- lib/tasks/.gitkeep
|
1401
1415
|
- lib/tasks/.keep
|
1402
1416
|
- lib/tasks/keypair.rake
|
@@ -1442,6 +1456,7 @@ files:
|
|
1442
1456
|
- templates/new-instance/config/integrations/github.rb
|
1443
1457
|
- templates/new-instance/config/integrations/jenkins.rb
|
1444
1458
|
- templates/new-instance/config/integrations/ldap.rb
|
1459
|
+
- templates/new-instance/config/jobs/cache_key_dependencies.rb
|
1445
1460
|
- templates/new-instance/config/jobs/email_about_open_alerts.rb
|
1446
1461
|
- templates/new-instance/config/jobs/slack_reminders_about_alerts.rb
|
1447
1462
|
- templates/new-instance/config/jobs/sync_commits.rb
|