Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
G
gitlab-ce
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Jérome Perrin
gitlab-ce
Commits
20a07d26
Commit
20a07d26
authored
May 18, 2017
by
Shinya Maeda
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Include owner for pipeline_schedules. Improve N+1 spec. Use PipelineBasic for small payload.
parent
17b9128b
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
8 additions
and
26 deletions
+8
-26
lib/api/entities.rb
lib/api/entities.rb
+1
-1
lib/api/pipeline_schedules.rb
lib/api/pipeline_schedules.rb
+1
-1
spec/fixtures/api/schemas/pipeline_schedule.json
spec/fixtures/api/schemas/pipeline_schedule.json
+1
-23
spec/requests/api/pipeline_schedules_spec.rb
spec/requests/api/pipeline_schedules_spec.rb
+5
-1
No files found.
lib/api/entities.rb
View file @
20a07d26
...
@@ -690,7 +690,7 @@ module API
...
@@ -690,7 +690,7 @@ module API
expose
:id
expose
:id
expose
:description
,
:ref
,
:cron
,
:cron_timezone
,
:next_run_at
,
:active
expose
:description
,
:ref
,
:cron
,
:cron_timezone
,
:next_run_at
,
:active
expose
:created_at
,
:updated_at
,
:deleted_at
expose
:created_at
,
:updated_at
,
:deleted_at
expose
:last_pipeline
,
using:
Entities
::
Pipeline
expose
:last_pipeline
,
using:
Entities
::
Pipeline
Basic
expose
:owner
,
using:
Entities
::
UserBasic
expose
:owner
,
using:
Entities
::
UserBasic
end
end
...
...
lib/api/pipeline_schedules.rb
View file @
20a07d26
...
@@ -17,7 +17,7 @@ module API
...
@@ -17,7 +17,7 @@ module API
get
':id/pipeline_schedules'
do
get
':id/pipeline_schedules'
do
authorize!
:read_pipeline_schedule
,
user_project
authorize!
:read_pipeline_schedule
,
user_project
pipeline_schedules
=
user_project
.
pipeline_schedules
.
includes
(
last_pipeline:
{
statuses: :latest
}
)
pipeline_schedules
=
user_project
.
pipeline_schedules
.
includes
(
[
:owner
,
last_pipeline:
{
statuses: :latest
}]
)
present
paginate
(
pipeline_schedules
),
with:
Entities
::
PipelineSchedule
present
paginate
(
pipeline_schedules
),
with:
Entities
::
PipelineSchedule
end
end
...
...
spec/fixtures/api/schemas/pipeline_schedule.json
View file @
20a07d26
...
@@ -17,29 +17,7 @@
...
@@ -17,29 +17,7 @@
"id"
:
{
"type"
:
"integer"
},
"id"
:
{
"type"
:
"integer"
},
"sha"
:
{
"type"
:
"string"
},
"sha"
:
{
"type"
:
"string"
},
"ref"
:
{
"type"
:
"string"
},
"ref"
:
{
"type"
:
"string"
},
"status"
:
{
"type"
:
"string"
},
"status"
:
{
"type"
:
"string"
}
"before_sha"
:
{
"type"
:
[
"string"
,
"null"
]
},
"tag"
:
{
"type"
:
[
"boolean"
,
"null"
]
},
"yaml_errors"
:
{
"type"
:
[
"string"
,
"null"
]
},
"user"
:
{
"type"
:
[
"object"
,
"null"
],
"properties"
:
{
"name"
:
{
"type"
:
"string"
},
"username"
:
{
"type"
:
"string"
},
"id"
:
{
"type"
:
"integer"
},
"state"
:
{
"type"
:
"string"
},
"avatar_url"
:
{
"type"
:
"uri"
},
"web_url"
:
{
"type"
:
"uri"
}
},
"additionalProperties"
:
false
},
"created_at"
:
{
"type"
:
"date"
},
"updated_at"
:
{
"type"
:
"date"
},
"started_at"
:
{
"type"
:
"date"
},
"finished_at"
:
{
"type"
:
"date"
},
"committed_at"
:
{
"type"
:
[
"string"
,
"null"
]
},
"duration"
:
{
"type"
:
[
"integer"
,
"null"
]
},
"coverage"
:
{
"type"
:
[
"string"
,
"null"
]
}
},
},
"additionalProperties"
:
false
"additionalProperties"
:
false
},
},
...
...
spec/requests/api/pipeline_schedules_spec.rb
View file @
20a07d26
...
@@ -30,8 +30,12 @@ describe API::PipelineSchedules do
...
@@ -30,8 +30,12 @@ describe API::PipelineSchedules do
get
api
(
"/projects/
#{
project
.
id
}
/pipeline_schedules"
,
developer
)
get
api
(
"/projects/
#{
project
.
id
}
/pipeline_schedules"
,
developer
)
end
.
count
end
.
count
create_list
(
:ci_pipeline_schedule
,
10
,
project:
project
,
owner:
developer
)
create_list
(
:ci_pipeline_schedule
,
10
,
project:
project
)
.
each
do
|
pipeline_schedule
|
.
each
do
|
pipeline_schedule
|
create
(
:user
).
tap
do
|
user
|
project
.
add_developer
(
user
)
pipeline_schedule
.
update_attributes
(
owner:
user
)
end
pipeline_schedule
.
pipelines
<<
build
(
:ci_pipeline
,
project:
project
)
pipeline_schedule
.
pipelines
<<
build
(
:ci_pipeline
,
project:
project
)
end
end
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment