openshift-github-hooks

command module
v0.0.0-...-0762dd7 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 14, 2016 License: Apache-2.0 Imports: 5 Imported by: 0

README

OpenShift GitHub Hooks

Manages GitHub hooks for OpenShift BuildConfig triggers.

Download DockerHub Travis Circle CI

This Go application is an OpenShift client that can manage your GitHub Webhooks for your OpenShift BuildConfig triggers.

Its main feature is to keep your GitHub Webhooks in sync with your OpenShift BuildConfigs, and so automatically create/delete the webhooks on GitHub to reflect the build trigger changes on OpenShift.

It is very useful when you host your source code on a GitHub organization: instead of having to manually create your webhooks on GitHub when you create a new build on OpenShift (and then forget to delete it when you remove the build on OpenShift), you just need to run this application (on OpenShift), and let it handle all that boring stuff for you!

There are also additional commands, for example to list all the Hooks of a GitHub organization that references your OpenShift instance.

How It Works

Keep Webhooks in sync

This application can be deployed on OpenShift or anywhere else, but I guess you will want to run it in your OpenShift cluster - at least for the sync command that runs as a daemon. It should run with a ServiceAccount that has the cluster-reader role, so that it can watch all the BuildConfigs.

The sync command will listen for every BuildConfig change in the cluster, and for all BuildConfig with a GitHub Webhook trigger, it will try to create the hook on the GitHub repository, using the GitHub API.

It will also list all the existing webhooks on GitHub, and remove webhooks that references non-existing OpenShift BuildConfigs.

At a pre-defined period interval, it will re-sync everything, to make sure it didn't miss any event.

Exceptions

If you want to bypass this automatic hook creation for a specific BuildConfig, you can just set the openshift-github-hooks-sync/ignore annotation to true:

kind: BuildConfig
apiVersion: v1
metadata:
  annotations:
  	openshift-github-hooks-sync/ignore: "true"
[...]

With this annotation (and its value set to true), no GitHub Webhook will be created/deleted.

Listing Webhooks

The list command will just use the GitHub API to list webhooks and print them in the standard output.

It uses a GitHub Access Token to talk to the GitHub API. You can create such a token in your GitHub Tokens Settings page. It requires the repo and admin:repo_hook scopes, to be able to list repositories, and list/create/delete hooks.

Usage

Pre-build binaries for the main platforms (darwin-amd64, linux-amd64 and windows-amd64) are available in bintray:

https://bintray.com/vbehar/openshift-github-hooks/openshift-github-hooks/_latestVersion#files

This application has many commands, you can list them by running:

openshift-github-hooks -h
Running on OpenShift

If you want to deploy this application on an OpenShift cluster to run the sync command as a controller, you need to:

  • create a project named github-hooks-controller:

    oc new-project github-hooks-controller
    
  • create a specific ServiceAccount named github-hooks-controller, using the provided openshift-serviceaccount.yml definition file:

    oc create -f openshift-serviceaccount.yml
    
  • as a cluster admin, give the cluster-reader role to your new ServiceAccount:

    oadm policy add-cluster-role-to-user cluster-reader system:serviceaccount:github-hooks-controller:github-hooks-controller
    
  • create a new application from the provided openshift-template-deploy-only.yml template, and overwrite some parameters:

    oc new-app -f openshift-template-deploy-only.yml -p SERVICE_ACCOUNT=github-hooks-controller,GITHUB_ACCESS_TOKEN=xxx,GITHUB_ORGANIZATION=yyy
    

Of course, replace xxx by the value of your GitHub Access Token. To create such a token, go to your GitHub Tokens Settings page, and create a new token with the repo and admin:repo_hook scopes. You also need to define the GitHub organization name for which the controller will manage the hooks.

You can use either of the following templates:

Building from sources

If you want to build it from sources:

  • Install Go (tested with 1.6) and setup your GOPATH

  • clone the sources in your GOPATH

    git clone https://github.com/vbehar/openshift-github-hooks.git $GOPATH/src/github.com/vbehar/openshift-github-hooks
    
  • install godep (to use the vendored dependencies)

    go get github.com/tools/godep
    
  • build the binary with godep:

    cd $GOPATH/src/github.com/vbehar/openshift-github-hooks
    godep go install
    
  • have a look at the application commands, help messages and examples:

    $GOPATH/bin/openshift-github-hooks -h
    $GOPATH/bin/openshift-github-hooks list -h
    $GOPATH/bin/openshift-github-hooks sync -h
    
    • if you want to run the sync command, you will need to get your GitHub Access Token and the GitHub organization name, and then run:

      $GOPATH/bin/openshift-github-hooks sync --github-token="..." --organization="..."
      
    • for the list command, you will also need to get your GitHub Access Token and the GitHub organization name, and then run:

      $GOPATH/bin/openshift-github-hooks list --github-token="..." --organization="..."
      
  • enjoy!

License

Copyright 2016 the original author or authors.

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.

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
Godeps
_workspace/src/bitbucket.org/ww/goautoneg
HTTP Content-Type Autonegotiation.
HTTP Content-Type Autonegotiation.
_workspace/src/github.com/MakeNowJust/heredoc
Package heredoc provides the here-document with keeping indent.
Package heredoc provides the here-document with keeping indent.
_workspace/src/github.com/MakeNowJust/heredoc/dot
Package heredoc_dot is the set of shortcuts for dot import.
Package heredoc_dot is the set of shortcuts for dot import.
_workspace/src/github.com/beorn7/perks/quantile
Package quantile computes approximate quantiles over an unbounded data stream within low memory and CPU bounds.
Package quantile computes approximate quantiles over an unbounded data stream within low memory and CPU bounds.
_workspace/src/github.com/coreos/etcd/client
Package client provides bindings for the etcd APIs.
Package client provides bindings for the etcd APIs.
_workspace/src/github.com/coreos/go-systemd/journal
Package journal provides write bindings to the local systemd journal.
Package journal provides write bindings to the local systemd journal.
_workspace/src/github.com/davecgh/go-spew/spew
Package spew implements a deep pretty printer for Go data structures to aid in debugging.
Package spew implements a deep pretty printer for Go data structures to aid in debugging.
_workspace/src/github.com/dgrijalva/jwt-go
Package jwt is a Go implementation of JSON Web Tokens: http://self-issued.info/docs/draft-jones-json-web-token.html See README.md for more info.
Package jwt is a Go implementation of JSON Web Tokens: http://self-issued.info/docs/draft-jones-json-web-token.html See README.md for more info.
_workspace/src/github.com/docker/distribution
Package distribution will define the interfaces for the components of docker distribution.
Package distribution will define the interfaces for the components of docker distribution.
_workspace/src/github.com/docker/distribution/context
Package context provides several utilities for working with golang.org/x/net/context in http requests.
Package context provides several utilities for working with golang.org/x/net/context in http requests.
_workspace/src/github.com/docker/distribution/digest
Package digest provides a generalized type to opaquely represent message digests and their operations within the registry.
Package digest provides a generalized type to opaquely represent message digests and their operations within the registry.
_workspace/src/github.com/docker/distribution/uuid
Package uuid provides simple UUID generation.
Package uuid provides simple UUID generation.
_workspace/src/github.com/docker/go-units
Package units provides helper function to parse and print size and time units in human-readable format.
Package units provides helper function to parse and print size and time units in human-readable format.
_workspace/src/github.com/docker/libtrust
Package libtrust provides an interface for managing authentication and authorization using public key cryptography.
Package libtrust provides an interface for managing authentication and authorization using public key cryptography.
_workspace/src/github.com/emicklei/go-restful
Package restful, a lean package for creating REST-style WebServices without magic.
Package restful, a lean package for creating REST-style WebServices without magic.
_workspace/src/github.com/emicklei/go-restful/swagger
Package swagger implements the structures of the Swagger https://github.com/wordnik/swagger-spec/blob/master/versions/1.2.md
Package swagger implements the structures of the Swagger https://github.com/wordnik/swagger-spec/blob/master/versions/1.2.md
_workspace/src/github.com/fsouza/go-dockerclient
Package docker provides a client for the Docker remote API.
Package docker provides a client for the Docker remote API.
_workspace/src/github.com/fsouza/go-dockerclient/external/github.com/Sirupsen/logrus
Package logrus is a structured logger for Go, completely API compatible with the standard library logger.
Package logrus is a structured logger for Go, completely API compatible with the standard library logger.
_workspace/src/github.com/fsouza/go-dockerclient/external/github.com/docker/docker/pkg/pools
Package pools provides a collection of pools which provide various data types with buffers.
Package pools provides a collection of pools which provide various data types with buffers.
_workspace/src/github.com/fsouza/go-dockerclient/external/github.com/docker/go-units
Package units provides helper function to parse and print size and time units in human-readable format.
Package units provides helper function to parse and print size and time units in human-readable format.
_workspace/src/github.com/fsouza/go-dockerclient/external/golang.org/x/net/context
Package context defines the Context type, which carries deadlines, cancelation signals, and other request-scoped values across API boundaries and between processes.
Package context defines the Context type, which carries deadlines, cancelation signals, and other request-scoped values across API boundaries and between processes.
_workspace/src/github.com/fsouza/go-dockerclient/external/golang.org/x/sys/unix
Package unix contains an interface to the low-level operating system primitives.
Package unix contains an interface to the low-level operating system primitives.
_workspace/src/github.com/golang/glog
Package glog implements logging analogous to the Google-internal C++ INFO/ERROR/V setup.
Package glog implements logging analogous to the Google-internal C++ INFO/ERROR/V setup.
_workspace/src/github.com/golang/groupcache/lru
Package lru implements an LRU cache.
Package lru implements an LRU cache.
_workspace/src/github.com/golang/protobuf/proto
Package proto converts data structures to and from the wire format of protocol buffers.
Package proto converts data structures to and from the wire format of protocol buffers.
_workspace/src/github.com/gonum/blas
Package blas provides interfaces for the BLAS linear algebra standard.
Package blas provides interfaces for the BLAS linear algebra standard.
_workspace/src/github.com/gonum/blas/blas64
Package blas64 provides a simple interface to the float64 BLAS API.
Package blas64 provides a simple interface to the float64 BLAS API.
_workspace/src/github.com/gonum/blas/native
Package native is a Go implementation of the BLAS API.
Package native is a Go implementation of the BLAS API.
_workspace/src/github.com/gonum/blas/native/internal/math32
Package math32 provides float32 versions of standard library math package routines used by gonum/blas/native.
Package math32 provides float32 versions of standard library math package routines used by gonum/blas/native.
_workspace/src/github.com/gonum/graph
Package graph implements functions and interfaces to deal with formal discrete graphs.
Package graph implements functions and interfaces to deal with formal discrete graphs.
_workspace/src/github.com/gonum/graph/encoding/dot
Package dot implements GraphViz DOT marshaling of graphs.
Package dot implements GraphViz DOT marshaling of graphs.
_workspace/src/github.com/gonum/graph/traverse
Package traverse provides basic graph traversal primitives.
Package traverse provides basic graph traversal primitives.
_workspace/src/github.com/gonum/lapack/lapack64
Package lapack64 provides a set of convenient wrapper functions for LAPACK calls, as specified in the netlib standard (www.netlib.org).
Package lapack64 provides a set of convenient wrapper functions for LAPACK calls, as specified in the netlib standard (www.netlib.org).
_workspace/src/github.com/gonum/lapack/native
Package native is a pure-go implementation of the LAPACK API.
Package native is a pure-go implementation of the LAPACK API.
_workspace/src/github.com/gonum/matrix/mat64
Package mat64 provides basic linear algebra operations for float64 matrices.
Package mat64 provides basic linear algebra operations for float64 matrices.
_workspace/src/github.com/google/go-github/github
Package github provides a client for using the GitHub API.
Package github provides a client for using the GitHub API.
_workspace/src/github.com/google/go-querystring/query
Package query implements encoding of structs into URL query parameters.
Package query implements encoding of structs into URL query parameters.
_workspace/src/github.com/google/gofuzz
Package fuzz is a library for populating go objects with random values.
Package fuzz is a library for populating go objects with random values.
_workspace/src/github.com/gorilla/context
Package context stores values shared during a request lifetime.
Package context stores values shared during a request lifetime.
_workspace/src/github.com/gorilla/mux
Package gorilla/mux implements a request router and dispatcher.
Package gorilla/mux implements a request router and dispatcher.
_workspace/src/github.com/imdario/mergo
Package mergo merges same-type structs and maps by setting default values in zero-value fields.
Package mergo merges same-type structs and maps by setting default values in zero-value fields.
_workspace/src/github.com/juju/ratelimit
The ratelimit package provides an efficient token bucket implementation that can be used to limit the rate of arbitrary things.
The ratelimit package provides an efficient token bucket implementation that can be used to limit the rate of arbitrary things.
_workspace/src/github.com/matttproud/golang_protobuf_extensions/pbutil
Package pbutil provides record length-delimited Protocol Buffer streaming.
Package pbutil provides record length-delimited Protocol Buffer streaming.
_workspace/src/github.com/openshift/origin/pkg/api
Package api includes all OpenShift-specific types used to communicate between the various parts of the OpenShift and the Kubernetes systems.
Package api includes all OpenShift-specific types used to communicate between the various parts of the OpenShift and the Kubernetes systems.
_workspace/src/github.com/openshift/origin/pkg/api/latest
Package latest defines the default output serializations that code should use and imports the required schemas.
Package latest defines the default output serializations that code should use and imports the required schemas.
_workspace/src/github.com/openshift/origin/pkg/auth/authenticator/request/x509request
Package x509request provides a request authenticator that validates and extracts user information from client certificates
Package x509request provides a request authenticator that validates and extracts user information from client certificates
_workspace/src/github.com/openshift/origin/pkg/build/reaper
Package reaper implements the Reaper interface for buildConfigs
Package reaper implements the Reaper interface for buildConfigs
_workspace/src/github.com/openshift/origin/pkg/build/util
Package util contains common functions that are used by the rest of the OpenShift build system.
Package util contains common functions that are used by the rest of the OpenShift build system.
_workspace/src/github.com/openshift/origin/pkg/cmd/flagtypes
Package flagtypes provides types that implement the pflags.Value interface for converting command line flags to objects.
Package flagtypes provides types that implement the pflags.Value interface for converting command line flags to objects.
_workspace/src/github.com/openshift/origin/pkg/cmd/util
Package util provides utility functions for the cmd packages.
Package util provides utility functions for the cmd packages.
_workspace/src/github.com/openshift/origin/pkg/controller
Package controller provides reusable support for controller implementations.
Package controller provides reusable support for controller implementations.
_workspace/src/github.com/openshift/origin/pkg/deploy/generator
Package generator contains the code for DeploymentConfig regeneration as well as REST support to help expose the generator from an API.
Package generator contains the code for DeploymentConfig regeneration as well as REST support to help expose the generator from an API.
_workspace/src/github.com/openshift/origin/pkg/deploy/graph/analysis
Package analysis provides functions that analyse deployment configurations and setup markers that will be reported by oc status
Package analysis provides functions that analyse deployment configurations and setup markers that will be reported by oc status
_workspace/src/github.com/openshift/origin/pkg/deploy/reaper
Package reaper implements the Reaper interface for deploymentConfigs
Package reaper implements the Reaper interface for deploymentConfigs
_workspace/src/github.com/openshift/origin/pkg/deploy/scaler
Package scaler implements the kubectl.Scaler interface for deploymentConfigs
Package scaler implements the kubectl.Scaler interface for deploymentConfigs
_workspace/src/github.com/openshift/origin/pkg/route/generator
Package generator implements the Generator interface for routes
Package generator implements the Generator interface for routes
_workspace/src/github.com/openshift/origin/pkg/route/graph
Package graph contains graph utilities for routes
Package graph contains graph utilities for routes
_workspace/src/github.com/openshift/origin/pkg/route/graph/analysis
Package analysis provides functions that analyse routes and setup markers that will be reported by oc status
Package analysis provides functions that analyse routes and setup markers that will be reported by oc status
_workspace/src/github.com/openshift/origin/pkg/route/graph/nodes
Package nodes contains graph functions and types for routes
Package nodes contains graph functions and types for routes
_workspace/src/github.com/openshift/origin/pkg/template/api
Package api defines and registers types for Template objects.
Package api defines and registers types for Template objects.
_workspace/src/github.com/openshift/origin/pkg/util
Package util implements various utility functions used in both testing and implementation of OpenShift.
Package util implements various utility functions used in both testing and implementation of OpenShift.
_workspace/src/github.com/openshift/origin/pkg/util/errors
Package errors provides utility functions for various errors
Package errors provides utility functions for various errors
_workspace/src/github.com/openshift/origin/pkg/util/namer
Package namer contains a name generator for unique names
Package namer contains a name generator for unique names
_workspace/src/github.com/openshift/origin/pkg/version
Package version supplies version information collected at build time to OpenShift and Kubernetes components.
Package version supplies version information collected at build time to OpenShift and Kubernetes components.
_workspace/src/github.com/pborman/uuid
The uuid package generates and inspects UUIDs.
The uuid package generates and inspects UUIDs.
_workspace/src/github.com/prometheus/client_golang/prometheus
Package prometheus provides embeddable metric primitives for servers and standardized exposition of telemetry through a web services interface.
Package prometheus provides embeddable metric primitives for servers and standardized exposition of telemetry through a web services interface.
_workspace/src/github.com/prometheus/client_model/go
Package io_prometheus_client is a generated protocol buffer package.
Package io_prometheus_client is a generated protocol buffer package.
_workspace/src/github.com/prometheus/common/expfmt
A package for reading and writing Prometheus metrics.
A package for reading and writing Prometheus metrics.
_workspace/src/github.com/prometheus/common/model
Package model contains common data structures that are shared across Prometheus componenets and libraries.
Package model contains common data structures that are shared across Prometheus componenets and libraries.
_workspace/src/github.com/prometheus/procfs
Package procfs provides functions to retrieve system, kernel and process metrics from the pseudo-filesystem proc.
Package procfs provides functions to retrieve system, kernel and process metrics from the pseudo-filesystem proc.
_workspace/src/github.com/russross/blackfriday
Blackfriday markdown processor.
Blackfriday markdown processor.
_workspace/src/github.com/shurcooL/sanitized_anchor_name
Package sanitized_anchor_name provides a func to create sanitized anchor names.
Package sanitized_anchor_name provides a func to create sanitized anchor names.
_workspace/src/github.com/spf13/cobra
Package cobra is a commander providing a simple interface to create powerful modern CLI interfaces.
Package cobra is a commander providing a simple interface to create powerful modern CLI interfaces.
_workspace/src/github.com/spf13/pflag
Package pflag is a drop-in replacement for Go's flag package, implementing POSIX/GNU-style --flags.
Package pflag is a drop-in replacement for Go's flag package, implementing POSIX/GNU-style --flags.
_workspace/src/github.com/ugorji/go/codec
High Performance, Feature-Rich Idiomatic Go codec/encoding library for binc, msgpack, cbor, json.
High Performance, Feature-Rich Idiomatic Go codec/encoding library for binc, msgpack, cbor, json.
_workspace/src/golang.org/x/net/context
Package context defines the Context type, which carries deadlines, cancelation signals, and other request-scoped values across API boundaries and between processes.
Package context defines the Context type, which carries deadlines, cancelation signals, and other request-scoped values across API boundaries and between processes.
_workspace/src/golang.org/x/oauth2
Package oauth2 provides support for making OAuth2 authorized and authenticated HTTP requests.
Package oauth2 provides support for making OAuth2 authorized and authenticated HTTP requests.
_workspace/src/golang.org/x/oauth2/internal
Package internal contains support packages for oauth2 package.
Package internal contains support packages for oauth2 package.
_workspace/src/gopkg.in/yaml.v2
Package yaml implements YAML support for the Go language.
Package yaml implements YAML support for the Go language.
_workspace/src/k8s.io/kubernetes/pkg/api
Package api contains the latest (or "internal") version of the Kubernetes API objects.
Package api contains the latest (or "internal") version of the Kubernetes API objects.
_workspace/src/k8s.io/kubernetes/pkg/api/errors
Package errors provides detailed error types for api field validation.
Package errors provides detailed error types for api field validation.
_workspace/src/k8s.io/kubernetes/pkg/api/install
Package install installs the v1 monolithic api, making it available as an option to all of the API encoding/decoding machinery.
Package install installs the v1 monolithic api, making it available as an option to all of the API encoding/decoding machinery.
_workspace/src/k8s.io/kubernetes/pkg/api/meta
Package meta provides functions for retrieving API metadata from objects belonging to the Kubernetes API TODO: move everything in this file to pkg/api/rest
Package meta provides functions for retrieving API metadata from objects belonging to the Kubernetes API TODO: move everything in this file to pkg/api/rest
_workspace/src/k8s.io/kubernetes/pkg/api/rest
Package rest defines common logic around changes to Kubernetes resources.
Package rest defines common logic around changes to Kubernetes resources.
_workspace/src/k8s.io/kubernetes/pkg/api/unversioned
Package unversioned contains API types that are common to all versions.
Package unversioned contains API types that are common to all versions.
_workspace/src/k8s.io/kubernetes/pkg/api/util
TODO: This GetVersion/GetGroup arrangement is temporary and will be replaced with a GroupAndVersion type.
TODO: This GetVersion/GetGroup arrangement is temporary and will be replaced with a GroupAndVersion type.
_workspace/src/k8s.io/kubernetes/pkg/api/v1
Package v1 is the v1 version of the API.
Package v1 is the v1 version of the API.
_workspace/src/k8s.io/kubernetes/pkg/api/validation
Package validation has functions for validating the correctness of api objects and explaining what is wrong with them when they aren't valid.
Package validation has functions for validating the correctness of api objects and explaining what is wrong with them when they aren't valid.
_workspace/src/k8s.io/kubernetes/pkg/apimachinery
Package apimachinery contains the generic API machinery code that is common to both server and clients.
Package apimachinery contains the generic API machinery code that is common to both server and clients.
_workspace/src/k8s.io/kubernetes/pkg/apimachinery/registered
Package to keep track of API Versions that can be registered and are enabled in api.Scheme.
Package to keep track of API Versions that can be registered and are enabled in api.Scheme.
_workspace/src/k8s.io/kubernetes/pkg/apis/authorization/install
Package install installs the experimental API group, making it available as an option to all of the API encoding/decoding machinery.
Package install installs the experimental API group, making it available as an option to all of the API encoding/decoding machinery.
_workspace/src/k8s.io/kubernetes/pkg/apis/autoscaling/install
Package install installs the experimental API group, making it available as an option to all of the API encoding/decoding machinery.
Package install installs the experimental API group, making it available as an option to all of the API encoding/decoding machinery.
_workspace/src/k8s.io/kubernetes/pkg/apis/batch/install
Package install installs the batch API group, making it available as an option to all of the API encoding/decoding machinery.
Package install installs the batch API group, making it available as an option to all of the API encoding/decoding machinery.
_workspace/src/k8s.io/kubernetes/pkg/apis/componentconfig/install
Package install installs the experimental API group, making it available as an option to all of the API encoding/decoding machinery.
Package install installs the experimental API group, making it available as an option to all of the API encoding/decoding machinery.
_workspace/src/k8s.io/kubernetes/pkg/apis/extensions/install
Package install installs the experimental API group, making it available as an option to all of the API encoding/decoding machinery.
Package install installs the experimental API group, making it available as an option to all of the API encoding/decoding machinery.
_workspace/src/k8s.io/kubernetes/pkg/apis/metrics/install
Package install installs the metrics API group, making it available as an option to all of the API encoding/decoding machinery.
Package install installs the metrics API group, making it available as an option to all of the API encoding/decoding machinery.
_workspace/src/k8s.io/kubernetes/pkg/auth/user
Package user contains utilities for dealing with simple user exchange in the auth packages.
Package user contains utilities for dealing with simple user exchange in the auth packages.
_workspace/src/k8s.io/kubernetes/pkg/capabilities
package capbabilities manages system level capabilities
package capbabilities manages system level capabilities
_workspace/src/k8s.io/kubernetes/pkg/client/cache
Package cache is a client-side caching mechanism.
Package cache is a client-side caching mechanism.
_workspace/src/k8s.io/kubernetes/pkg/client/metrics
Package metrics provides utilities for registering client metrics to Prometheus.
Package metrics provides utilities for registering client metrics to Prometheus.
_workspace/src/k8s.io/kubernetes/pkg/client/record
Package record has all client logic for recording and reporting events.
Package record has all client logic for recording and reporting events.
_workspace/src/k8s.io/kubernetes/pkg/client/typed/generated/core/unversioned
Package unversioned has the automatically generated clients for unversioned resources.
Package unversioned has the automatically generated clients for unversioned resources.
_workspace/src/k8s.io/kubernetes/pkg/client/typed/generated/extensions/unversioned
Package unversioned has the automatically generated clients for unversioned resources.
Package unversioned has the automatically generated clients for unversioned resources.
_workspace/src/k8s.io/kubernetes/pkg/client/unversioned
Package unversioned contains the implementation of the client side communication with the Kubernetes master.
Package unversioned contains the implementation of the client side communication with the Kubernetes master.
_workspace/src/k8s.io/kubernetes/pkg/client/unversioned/auth
Package auth defines a file format for holding authentication information needed by clients of Kubernetes.
Package auth defines a file format for holding authentication information needed by clients of Kubernetes.
_workspace/src/k8s.io/kubernetes/pkg/client/unversioned/clientcmd
Package clientcmd provides one stop shopping for building a working client from a fixed config, from a .kubeconfig file, from command line flags, or from any merged combination.
Package clientcmd provides one stop shopping for building a working client from a fixed config, from a .kubeconfig file, from command line flags, or from any merged combination.
_workspace/src/k8s.io/kubernetes/pkg/controller
Package controller contains code for controllers (like the replication controller).
Package controller contains code for controllers (like the replication controller).
_workspace/src/k8s.io/kubernetes/pkg/controller/framework
Package framework implements all the grunt work involved in running a simple controller.
Package framework implements all the grunt work involved in running a simple controller.
_workspace/src/k8s.io/kubernetes/pkg/conversion
Package conversion provides go object versioning.
Package conversion provides go object versioning.
_workspace/src/k8s.io/kubernetes/pkg/conversion/queryparams
Package queryparams provides conversion from versioned runtime objects to URL query values
Package queryparams provides conversion from versioned runtime objects to URL query values
_workspace/src/k8s.io/kubernetes/pkg/credentialprovider
Package credentialprovider supplies interfaces and implementations for docker registry providers to expose their authentication scheme.
Package credentialprovider supplies interfaces and implementations for docker registry providers to expose their authentication scheme.
_workspace/src/k8s.io/kubernetes/pkg/fieldpath
Package fieldpath supplies methods for extracting fields from objects given a path to a field.
Package fieldpath supplies methods for extracting fields from objects given a path to a field.
_workspace/src/k8s.io/kubernetes/pkg/fields
Package fields implements a simple field system, parsing and matching selectors with sets of fields.
Package fields implements a simple field system, parsing and matching selectors with sets of fields.
_workspace/src/k8s.io/kubernetes/pkg/kubectl
Package kubectl is a set of libraries that are used by the kubectl command line tool.
Package kubectl is a set of libraries that are used by the kubectl command line tool.
_workspace/src/k8s.io/kubernetes/pkg/kubectl/resource
Package resource assists clients in dealing with RESTful objects that match the Kubernetes API conventions.
Package resource assists clients in dealing with RESTful objects that match the Kubernetes API conventions.
_workspace/src/k8s.io/kubernetes/pkg/kubelet/qos
package qos contains helper functions for quality of service.
package qos contains helper functions for quality of service.
_workspace/src/k8s.io/kubernetes/pkg/labels
Package labels implements a simple label system, parsing and matching selectors with sets of labels.
Package labels implements a simple label system, parsing and matching selectors with sets of labels.
_workspace/src/k8s.io/kubernetes/pkg/master/ports
Package ports defines ports used by various pieces of the kubernetes infrastructure.
Package ports defines ports used by various pieces of the kubernetes infrastructure.
_workspace/src/k8s.io/kubernetes/pkg/registry/generic
Package generic provides a generic object store interface and a generic label/field matching type.
Package generic provides a generic object store interface and a generic label/field matching type.
_workspace/src/k8s.io/kubernetes/pkg/registry/namespace
Package namespace provides Registry interface and it's REST implementation for storing Namespace api objects.
Package namespace provides Registry interface and it's REST implementation for storing Namespace api objects.
_workspace/src/k8s.io/kubernetes/pkg/runtime
Defines conversions between generic types and structs to map query strings to struct objects.
Defines conversions between generic types and structs to map query strings to struct objects.
_workspace/src/k8s.io/kubernetes/pkg/storage
Interfaces for database-related operations.
Interfaces for database-related operations.
_workspace/src/k8s.io/kubernetes/pkg/storage/etcd/util
Package util holds generic etcd-related utility functions that any user of ectd might want to use, without pulling in kubernetes-specific code.
Package util holds generic etcd-related utility functions that any user of ectd might want to use, without pulling in kubernetes-specific code.
_workspace/src/k8s.io/kubernetes/pkg/types
Package types implements various generic types used throughout kubernetes.
Package types implements various generic types used throughout kubernetes.
_workspace/src/k8s.io/kubernetes/pkg/util
Package util implements various utility functions used in both testing and implementation of Kubernetes.
Package util implements various utility functions used in both testing and implementation of Kubernetes.
_workspace/src/k8s.io/kubernetes/pkg/util/errors
Package errors implements various utility functions and types around errors.
Package errors implements various utility functions and types around errors.
_workspace/src/k8s.io/kubernetes/pkg/util/jsonpath
package jsonpath is a template engine using jsonpath syntax, which can be seen at http://goessner.net/articles/JsonPath/.
package jsonpath is a template engine using jsonpath syntax, which can be seen at http://goessner.net/articles/JsonPath/.
_workspace/src/k8s.io/kubernetes/pkg/util/labels
Package labels provides utilities to work with Kubernetes labels.
Package labels provides utilities to work with Kubernetes labels.
_workspace/src/k8s.io/kubernetes/pkg/util/pod
Package pod provides utilities to work with Kubernetes pod and pod templates.
Package pod provides utilities to work with Kubernetes pod and pod templates.
_workspace/src/k8s.io/kubernetes/pkg/util/rand
Package rand provides utilities related to randomization.
Package rand provides utilities related to randomization.
_workspace/src/k8s.io/kubernetes/pkg/util/sets
Package sets has auto-generated set types.
Package sets has auto-generated set types.
_workspace/src/k8s.io/kubernetes/pkg/util/wait
Package wait provides tools for polling or listening for changes to a condition.
Package wait provides tools for polling or listening for changes to a condition.
_workspace/src/k8s.io/kubernetes/pkg/version
Package version supplies version information collected at build time to kubernetes components.
Package version supplies version information collected at build time to kubernetes components.
_workspace/src/k8s.io/kubernetes/pkg/watch
Package watch contains a generic watchable interface, and a fake for testing code that uses the watch interface.
Package watch contains a generic watchable interface, and a fake for testing code that uses the watch interface.
_workspace/src/k8s.io/kubernetes/pkg/watch/json
Package json implements a simple encoder and decoder for streams of watch events over io.Writer/Readers
Package json implements a simple encoder and decoder for streams of watch events over io.Writer/Readers
_workspace/src/k8s.io/kubernetes/third_party/forked/json
Package json is forked from the Go standard library to enable us to find the field of a struct that a given JSON key maps to.
Package json is forked from the Go standard library to enable us to find the field of a struct that a given JSON key maps to.
_workspace/src/k8s.io/kubernetes/third_party/forked/reflect
Package reflect is a fork of go's standard library reflection package, which allows for deep equal with equality functions defined.
Package reflect is a fork of go's standard library reflection package, which allows for deep equal with equality functions defined.
_workspace/src/k8s.io/kubernetes/third_party/golang/template
This package is copied from Go library text/template.
This package is copied from Go library text/template.
_workspace/src/speter.net/go/exp/math/dec/inf
Package inf (type inf.Dec) implements "infinite-precision" decimal arithmetic.
Package inf (type inf.Dec) implements "infinite-precision" decimal arithmetic.
pkg
api
cmd

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL