# Generated by `mix github.gen` from docs/github-api/api.github.com.json. # Do not edit by hand; re-run the task instead. defmodule Noizu.Github.Api.HostedCompute do @moduledoc """ GitHub `hosted-compute` API. """ import Noizu.Github @doc """ Create a hosted compute network configuration for an organization @see https://docs.github.com/rest/orgs/network-configurations#create-a-hosted-compute-network-configuration-for-an-organization """ def create_network_configuration_for_org(org, body, options \\ nil) do url = github_base() <> "/orgs/#{org}/settings/network-configurations" body = body api_call(:post, url, body, Noizu.Github.NetworkConfiguration, options) end @doc """ Delete a hosted compute network configuration from an organization @see https://docs.github.com/rest/orgs/network-configurations#delete-a-hosted-compute-network-configuration-from-an-organization """ def delete_network_configuration_from_org(org, network_configuration_id, options \\ nil) do url = github_base() <> "/orgs/#{org}/settings/network-configurations/#{network_configuration_id}" body = %{} api_call(:delete, url, body, Noizu.Github.Raw, options) end @doc """ Get a hosted compute network configuration for an organization @see https://docs.github.com/rest/orgs/network-configurations#get-a-hosted-compute-network-configuration-for-an-organization """ def get_network_configuration_for_org(org, network_configuration_id, options \\ nil) do url = github_base() <> "/orgs/#{org}/settings/network-configurations/#{network_configuration_id}" body = %{} api_call(:get, url, body, Noizu.Github.NetworkConfiguration, options) end @doc """ Get a hosted compute network settings resource for an organization @see https://docs.github.com/rest/orgs/network-configurations#get-a-hosted-compute-network-settings-resource-for-an-organization """ def get_network_settings_for_org(org, network_settings_id, options \\ nil) do url = github_base() <> "/orgs/#{org}/settings/network-settings/#{network_settings_id}" body = %{} api_call(:get, url, body, Noizu.Github.NetworkSettings, options) end @doc """ List hosted compute network configurations for an organization @see https://docs.github.com/rest/orgs/network-configurations#list-hosted-compute-network-configurations-for-an-organization """ def list_network_configurations_for_org(org, options \\ nil) do url = ( query = [ get_field(:per_page, options, nil), get_field(:page, options, nil) ] |> Enum.filter(& &1) qs = if query == [], do: "", else: "?" <> Enum.join(query, "&") github_base() <> "/orgs/#{org}/settings/network-configurations" <> qs ) body = %{} api_call(:get, url, body, Noizu.Github.Raw, options) end @doc """ Update a hosted compute network configuration for an organization @see https://docs.github.com/rest/orgs/network-configurations#update-a-hosted-compute-network-configuration-for-an-organization """ def update_network_configuration_for_org(org, network_configuration_id, body, options \\ nil) do url = github_base() <> "/orgs/#{org}/settings/network-configurations/#{network_configuration_id}" body = body api_call(:patch, url, body, Noizu.Github.NetworkConfiguration, options) end end