{"@context":"https://w3id.org/codemeta/3.0","@type":"SoftwareSourceCode","identifier":"pkg:golang/github.com/comcast/gophercloud","name":"github.com/comcast/gophercloud","description":"Package gophercloud provides a multi-vendor interface to OpenStack-compatible\nclouds. The library has a three-level hierarchy: providers, services, and\nresources.\n\nProvider structs represent the cloud providers that offer and manage a\ncollection of services. You will generally want to create one Provider\nclient per OpenStack cloud.\n\nUse your OpenStack credentials to create a Provider client.  The\nIdentityEndpoint is typically refered to as \"auth_url\" or \"OS_AUTH_URL\" in\ninformation provided by the cloud operator. Additionally, the cloud may refer to\nTenantID or TenantName as project_id and project_name. Credentials are\nspecified like so:\n\nYou may also use the openstack.AuthOptionsFromEnv() helper function. This\nfunction reads in standard environment variables frequently found in an\nOpenStack `openrc` file. Again note that Gophercloud currently uses \"tenant\"\ninstead of \"project\".\n\nService structs are specific to a provider and handle all of the logic and\noperations for a particular OpenStack service. Examples of services include:\nCompute, Object Storage, Block Storage. In order to define one, you need to\npass in the parent provider, like so:\n\nResource structs are the domain models that services make use of in order\nto work with and represent the state of API resources:\n\nIntermediate Result structs are returned for API operations, which allow\ngeneric access to the HTTP headers, response body, and any errors associated\nwith the network transaction. To turn a result into a usable resource struct,\nyou must call the Extract method which is chained to the response, or an\nExtract function from an applicable extension:\n\nAll requests that enumerate a collection return a Pager struct that is used to\niterate through the results one page at a time. Use the EachPage method on that\nPager to handle each successive Page in a closure, then use the appropriate\nextraction method from that request's package to interpret that Page as a slice\nof results:\n\nIf you want to obtain the entire collection of pages without doing any\nintermediary processing on each page, you can use the AllPages method:\n\nThis top-level package contains utility functions and data types that are used\nthroughout the provider and service packages. Of particular note for end users\nare the AuthOptions and EndpointOpts structs.","version":"v0.0.0-20171117222830-8db8df11df46","softwareVersion":"v0.0.0-20171117222830-8db8df11df46","license":"https://spdx.org/licenses/Apache-2.0","codeRepository":"https://github.com/comcast/gophercloud","issueTracker":"https://github.com/Comcast/gophercloud/issues","url":"https://github.com/comcast/gophercloud","programmingLanguage":{"@type":"ComputerLanguage","name":"Go"},"dateCreated":"2017-11-17","dateModified":"2017-11-17","datePublished":"2017-11-17","copyrightYear":2017,"downloadUrl":"https://proxy.golang.org/github.com/comcast/gophercloud/@v/v0.0.0-20171117222830-8db8df11df46.zip","softwareHelp":{"@type":"WebSite","url":"https://pkg.go.dev/github.com/comcast/gophercloud#section-documentation"},"applicationCategory":"go","runtimePlatform":"go","developmentStatus":"active","sameAs":["https://pkg.go.dev/github.com/comcast/gophercloud"],"https://www.w3.org/ns/activitystreams#likes":1,"https://forgefed.org/ns#forks":1}