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
1
Merge Requests
1
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
nexedi
gitlab-ce
Commits
9d23c358
Commit
9d23c358
authored
Jun 26, 2017
by
Shinya Maeda
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Implement variables_attributes create/update cases
parent
62914a7f
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
28 additions
and
2 deletions
+28
-2
app/services/ci/create_pipeline_schedule_service.rb
app/services/ci/create_pipeline_schedule_service.rb
+28
-2
No files found.
app/services/ci/create_pipeline_schedule_service.rb
View file @
9d23c358
module
Ci
module
Ci
class
CreatePipelineScheduleService
<
BaseService
class
CreatePipelineScheduleService
<
BaseService
def
execute
def
execute
project
.
pipeline_schedules
.
create
(
pipeline_schedule_params
)
pipeline_schedule
=
project
.
pipeline_schedules
.
build
(
pipeline_schedule_params
)
if
variable_keys_duplicated?
pipeline_schedule
.
errors
.
add
(
'variables.key'
,
"keys are duplicated"
)
return
pipeline_schedule
end
pipeline_schedule
.
save
pipeline_schedule
end
def
update
(
pipeline_schedule
)
if
variable_keys_duplicated?
pipeline_schedule
.
errors
.
add
(
'variables.key'
,
"keys are duplicated"
)
return
false
end
pipeline_schedule
.
update
(
pipeline_schedule_params
)
end
end
private
private
def
pipeline_schedule_params
def
pipeline_schedule_params
params
.
merge
(
owner:
current_user
)
@pipeline_schedule_params
||=
params
.
merge
(
owner:
current_user
)
end
def
variable_keys_duplicated?
attributes
=
pipeline_schedule_params
[
'variables_attributes'
]
return
false
unless
attributes
.
is_a?
(
Array
)
attributes
.
map
{
|
v
|
v
[
'key'
]
}.
uniq
.
length
!=
attributes
.
length
end
end
end
end
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