module Buildkit::Client::Pipelines

Methods for the pipelines API

@see buildkite.com/docs/api/pipelines

Public Instance Methods

archive_pipeline(org, pipeline) click to toggle source

Archive a pipeline

@param org [String] Organization slug. @param pipeline [String] pipeline slug. @return [Sawyer::Resource] Hash representing Buildkite pipeline @see buildkite.com/docs/api/pipelines#archive-a-pipeline @example

Buildkit.archive_pipeline('my-great-org', 'great-pipeline')
# File lib/buildkit/client/pipelines.rb, line 78
def archive_pipeline(org, pipeline)
  post("/v2/organizations/#{org}/pipelines/#{pipeline}/archive")
end
create_pipeline(org, options = {}) click to toggle source

Create a pipeline

@param org [String] Organization slug. @see buildkite.com/docs/api/pipelines#create-a-pipeline @example

Buildkit.create_pipeline('my-great-org', {
  name: 'My pipeline',
  repository: 'git@github.com:acme/pipeline.git',
  steps: [
    {
      type: 'script',
      name: 'Build',
      command: 'script/build.sh'
    }
  ],
  timeout_in_minutes: 10,
  agent_query_rules: ['test=true']
})
# File lib/buildkit/client/pipelines.rb, line 50
def create_pipeline(org, options = {})
  post("/v2/organizations/#{org}/pipelines", options)
end
delete_pipeline(org, pipeline) click to toggle source

Delete a pipeline

@param org [String] Organization slug. @param pipeline [String] pipeline slug. @see buildkite.com/docs/apis/rest-api/pipelines#delete-a-pipeline @example

Buildkit.delete_pipeline('my-great-org', 'great-pipeline')
# File lib/buildkit/client/pipelines.rb, line 103
def delete_pipeline(org, pipeline)
  delete("/v2/organizations/#{org}/pipelines/#{pipeline}")
end
pipeline(org, pipeline, options = {}) click to toggle source

Get a pipeline

@param org [String] Organization slug. @param pipeline [String] pipeline slug. @return [Sawyer::Resource] Hash representing Buildkite pipeline @see buildkite.com/docs/api/pipelines#get-a-pipeline @example

Buildkit.pipeline('my-great-org', 'great-pipeline')
# File lib/buildkit/client/pipelines.rb, line 27
def pipeline(org, pipeline, options = {})
  get("/v2/organizations/#{org}/pipelines/#{pipeline}", options)
end
pipelines(org, options = {}) click to toggle source

List pipelines

@return [Array<Sawyer::Resource>] Array of hashes representing Buildkite pipelines. @see buildkite.com/docs/api/pipelines#list-pipelines @example

Buildkit.pipelines('my-great-org')
# File lib/buildkit/client/pipelines.rb, line 15
def pipelines(org, options = {})
  get("/v2/organizations/#{org}/pipelines", options)
end
unarchive_pipeline(org, pipeline) click to toggle source

Unarchive a pipeline

@param org [String] Organization slug. @param pipeline [String] pipeline slug. @return [Sawyer::Resource] Hash representing Buildkite pipeline @see buildkite.com/docs/api/pipelines#unarchive-a-pipeline @example

Buildkit.unarchive_pipeline('my-great-org', 'great-pipeline')
# File lib/buildkit/client/pipelines.rb, line 91
def unarchive_pipeline(org, pipeline)
  post("/v2/organizations/#{org}/pipelines/#{pipeline}/unarchive")
end
update_pipeline(org, pipeline, options = {}) click to toggle source

Update a pipeline

@param org [String] Organization slug. @param pipeline [String] pipeline slug. @return [Sawyer::Resource] Hash representing Buildkite pipeline @see buildkite.com/docs/api/pipelines#update-a-pipeline @example

Buildkit.update_pipeline('my-great-org', 'great-pipeline', {
  name: 'My pipeline 2',
})
# File lib/buildkit/client/pipelines.rb, line 65
def update_pipeline(org, pipeline, options = {})
  patch("/v2/organizations/#{org}/pipelines/#{pipeline}", options)
end