All Projects → rancher → Go Rancher

rancher / Go Rancher

Licence: apache-2.0
Go language bindings for Rancher API

Programming Languages

go
31211 projects - #10 most used programming language

Go Bindings for Rancher 1.x API

Looking for Rancher 2.x API bindings? Click here

Generating Code

First, you must have a master version of Rancher running. The best way to do this is:

docker run -p 8080:8080 -d rancher/server:latest

Once Rancher is running, you can run the gen-schema.sh script:

./scripts/gen-schema.sh http://<docker host ip>:8080

# The default url is http://localhost:8080, so if rancher/server is listening on localhost, you can omit the url:
./scripts/gen-schema.sh

This will add, remove, and modify go files appropriately. Submit a PR that includes all these changes.

Important caveats

  1. If you are running on macOS, you must have gnu-sed installed as sed for this to work properly.
  2. If you are running against cattle that is running out of an IDE and you don't have go-machine-service running (you probably don't), you'll see a number of unexpected removed or modified files like generated_host.go generated_machine.go and generated_*config.go.

Building

godep go build ./client

Tests

godep go test ./client

Contact

For bugs, questions, comments, corrections, suggestions, etc., open an issue in rancher/rancher with a title starting with [go-rancher].

Or just click here to create a new issue.

License

Copyright (c) 2014-2015 Rancher Labs, Inc.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].