Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Pipeline config batch update #1823

Merged

Conversation

richard-timpson
Copy link
Contributor

@richard-timpson richard-timpson commented Aug 22, 2024

This is part of: spinnaker/spinnaker#6147.

Adds a new enpdoint, POST /pipelines/bulksave, which can take a list of pipeline configurations to save. The endpoint will return a response that indicates how many of the saves were successful, how many failed, and what the failures are. The structure is

[
   "successful_pipelines_count"  : <int>,
   "successful_pipelines"        : <List<String>>,
   "failed_pipelines_count"      : <int>,
   "failed_pipelines"            : <List<Map<String, Object>>> 
]

There are a few config knobs which control some bulk save functionality. The gate endpoint invokes an orca asynchronous process to manage saving the pipelines and polls until the orca operations are complete.

controller:
  pipeline:
    bulksave:
      # the max number of times gate will poll orca to check for task status
      max-polls-for-task-completion: <int>
      # the interval at which gate will poll orca.
      taskCompletionCheckIntervalMs: <int>

See related PRs in front50 and orca
spinnaker/orca#4773, spinnaker/front50#1483

sanopsmx and others added 3 commits August 22, 2024 13:04
…s at once to sql db.

This is part of: spinnaker/spinnaker#6147.

Enhanced PipelineController.groovy to

Added new rest api method bulksavePipeline(List<Map> pipelineList, Boolean staleCheck)
This method accepts a list of pipelines json.
This method returns a Map object having the below data:
{
  “Successful”: <count>,
  “Failed”: <cound>,
  “Failed_list”: [<array of failed pipelines - (application, pipeline name, etc) and the error message]
}

Enhanced TaskService.java to

Added code to poll the task until the SavePipelineTask and MonitorFront50Task status : succeeded, terminal.
@spinnaker spinnaker deleted a comment from spinnakerbot Aug 23, 2024
…nfg instead of GateWebConfig

GateWebConfig seems to exist more for spring specific configurations, whereas GateConfig is a general config for the application beans/logic.
richard-timpson pushed a commit to richard-timpson/spinnaker.io that referenced this pull request Aug 23, 2024
…e functionality

The documentation for front50 already existed. Adds some sections for the gate and orca changes which make the functionality feature complete.

See relevant PRs
spinnaker/front50#1483, spinnaker/orca#4773, and spinnaker/gate#1823
@dbyron-sf dbyron-sf added the ready to merge Approved and ready for merge label Aug 23, 2024
@mergify mergify bot added the auto merged label Aug 23, 2024
@mergify mergify bot merged commit 7373cfe into spinnaker:master Aug 23, 2024
4 checks passed
dbyron-sf pushed a commit to spinnaker/spinnaker.io that referenced this pull request Aug 23, 2024
…e functionality (#458)

The documentation for front50 already existed. Adds some sections for the gate and orca changes which make the functionality feature complete.

See relevant PRs
spinnaker/front50#1483, spinnaker/orca#4773, and spinnaker/gate#1823

Co-authored-by: Richard Timpson <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants