Module: Deploygate::Client::Organizations

Included in:
Deploygate::Client
Defined in:
lib/deploygate/client/organizations.rb

Overview

Request to organizations endpoints

Instance Method Summary collapse

Instance Method Details

#add_organization(org_name:, description: nil) ⇒ Deploygate::Client::Response

Create an organization.

Parameters:

  • org_name (String)

    Organization name

  • description (Hash) (defaults to: nil)

    a customizable set of options

Options Hash (description:):

  • Organization (String)

    description

Returns:

See Also:



24
25
26
27
28
29
30
# File 'lib/deploygate/client/organizations.rb', line 24

def add_organization(org_name:, description: nil)
  res = api.post '/api/organizations' do |request|
    request.params[:name] = org_name
    request.params[:description] = description
  end
  Response.new(res)
end

#add_organization_member(org_name:, user_name:) ⇒ Deploygate::Client::Response

Add members to the organization.

Parameters:

  • org_name (String)

    Organization name

  • user_name (String)

    User name

Returns:

See Also:



81
82
83
84
85
86
# File 'lib/deploygate/client/organizations.rb', line 81

def add_organization_member(org_name:, user_name:)
  res = api.post "/api/organizations/#{org_name}/members" do |request|
    request.params[:username] = user_name
  end
  Response.new(res)
end

#add_organization_member_by_email(org_name:, email:) ⇒ Deploygate::Client::Response

Add members to the organization.

Parameters:

  • org_name (String)

    Organization name

  • email (String)

    User email

Returns:

See Also:



94
95
96
97
98
99
# File 'lib/deploygate/client/organizations.rb', line 94

def add_organization_member_by_email(org_name:, email:)
  res = api.post "/api/organizations/#{org_name}/members" do |request|
    request.params[:email] = email
  end
  Response.new(res)
end

#add_team_member(org_name:, team_name:, user_name:) ⇒ Deploygate::Client::Response

Add members to the team.

Parameters:

  • org_name (String)

    Organization name

  • team_name (String)

    Team name

  • user_name (String)

    User name

Returns:

See Also:



147
148
149
150
151
152
153
# File 'lib/deploygate/client/organizations.rb', line 147

def add_team_member(org_name:, team_name:, user_name:)
  endpoint = "/api/organizations/#{org_name}/teams/#{team_name}/users"
  res = api.post endpoint do |request|
    request.params[:user] = user_name
  end
  Response.new(res)
end

#delete_organization(org_name:) ⇒ Deploygate::Client::Response

Delete organization information.

Parameters:

  • org_name (String)

    Organization name

Returns:

See Also:



60
61
62
63
# File 'lib/deploygate/client/organizations.rb', line 60

def delete_organization(org_name:)
  res = api.delete "/api/organizations/#{org_name}"
  Response.new(res)
end

#delete_organization_member(org_name:, user_name:) ⇒ Deploygate::Client::Response

Delete members to the organization.

Parameters:

  • org_name (String)

    Organization name

  • user_name (String)

    User name

Returns:

See Also:



107
108
109
110
111
112
113
# File 'lib/deploygate/client/organizations.rb', line 107

def delete_organization_member(org_name:, user_name:)
  endpoint = "/api/organizations/#{org_name}/members/#{user_name}"
  res = api.delete endpoint do |request|
    request.params[:id] = user_name
  end
  Response.new(res)
end

#delete_organization_member_by_email(org_name:, email:) ⇒ Deploygate::Client::Response

Delete members from the organization.

Parameters:

  • org_name (String)

    Organization name

  • email (String)

    User email

Returns:

See Also:



121
122
123
124
125
126
127
# File 'lib/deploygate/client/organizations.rb', line 121

def delete_organization_member_by_email(org_name:, email:)
  endpoint = "/api/organizations/#{org_name}/members/#{email}"
  res = api.delete endpoint do |request|
    request.params[:id] = email
  end
  Response.new(res)
end

#delete_team_member(org_name:, team_name:, user_name:) ⇒ Deploygate::Client::Response

Delete members from the team.

Parameters:

  • org_name (String)

    Organization name

  • team_name (String)

    Team name

  • user_name (String)

    User name

Returns:

See Also:



162
163
164
165
166
# File 'lib/deploygate/client/organizations.rb', line 162

def delete_team_member(org_name:, team_name:, user_name:)
  endpoint = "/api/organizations/#{org_name}/teams/#{team_name}/users/#{user_name}"
  res = api.delete endpoint
  Response.new(res)
end

#organization(org_name:) ⇒ Deploygate::Client::Response

Get organization information.

Parameters:

  • org_name (String)

    Organization name

Returns:

See Also:



37
38
39
40
# File 'lib/deploygate/client/organizations.rb', line 37

def organization(org_name:)
  res = api.get "/api/organizations/#{org_name}"
  Response.new(res)
end

#organization_members(org_name:) ⇒ Deploygate::Client::Response

Get a list of organization members.

Parameters:

  • org_name (String)

    Organization name

Returns:

See Also:



70
71
72
73
# File 'lib/deploygate/client/organizations.rb', line 70

def organization_members(org_name:)
  res = api.get "/api/organizations/#{org_name}/members"
  Response.new(res)
end

#organizationsDeploygate::Client::Response

Get a list of organizations.



13
14
15
16
# File 'lib/deploygate/client/organizations.rb', line 13

def organizations
  res = api.get '/api/organizations'
  Response.new(res)
end

#team_members(org_name:, team_name:) ⇒ Deploygate::Client::Response

Get a list of team members.

Parameters:

  • org_name (String)

    Organization name

  • team_name (String)

    Team name

Returns:

See Also:



135
136
137
138
# File 'lib/deploygate/client/organizations.rb', line 135

def team_members(org_name:, team_name:)
  res = api.get "/api/organizations/#{org_name}/teams/#{team_name}/users"
  Response.new(res)
end

#update_organization(org_name:, description: nil) ⇒ Deploygate::Client::Response

Update organization information.

Parameters:

  • org_name (String)

    Organization name

  • description (Hash) (defaults to: nil)

    a customizable set of options

Options Hash (description:):

  • Organization (String)

    description

Returns:

See Also:



48
49
50
51
52
53
# File 'lib/deploygate/client/organizations.rb', line 48

def update_organization(org_name:, description: nil)
  res = api.patch "/api/organizations/#{org_name}" do |request|
    request.params[:description] = description
  end
  Response.new(res)
end