Skip to content
This repository was archived by the owner on Jun 2, 2021. It is now read-only.

Commit ba57325

Browse files
committed
Revert "Add deployable property to revisions endpoints."
This reverts commit 9accf60.
1 parent 7c556d6 commit ba57325

9 files changed

Lines changed: 8 additions & 81 deletions

File tree

app/fetchers/app_revisions_fetcher.rb

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,10 @@
11
module VCAP::CloudController
22
class AppRevisionsFetcher
33
def self.fetch(app, message)
4-
dataset = RevisionModel.where(Sequel[:revisions][:app_guid] => app.guid)
4+
dataset = RevisionModel.where(app_guid: app.guid)
55

66
if message.requested?(:versions)
7-
dataset = dataset.where(Sequel[:revisions][:app_guid] => app.guid, version: message.versions)
8-
end
9-
10-
if message.requested?(:deployable)
11-
dataset = dataset.join(:droplets, guid: :droplet_guid).where(Sequel[:revisions][:app_guid] => app.guid, Sequel[:droplets][:state] => DropletModel::STAGED_STATE)
7+
dataset = dataset.where(app_guid: app.guid, version: message.versions)
128
end
139

1410
if message.requested?(:label_selector)

app/messages/app_revisions_list_message.rb

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,15 +4,11 @@ module VCAP::CloudController
44
class AppRevisionsListMessage < MetadataListMessage
55
register_allowed_keys [
66
:versions,
7-
:deployable,
87
]
98

109
validates_with NoAdditionalParamsValidator
1110

1211
validates :versions, array: true, allow_nil: true
13-
validates :deployable,
14-
inclusion: { in: [true, false], message: 'must be a boolean' },
15-
allow_nil: true
1612

1713
def self.from_params(params)
1814
super(params, %w(versions))

app/presenters/v3/revision_presenter.rb

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -30,9 +30,7 @@ def to_hash
3030
metadata: {
3131
labels: hashified_labels(revision.labels),
3232
annotations: hashified_annotations(revision.annotations),
33-
},
34-
deployable: deployable
35-
33+
}
3634
}
3735
end
3836

@@ -70,10 +68,6 @@ def sidecars
7068
}
7169
end
7270
end
73-
74-
def deployable
75-
revision.droplet.staged?
76-
end
7771
end
7872
end
7973
end

docs/v3/source/includes/api_resources/_revisions.erb

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@
1919
}
2020
],
2121
"description": "Initial revision.",
22-
"deployable": true,
2322
"relationships": {
2423
"app": {
2524
"data": {
@@ -82,7 +81,6 @@
8281
}
8382
],
8483
"description": "Initial revision.",
85-
"deployable": true,
8684
"relationships": {
8785
"app": {
8886
"data": {

docs/v3/source/includes/experimental_resources/revisions/_object.md.erb

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@ Name | Type | Description
1717
**created_at** | _datetime_ | The time with zone when the object was created.
1818
**updated_at** | _datetime_ | The time with zone when the object was last updated.
1919
**description** | _string_ | A short description of the reason for revision.
20-
**deployable** _(experimental)_ | _boolean_ | Indicates if the revision's droplet is staged and the revision can be used to [create a deployment](#create-a-deployment).
2120
**relationships.app** | [_to-one relationship_](#to-one-relationships) | The app the revision is associated with.
2221
**metadata.labels** | [_label object_](#labels) | Labels applied to the revision.
2322
**metadata.annotations** | [_annotation object_](#annotations) | Annotations applied to the revision.

spec/request/revisions_spec.rb

Lines changed: 1 addition & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -69,8 +69,7 @@
6969
'command' => 'run-sidecar',
7070
'process_types' => ['web'],
7171
'memory_in_mb' => 300,
72-
}],
73-
'deployable' => true
72+
}]
7473
}
7574
)
7675
end
@@ -147,7 +146,6 @@
147146
},
148147
},
149148
'sidecars' => [],
150-
'deployable' => true
151149
},
152150
{
153151
'guid' => revision2.guid,
@@ -183,7 +181,6 @@
183181
},
184182
},
185183
'sidecars' => [],
186-
'deployable' => true
187184
}
188185
]
189186
}
@@ -247,7 +244,6 @@
247244
},
248245
},
249246
'sidecars' => [],
250-
'deployable' => true
251247
},
252248
{
253249
'guid' => revision3.guid,
@@ -283,7 +279,6 @@
283279
},
284280
},
285281
'sidecars' => [],
286-
'deployable' => true
287282
}
288283
]
289284
}
@@ -372,7 +367,6 @@
372367
},
373368
},
374369
'sidecars' => [],
375-
'deployable' => true
376370
}
377371
)
378372
end
@@ -467,7 +461,6 @@
467461
},
468462
},
469463
'sidecars' => [],
470-
'deployable' => true
471464
},
472465
{
473466
'guid' => revision2.guid,
@@ -503,7 +496,6 @@
503496
},
504497
},
505498
'sidecars' => [],
506-
'deployable' => true
507499
}
508500
]
509501
}

spec/unit/fetchers/app_revisions_fetcher_spec.rb

Lines changed: 3 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,8 @@ module VCAP::CloudController
55
RSpec.describe AppRevisionsFetcher do
66
let(:fetcher) { AppRevisionsFetcher }
77
let!(:app) { AppModel.make }
8-
9-
let(:expired_droplet) { DropletModel.make(:droplet, app: app, state: DropletModel::EXPIRED_STATE) }
10-
let(:staged_droplet) { DropletModel.make(:droplet, app: app, state: DropletModel::STAGED_STATE) }
11-
12-
let!(:revision1) { RevisionModel.make(version: 21, droplet_guid: staged_droplet.guid, app: app) }
13-
let!(:revision2) { RevisionModel.make(version: 34, droplet_guid: expired_droplet.guid, app: app) }
8+
let!(:revision1) { RevisionModel.make(version: 21, app: app) }
9+
let!(:revision2) { RevisionModel.make(version: 34, app: app) }
1410

1511
describe '#fetch' do
1612
let(:message) { AppRevisionsListMessage.from_params(filters) }
@@ -24,7 +20,7 @@ module VCAP::CloudController
2420
end
2521
end
2622

27-
context 'when the revisions are filtered on version' do
23+
context 'when the revisions are filtered' do
2824
let(:filters) { { versions: [revision1.version] } }
2925

3026
it 'returns all of the desired revisions' do
@@ -33,15 +29,6 @@ module VCAP::CloudController
3329
end
3430
end
3531

36-
context 'when the revisions are filtered on deployable' do
37-
let(:filters) { { deployable: true } }
38-
39-
it 'returns all of the desired revisions' do
40-
expect(subject).to include(revision1)
41-
expect(subject).to_not include(revision2)
42-
end
43-
end
44-
4532
context 'when a label_selector is provided' do
4633
let(:message) { AppRevisionsListMessage.from_params({ 'label_selector' => 'key=value' }) }
4734
let!(:revision1label) { RevisionLabelModel.make(key_name: 'key', value: 'value', revision: revision1) }

spec/unit/messages/app_revisions_list_message_spec.rb

Lines changed: 1 addition & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@ module VCAP::CloudController
1010
'page' => 1,
1111
'per_page' => 5,
1212
'label_selector' => 'key=value',
13-
'deployable' => true
1413
}
1514
end
1615

@@ -21,7 +20,6 @@ module VCAP::CloudController
2120
expect(message.page).to eq(1)
2221
expect(message.per_page).to eq(5)
2322
expect(message.versions).to eq(['1', '3'])
24-
expect(message.deployable).to eq(true)
2523
expect(message.label_selector).to eq('key=value')
2624
end
2725

@@ -31,7 +29,6 @@ module VCAP::CloudController
3129
expect(message.requested?(:page)).to be_truthy
3230
expect(message.requested?(:per_page)).to be_truthy
3331
expect(message.requested?(:versions)).to be_truthy
34-
expect(message.requested?(:deployable)).to be_truthy
3532
expect(message.requested?(:label_selector)).to be_truthy
3633
end
3734
end
@@ -58,8 +55,7 @@ module VCAP::CloudController
5855
AppRevisionsListMessage.from_params({
5956
page: 1,
6057
per_page: 5,
61-
versions: ['1'],
62-
deployable: true,
58+
versions: ['1'],
6359
label_selector: 'key=value',
6460
})
6561
}.not_to raise_error
@@ -92,19 +88,6 @@ module VCAP::CloudController
9288
end
9389
end
9490

95-
context 'deployable' do
96-
it 'validates deployable to be a boolean' do
97-
message = AppRevisionsListMessage.from_params(deployable: 'not a boolean')
98-
expect(message).to be_invalid
99-
expect(message.errors[:deployable]).to include('must be a boolean')
100-
end
101-
102-
it 'allows deployable to be nil' do
103-
message = AppRevisionsListMessage.from_params(deployable: nil)
104-
expect(message).to be_valid
105-
end
106-
end
107-
10891
it 'validates metadata requirements' do
10992
message = AppRevisionsListMessage.from_params('label_selector' => '')
11093

spec/unit/presenters/v3/revision_presenter_spec.rb

Lines changed: 0 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -96,24 +96,6 @@ module VCAP::CloudController::Presenters::V3
9696
expect(result[:sidecars][0][:memory_in_mb]).to eq(300)
9797
expect(result[:sidecars][0][:process_types]).to eq(['web'])
9898
expect(result[:description]).to eq('Initial revision')
99-
expect(result[:deployable]).to eq(true)
100-
end
101-
102-
context 'when the droplet is not staged' do
103-
let(:droplet) do
104-
VCAP::CloudController::DropletModel.make(
105-
app: app_model,
106-
state: VCAP::CloudController::DropletModel::EXPIRED_STATE,
107-
process_types: {
108-
'web' => 'droplet_web_command',
109-
'worker' => 'droplet_worker_command',
110-
})
111-
end
112-
113-
it 'returns deployable is false' do
114-
result = RevisionPresenter.new(revision).to_hash
115-
expect(result[:deployable]).to eq(false)
116-
end
11799
end
118100
end
119101
end

0 commit comments

Comments
 (0)