Class: Github::Client::Repos::Deployments

Inherits:
API
  • Object
show all
Defined in:
lib/github_api/client/repos/deployments.rb

Constant Summary collapse

VALID_DEPLOYMENTS_OPTIONS =
%w[
  ref
  auto_merge
  required_contexts
  payload
  environment
  description
]
VALID_STATUS_OPTIONS =
%w[
  state
  target_url
  description
]
PREVIEW_MEDIA =

:nodoc:

'application/vnd.github.cannonball-preview+json'.freeze

Constants included from MimeType

MimeType::MEDIA_LOOKUP

Constants included from Github::Constants

Github::Constants::ACCEPT, Github::Constants::ACCEPTED_OAUTH_SCOPES, Github::Constants::ACCEPT_CHARSET, Github::Constants::CACHE_CONTROL, Github::Constants::CONTENT_LENGTH, Github::Constants::CONTENT_TYPE, Github::Constants::DATE, Github::Constants::ETAG, Github::Constants::HEADER_LAST, Github::Constants::HEADER_LINK, Github::Constants::HEADER_NEXT, Github::Constants::LOCATION, Github::Constants::META_FIRST, Github::Constants::META_LAST, Github::Constants::META_NEXT, Github::Constants::META_PREV, Github::Constants::META_REL, Github::Constants::OAUTH_SCOPES, Github::Constants::PARAM_PAGE, Github::Constants::PARAM_PER_PAGE, Github::Constants::PARAM_START_PAGE, Github::Constants::RATELIMIT_LIMIT, Github::Constants::RATELIMIT_REMAINING, Github::Constants::RATELIMIT_RESET, Github::Constants::SERVER, Github::Constants::USER_AGENT

Instance Attribute Summary

Attributes inherited from API

#current_options

Instance Method Summary collapse

Methods inherited from API

after_callbacks, after_request, #api_methods_in, #arguments, before_callbacks, before_request, clear_request_methods!, #disable_redirects, #execute, extend_with_actions, extra_methods, #extract_basic_auth, extract_class_name, #filter_callbacks, inherited, #initialize, internal_methods, method_added, #method_missing, #module_methods_in, namespace, request_methods, require_all, #respond_to?, root!, #run_callbacks, #set, #yield_or_eval

Methods included from Request::Verbs

#delete_request, #get_request, #head_request, #options_request, #patch_request, #post_request, #put_request

Methods included from RateLimit

#ratelimit, #ratelimit_remaining, #ratelimit_reset

Methods included from MimeType

#lookup_media, #parse

Methods included from Authorization

#auth_code, #authenticated?, #authentication, #authorize_url, #basic_authed?, #client, #get_token

Constructor Details

This class inherits a constructor from Github::API

Dynamic Method Handling

This class handles dynamic methods through the method_missing method in the class Github::API

Instance Method Details

#create(*args) ⇒ Object

Create a deployment

Examples:

github = Github.new
github.repos.deployments.create 'user-name', 'repo-name', ref: '...'
github.repos.deployments.create
   'user-name',
   'repo-name',
   ref: '...',
   description: 'New deploy',
   force: true

Parameters:



76
77
78
79
80
81
82
83
84
85
# File 'lib/github_api/client/repos/deployments.rb', line 76

def create(*args)
  arguments(args, required: [:user, :repo]) do
    permit VALID_DEPLOYMENTS_OPTIONS
    assert_required %w[ ref ]
  end
  params = arguments.params
  params['accept'] ||= PREVIEW_MEDIA

  post_request("repos/#{arguments.user}/#{arguments.repo}/deployments", arguments.params)
end

#create_status(*args) ⇒ Object

Create a deployment status

Examples:

github = Github.new
github.repos.deployments.create_status 'user-name', 'repo-name', DEPLOYMENT_ID, state: '...'

Parameters:



127
128
129
130
131
132
133
134
135
136
# File 'lib/github_api/client/repos/deployments.rb', line 127

def create_status(*args)
  arguments(args, required: [:user, :repo, :id]) do
    assert_required %w[ state ]
    permit VALID_STATUS_OPTIONS
  end
  params = arguments.params
  params['accept'] ||= PREVIEW_MEDIA

  post_request("repos/#{arguments.user}/#{arguments.repo}/deployments/#{arguments.id}/statuses", params)
end

#list(*args) ⇒ Object Also known as: all

List deployments on a repository

Examples:

github = Github.new
github.repos.deployments.list 'user-name', 'repo-name'
github.repos.deployments.list 'user-name', 'repo-name' { |deployment| ... }


33
34
35
36
37
38
39
40
41
# File 'lib/github_api/client/repos/deployments.rb', line 33

def list(*args)
  arguments(args, required: [:user, :repo])
  params = arguments.params
  params['accept'] ||= PREVIEW_MEDIA

  response = get_request("repos/#{arguments.user}/#{arguments.repo}/deployments", params)
  return response unless block_given?
  response.each { |el| yield el }
end

#statuses(*args) ⇒ Object

List the statuses of a deployment.

Examples:

github = Github.new
github.repos.deployments.statuses 'user-name', 'repo-name', DEPLOYMENT_ID
github.repos.deployments.statuses 'user-name', 'repo-name', DEPLOYMENT_ID { |status| ... }

Parameters:



99
100
101
102
103
104
105
106
107
# File 'lib/github_api/client/repos/deployments.rb', line 99

def statuses(*args)
  arguments(args, required: [:user, :repo, :id])
  params = arguments.params
  params['accept'] ||= PREVIEW_MEDIA

  statuses = get_request("repos/#{arguments.user}/#{arguments.repo}/deployments/#{arguments.id}/statuses", params)
  return statuses unless block_given?
  statuses.each { |status| yield status }
end
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy