origin

package module
v0.2.1 Latest Latest
Warning

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

Go to latest
Published: Jan 28, 2015 License: Apache-2.0 Imports: 0 Imported by: 0

README

OpenShift Application Platform

GoDoc Travis

This is the source repository for OpenShift 3, based on top of Docker containers and the Kubernetes container cluster manager. OpenShift adds developer and operational centric tools top of Kubernetes to enable rapid application development, easy deployment and scaling, and long-term lifecycle maintenance for small and large teams and applications.

Features:

  • Push source code to the platform and have deployments automatically occur
  • Easy to use client tools for building web applications from source code
    • Templatize the components of your system, reuse them, and iteratively deploy them over time
  • Centralized administration and management of application component libraries
    • Roll out changes to software stacks to your entire organization in a controlled fashion
  • Team and user isolation of containers, builds, and network communication in an easy multi-tenancy system
    • Limit, track, and manage the resources teams are using

Learn More:

For questions or feedback, reach us on IRC on #openshift-dev on Freenode or post to our mailing list.

NOTE: OpenShift is in alpha and is not yet intended for production use. However we welcome feedback, suggestions, and testing as we approach our first beta.

Security Warning!!!

OpenShift is a system which runs Docker containers on your machine. In some cases (build operations and the registry service) it does so using privileged containers. Those containers access your host's Docker daemon and perform docker build and docker push operations. As such, you should be aware of the inherent security risks associated with performing docker run operations on arbitrary images as they have effective root access. This is particularly relevant when running the OpenShift as a node directly on your laptop or primary workstation. Only run code you trust.

For more information on the security of containers, see these articles:

Running untrusted containers will become less scary as improvements are made upstream to Docker and Kubernetes, but until then please be conscious of the images you run. Consider using images from trusted parties, building them yourself on OpenShift, or only running containers that run as non-root users.

Getting Started

The simplest way to run OpenShift Origin is in a Docker container:

$ docker run -d --name "openshift-origin" --net=host --privileged \
    -v /var/run/docker.sock:/var/run/docker.sock \
    -v /tmp/openshift:/tmp/openshift \
    openshift/origin start

(you'll need to create the /tmp/openshift directory the first time).

Once the container is started, you can jump into a console inside the container and run the CLI.

$ docker exec -it openshift-origin bash
$ ln -s /var/lib/openshift/openshift.local.certificates/admin/.kubernetes_auth $HOME/.kubernetes_auth
$ osc --help
Start Developing

You can develop locally on your host or with a virtual machine, or if you want to just try out OpenShift download the latest Linux server, or Windows and Mac OS X client pre-built binaries.

First, get up and running with the Contributing Guide.

Once setup with a Go development environment and Docker, you can:

  1. Build the source code

    $ make clean build
    
  2. Start the OpenShift server

    $ make run
    
  3. In another terminal window, switch to the directory and start an app:

    $ cd $GOPATH/src/github.com/openshift/origin
    $ _output/local/go/bin/openshift cli create -f examples/hello-openshift/hello-pod.json
    

In your browser, go to http://localhost:6061 and you should see 'Welcome to OpenShift'.

What's Just Happened?

The example above starts the 'openshift/hello-openshift' Docker image inside a Docker container, but managed by OpenShift and Kubernetes.

OpenShift brings all of these pieces (and the client) together in a single, easy to use binary. The following examples show the other OpenShift specific features that live above the Kubernetes runtime like image building and deployment flows.

Next Steps

We highly recommend trying out the OpenShift walkthrough, which shows some of the lower level pieces of of OpenShift that will be the foundation for user applications. The walkthrough is accompanied by a blog series on blog.openshift.com that goes into more detail. It's a great place to start, albeit at a lower level than OpenShift 2.

Both OpenShift and Kubernetes have a strong focus on documentation - see the following for more information about them:

You can see some other examples of using Kubernetes at a lower level - stay tuned for more high level OpenShift examples as well:

Troubleshooting

If you run into difficulties running OpenShift, start by reading through the troubleshooting guide.

API

The OpenShift APIs are exposed at https://localhost:8443/osapi/v1beta1/*.

  • Builds
  • https://localhost:8443/osapi/v1beta1/builds
  • https://localhost:8443/osapi/v1beta1/buildConfigs
  • https://localhost:8443/osapi/v1beta1/buildLogs
  • https://localhost:8443/osapi/v1beta1/buildConfigHooks
  • Deployments
  • https://localhost:8443/osapi/v1beta1/deployments
  • https://localhost:8443/osapi/v1beta1/deploymentConfigs
  • Images
  • https://localhost:8443/osapi/v1beta1/images
  • https://localhost:8443/osapi/v1beta1/imageRepositories
  • https://localhost:8443/osapi/v1beta1/imageRepositoryMappings
  • Templates
  • https://localhost:8443/osapi/v1beta1/templateConfigs
  • Routes
  • https://localhost:8443/osapi/v1beta1/routes
  • Projects
  • https://localhost:8443/osapi/v1beta1/projects
  • Users
  • https://localhost:8443/osapi/v1beta1/users
  • https://localhost:8443/osapi/v1beta1/userIdentityMappings
  • OAuth
  • https://localhost:8443/osapi/v1beta1/accessTokens
  • https://localhost:8443/osapi/v1beta1/authorizeTokens
  • https://localhost:8443/osapi/v1beta1/clients
  • https://localhost:8443/osapi/v1beta1/clientAuthorizations

The Kubernetes APIs are exposed at https://localhost:8443/api/v1beta1/*:

  • https://localhost:8443/api/v1beta1/pods
  • https://localhost:8443/api/v1beta1/services
  • https://localhost:8443/api/v1beta1/replicationControllers
  • https://localhost:8443/api/v1beta1/operations

OpenShift and Kubernetes integrate with the Swagger 2.0 API framework which aims to make it easier to document and write clients for RESTful APIs. When you start OpenShift, the Swagger API endpoint is exposed at https://localhost:8443/swaggerapi. The Swagger UI makes it easy to view your documentation - to view the docs for your local version of OpenShift start the server with CORS enabled:

$ openshift start --cors-allowed-origins=.*

and then browse to http://openshift3swagger-claytondev.rhcloud.com (which runs a copy of the Swagger UI that points to localhost:8080 by default). Expand the operations available on v1beta1 to see the schemas (and to try the API directly).

FAQ

  1. How does OpenShift relate to Kubernetes?

    OpenShift embeds Kubernetes and adds additional functionality to offer a simple, powerful, and easy-to-approach developer and operator experience for building applications in containers. Kubernetes today is focused around composing containerized applications - OpenShift adds building images, managing them, and integrating them into deployment flows. Our goal is to do most of that work upstream, with integration and final packaging occurring in OpenShift. As we iterate through the next few months, you'll see this repository focus more on integration and plugins, with more and more features becoming part of Kubernetes.

    OpenShift tracks the Kubernetes upstream at github.com/openshift/kubernetes. See the wiki in that project for more on how we manage the process of integrating prototyped features.

  2. What about geard?

    Geard started as a prototype vehicle for the next generation of the OpenShift node - as an orchestration endpoint, to offer integration with systemd, and to prototype network abstraction, routing, SSH access to containers, and Git hosting. Its intended goal is to provide a simple way of reliably managing containers at scale, and to offer administrators tools for easily composing those applications (gear deploy).

    With the introduction of Kubernetes, the Kubelet, and the pull model it leverages from etcd, we believe we can implement the pull-orchestration model described in orchestrating geard, especially now that we have a path to properly limit host compromises from affecting the cluster.
    The pull-model has many advantages for end clients, not least of which that they are guaranteed to eventually converge to the correct state of the server. We expect that the use cases the geard endpoint offered will be merged into the Kubelet for consumption by admins.

    systemd and Docker integration offers efficient and clean process management and secure logging aggregation with the system. We plan on introducing those capabilities into Kubernetes over time, especially as we work with the Docker upstream to limit the impact of the Docker daemon's parent child process relationship with containers, where death of the Docker daemon terminates the containers under it

    Network links and their ability to simplify how software connects to other containers is planned for Docker links v2 and is a capability we believe will be important in Kubernetes as well (see issue 494 for more details).

    The geard deployment descriptor describes containers and their relationships and will be mapped to deployment on top of Kubernetes. The geard commandline itself will likely be merged directly into the openshift command for all-in-one management of a cluster.

Contributing

All contributions are welcome - OpenShift uses the Apache 2 license and does not require any contributor agreement to submit patches. Please open issues for any bugs or problems you encounter, ask questions on the OpenShift IRC channel (#openshift-dev on freenode), or get involved in the Kubernetes project at the container runtime layer.

See HACKING.md for more details on developing on OpenShift including how different tests are setup.

If you want to run the test suite, make sure you have your environment from above set up, and from the origin directory run:

# run the unit tests
$ make check

# run a simple server integration test
$ hack/test-cmd.sh

# run the integration server test suite
$ hack/test-integration.sh

# run the end-to-end test suite
$ hack/test-end-to-end.sh

# run all of the tests above
$ make test

You'll need etcd installed and on your path for the integration and end-to-end tests to run, and Docker must be installed to run the end-to-end tests. To install etcd you should be able to run:

$ hack/install-etcd.sh

Some of the components of OpenShift run as Docker images, including the builders and deployment tools in images/builder/docker/* and 'images/deploy/*`. To build them locally run

$ hack/build-images.sh

License

OpenShift is licensed under the Apache License, Version 2.0.

Documentation

Overview

This is the source repository for OpenShift Origin - the best way to build, manage, and deploy applications in the cloud. The OpenShift 3.0 codebase is based around Docker images and containers and the Kubernetes container management system.

Directories

Path Synopsis
Godeps
_workspace/src/code.google.com/p/go-uuid/uuid
The uuid package generates and inspects UUIDs.
The uuid package generates and inspects UUIDs.
_workspace/src/code.google.com/p/goauth2/compute/serviceaccount
Package serviceaccount provides support for making OAuth2-authorized HTTP requests from Google Compute Engine instances using service accounts.
Package serviceaccount provides support for making OAuth2-authorized HTTP requests from Google Compute Engine instances using service accounts.
_workspace/src/code.google.com/p/goauth2/oauth
The oauth package provides support for making OAuth2-authenticated HTTP requests.
The oauth package provides support for making OAuth2-authenticated HTTP requests.
_workspace/src/code.google.com/p/goauth2/oauth/example
This program makes a call to the specified API, authenticated with OAuth2.
This program makes a call to the specified API, authenticated with OAuth2.
_workspace/src/code.google.com/p/goauth2/oauth/jwt
The jwt package provides support for creating credentials for OAuth2 service account requests.
The jwt package provides support for creating credentials for OAuth2 service account requests.
_workspace/src/code.google.com/p/goauth2/oauth/jwt/example
This program makes a read only call to the Google Cloud Storage API, authenticated with OAuth2.
This program makes a read only call to the Google Cloud Storage API, authenticated with OAuth2.
_workspace/src/code.google.com/p/google-api-go-client/compute/v1
Package compute provides access to the Compute Engine API.
Package compute provides access to the Compute Engine API.
_workspace/src/code.google.com/p/google-api-go-client/container/v1beta1
Package container provides access to the Google Container Engine API.
Package container provides access to the Google Container Engine API.
_workspace/src/code.google.com/p/google-api-go-client/googleapi
Package googleapi contains the common code shared by all Google API libraries.
Package googleapi contains the common code shared by all Google API libraries.
_workspace/src/code.google.com/p/google-api-go-client/googleapi/internal/uritemplates
Package uritemplates is a level 4 implementation of RFC 6570 (URI Template, http://tools.ietf.org/html/rfc6570).
Package uritemplates is a level 4 implementation of RFC 6570 (URI Template, http://tools.ietf.org/html/rfc6570).
_workspace/src/code.google.com/p/google-api-go-client/googleapi/transport
Package transport contains HTTP transports used to make authenticated API requests.
Package transport contains HTTP transports used to make authenticated API requests.
_workspace/src/github.com/GoogleCloudPlatform/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/github.com/GoogleCloudPlatform/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/github.com/GoogleCloudPlatform/kubernetes/pkg/api/errors/etcd
Package etcd provides conversion of etcd errors to API errors.
Package etcd provides conversion of etcd errors to API errors.
_workspace/src/github.com/GoogleCloudPlatform/kubernetes/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/GoogleCloudPlatform/kubernetes/pkg/api/meta
Package meta provides functions for retrieving API metadata from objects belonging to the Kubernetes API
Package meta provides functions for retrieving API metadata from objects belonging to the Kubernetes API
_workspace/src/github.com/GoogleCloudPlatform/kubernetes/pkg/api/testapi
Package testapi provides a helper for retrieving the KUBE_API_VERSION environment variable.
Package testapi provides a helper for retrieving the KUBE_API_VERSION environment variable.
_workspace/src/github.com/GoogleCloudPlatform/kubernetes/pkg/api/v1beta1
Package v1beta1 is the v1beta1 version of the API.
Package v1beta1 is the v1beta1 version of the API.
_workspace/src/github.com/GoogleCloudPlatform/kubernetes/pkg/api/v1beta2
Package v1beta2 is the v1beta2 version of the API.
Package v1beta2 is the v1beta2 version of the API.
_workspace/src/github.com/GoogleCloudPlatform/kubernetes/pkg/api/v1beta3
Package v1beta3 is the v1beta3 version of the API.
Package v1beta3 is the v1beta3 version of the API.
_workspace/src/github.com/GoogleCloudPlatform/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/github.com/GoogleCloudPlatform/kubernetes/pkg/apiserver
Package apiserver contains the code that provides a RESTful api service.
Package apiserver contains the code that provides a RESTful api service.
_workspace/src/github.com/GoogleCloudPlatform/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/github.com/GoogleCloudPlatform/kubernetes/pkg/capabilities
package capbabilities manages system level capabilities
package capbabilities manages system level capabilities
_workspace/src/github.com/GoogleCloudPlatform/kubernetes/pkg/client
Package client contains the implementation of the client side communication with the Kubernetes master.
Package client contains the implementation of the client side communication with the Kubernetes master.
_workspace/src/github.com/GoogleCloudPlatform/kubernetes/pkg/client/cache
Package cache is a client-side caching mechanism.
Package cache is a client-side caching mechanism.
_workspace/src/github.com/GoogleCloudPlatform/kubernetes/pkg/client/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/github.com/GoogleCloudPlatform/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/github.com/GoogleCloudPlatform/kubernetes/pkg/clientauth
Package authcfg defines a file format for holding authentication information needed by clients of Kubernetes.
Package authcfg defines a file format for holding authentication information needed by clients of Kubernetes.
_workspace/src/github.com/GoogleCloudPlatform/kubernetes/pkg/cloudprovider
Package cloudprovider supplies interfaces and implementations for cloud service providers.
Package cloudprovider supplies interfaces and implementations for cloud service providers.
_workspace/src/github.com/GoogleCloudPlatform/kubernetes/pkg/cloudprovider/controller
Package controller contains code for syncing cloud instances with minion registry
Package controller contains code for syncing cloud instances with minion registry
_workspace/src/github.com/GoogleCloudPlatform/kubernetes/pkg/cloudprovider/fake
Package fake_cloud is a test-double implementation of cloudprovider Interface, TCPLoadBalancer and Instances.
Package fake_cloud is a test-double implementation of cloudprovider Interface, TCPLoadBalancer and Instances.
_workspace/src/github.com/GoogleCloudPlatform/kubernetes/pkg/cloudprovider/gce
Package gce_cloud is an implementation of Interface, TCPLoadBalancer and Instances for Google Compute Engine.
Package gce_cloud is an implementation of Interface, TCPLoadBalancer and Instances for Google Compute Engine.
_workspace/src/github.com/GoogleCloudPlatform/kubernetes/pkg/cloudprovider/vagrant
Package vagrant_cloud is an implementation of Interface, TCPLoadBalancer and Instances for developer managed Vagrant cluster.
Package vagrant_cloud is an implementation of Interface, TCPLoadBalancer and Instances for developer managed Vagrant cluster.
_workspace/src/github.com/GoogleCloudPlatform/kubernetes/pkg/constraint
Package constraint has functions for ensuring that collections of containers are allowed to run together on a single host.
Package constraint has functions for ensuring that collections of containers are allowed to run together on a single host.
_workspace/src/github.com/GoogleCloudPlatform/kubernetes/pkg/controller
Package controller contains logic for watching and synchronizing replicationControllers.
Package controller contains logic for watching and synchronizing replicationControllers.
_workspace/src/github.com/GoogleCloudPlatform/kubernetes/pkg/conversion
Package conversion provides go object versioning and encoding/decoding mechanisms.
Package conversion provides go object versioning and encoding/decoding mechanisms.
_workspace/src/github.com/GoogleCloudPlatform/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/github.com/GoogleCloudPlatform/kubernetes/pkg/credentialprovider/gcp
Package gcp_credentials contains implementations of DockerConfigProvider for Google Cloud Platform.
Package gcp_credentials contains implementations of DockerConfigProvider for Google Cloud Platform.
_workspace/src/github.com/GoogleCloudPlatform/kubernetes/pkg/health
Package health contains utilities for health checking, as well as health status information.
Package health contains utilities for health checking, as well as health status information.
_workspace/src/github.com/GoogleCloudPlatform/kubernetes/pkg/healthz
Package healthz implements basic http server health checking.
Package healthz implements basic http server health checking.
_workspace/src/github.com/GoogleCloudPlatform/kubernetes/pkg/httplog
Package httplog contains a helper object and functions to maintain a log along with an http response.
Package httplog contains a helper object and functions to maintain a log along with an http response.
_workspace/src/github.com/GoogleCloudPlatform/kubernetes/pkg/kubecfg
Package kubecfg is a set of libraries that are used by the kubecfg command line tool.
Package kubecfg is a set of libraries that are used by the kubecfg command line tool.
_workspace/src/github.com/GoogleCloudPlatform/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/github.com/GoogleCloudPlatform/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/github.com/GoogleCloudPlatform/kubernetes/pkg/kubelet
Package kubelet is the package that contains the libraries that drive the Kubelet binary.
Package kubelet is the package that contains the libraries that drive the Kubelet binary.
_workspace/src/github.com/GoogleCloudPlatform/kubernetes/pkg/kubelet/config
Reads the pod configuration from the Kubernetes apiserver.
Reads the pod configuration from the Kubernetes apiserver.
_workspace/src/github.com/GoogleCloudPlatform/kubernetes/pkg/kubelet/envvars
Package envvars is the package that build the environment variables that kubernetes provides to the containers run by it.
Package envvars is the package that build the environment variables that kubernetes provides to the containers run by it.
_workspace/src/github.com/GoogleCloudPlatform/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/github.com/GoogleCloudPlatform/kubernetes/pkg/master
Package master contains code for setting up and running a Kubernetes cluster master.
Package master contains code for setting up and running a Kubernetes cluster master.
_workspace/src/github.com/GoogleCloudPlatform/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/github.com/GoogleCloudPlatform/kubernetes/pkg/proxy
Package proxy implements the layer-3 network proxy.
Package proxy implements the layer-3 network proxy.
_workspace/src/github.com/GoogleCloudPlatform/kubernetes/pkg/proxy/config
Package config provides decoupling between various configuration sources (etcd, files,...) and the pieces that actually care about them (loadbalancer, proxy).
Package config provides decoupling between various configuration sources (etcd, files,...) and the pieces that actually care about them (loadbalancer, proxy).
_workspace/src/github.com/GoogleCloudPlatform/kubernetes/pkg/registry/binding
Package binding contains the middle layer logic for bindings.
Package binding contains the middle layer logic for bindings.
_workspace/src/github.com/GoogleCloudPlatform/kubernetes/pkg/registry/controller
Package controller provides Registry interface and it's RESTStorage implementation for storing ReplicationController api objects.
Package controller provides Registry interface and it's RESTStorage implementation for storing ReplicationController api objects.
_workspace/src/github.com/GoogleCloudPlatform/kubernetes/pkg/registry/endpoint
Package endpoint provides Registry interface and it's RESTStorage implementation for storing Endpoint api objects.
Package endpoint provides Registry interface and it's RESTStorage implementation for storing Endpoint api objects.
_workspace/src/github.com/GoogleCloudPlatform/kubernetes/pkg/registry/etcd
Package etcd provides etcd backend implementation for storing PodRegistry, ControllerRegistry and ServiceRegistry api objects.
Package etcd provides etcd backend implementation for storing PodRegistry, ControllerRegistry and ServiceRegistry api objects.
_workspace/src/github.com/GoogleCloudPlatform/kubernetes/pkg/registry/event
Package event provides Registry interface and it's REST implementation for storing Event api objects.
Package event provides Registry interface and it's REST implementation for storing Event api objects.
_workspace/src/github.com/GoogleCloudPlatform/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/github.com/GoogleCloudPlatform/kubernetes/pkg/registry/generic/etcd
Package etcd has a generic implementation of a registry that stores things in etcd.
Package etcd has a generic implementation of a registry that stores things in etcd.
_workspace/src/github.com/GoogleCloudPlatform/kubernetes/pkg/registry/minion
Package minion provides Registry interface and implementation for storing Minions.
Package minion provides Registry interface and implementation for storing Minions.
_workspace/src/github.com/GoogleCloudPlatform/kubernetes/pkg/registry/pod
Package pod provides Registry interface and it's RESTStorage implementation for storing Pod api objects.
Package pod provides Registry interface and it's RESTStorage implementation for storing Pod api objects.
_workspace/src/github.com/GoogleCloudPlatform/kubernetes/pkg/registry/service
Package service provides Registry interface and it's RESTStorage implementation for storing Service api objects.
Package service provides Registry interface and it's RESTStorage implementation for storing Service api objects.
_workspace/src/github.com/GoogleCloudPlatform/kubernetes/pkg/runtime
Package runtime includes helper functions for working with API objects that follow the kubernetes API object conventions, which are: 0.
Package runtime includes helper functions for working with API objects that follow the kubernetes API object conventions, which are: 0.
_workspace/src/github.com/GoogleCloudPlatform/kubernetes/pkg/scheduler
Package scheduler contains a generic Scheduler interface and several implementations.
Package scheduler contains a generic Scheduler interface and several implementations.
_workspace/src/github.com/GoogleCloudPlatform/kubernetes/pkg/service
Package service provides EndpointController implementation to manage and sync service endpoints.
Package service provides EndpointController implementation to manage and sync service endpoints.
_workspace/src/github.com/GoogleCloudPlatform/kubernetes/pkg/tools
Package tools implements general tools which depend on the api package.
Package tools implements general tools which depend on the api package.
_workspace/src/github.com/GoogleCloudPlatform/kubernetes/pkg/ui
package ui contains static data files compiled to go, and utilities for accessing them.
package ui contains static data files compiled to go, and utilities for accessing them.
_workspace/src/github.com/GoogleCloudPlatform/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/github.com/GoogleCloudPlatform/kubernetes/pkg/util/config
Package config provides utility objects for decoupling sources of configuration and the actual configuration state.
Package config provides utility objects for decoupling sources of configuration and the actual configuration state.
_workspace/src/github.com/GoogleCloudPlatform/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/github.com/GoogleCloudPlatform/kubernetes/pkg/util/exec
Package exec provides an injectable interface and implementations for running commands.
Package exec provides an injectable interface and implementations for running commands.
_workspace/src/github.com/GoogleCloudPlatform/kubernetes/pkg/util/iptables
Package iptables provides an interface and implementations for running iptables commands.
Package iptables provides an interface and implementations for running iptables commands.
_workspace/src/github.com/GoogleCloudPlatform/kubernetes/pkg/util/mount
Package mount defines an interface to mounting filesystems.
Package mount defines an interface to mounting filesystems.
_workspace/src/github.com/GoogleCloudPlatform/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/github.com/GoogleCloudPlatform/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/github.com/GoogleCloudPlatform/kubernetes/pkg/version/verflag
Package verflag defines utility functions to handle command line flags related to version of Kubernetes.
Package verflag defines utility functions to handle command line flags related to version of Kubernetes.
_workspace/src/github.com/GoogleCloudPlatform/kubernetes/pkg/volume
Package volume includes internal representations of external volume types as well as utility methods required to mount/unmount volumes to kubelets.
Package volume includes internal representations of external volume types as well as utility methods required to mount/unmount volumes to kubelets.
_workspace/src/github.com/GoogleCloudPlatform/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/github.com/GoogleCloudPlatform/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
This package is used to register algorithm provider plugins.
This is the default algorithm provider for the scheduler.
Package factory can set up a scheduler.
_workspace/src/github.com/RangelReale/osincli/example/osin
To test with the osin samples, change the RedirectUri to "http://localhost:14001/appauth" in osin/examples/teststorage.to
To test with the osin samples, change the RedirectUri to "http://localhost:14001/appauth" in osin/examples/teststorage.to
_workspace/src/github.com/coreos/etcd/metrics
Package metrics provides both a means of generating metrics and the ability to send metric data to a graphite endpoint.
Package metrics provides both a means of generating metrics and the ability to send metric data to a graphite endpoint.
_workspace/src/github.com/coreos/etcd/mod
mod is the entry point to all of the etcd modules.
mod is the entry point to all of the etcd modules.
Extensions to the standard "os" package.
_workspace/src/github.com/coreos/etcd/third_party/code.google.com/p/gogoprotobuf/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/coreos/etcd/third_party/github.com/coreos/go-systemd/journal
Package journal provides write bindings to the systemd journal
Package journal provides write bindings to the systemd journal
_workspace/src/github.com/coreos/etcd/third_party/github.com/goraft/raft/protobuf
Package protobuf is a generated protocol buffer package.
Package protobuf is a generated protocol buffer package.
_workspace/src/github.com/coreos/etcd/third_party/github.com/gorilla/context
Package gorilla/context stores values shared during a request lifetime.
Package gorilla/context stores values shared during a request lifetime.
_workspace/src/github.com/coreos/etcd/third_party/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/coreos/etcd/third_party/github.com/mreiferson/go-httpclient
Provides an HTTP Transport that implements the `RoundTripper` interface and can be used as a built in replacement for the standard library's, providing: * connection timeouts * request timeouts This is a thin wrapper around `http.Transport` that sets dial timeouts and uses Go's internal timer scheduler to call the Go 1.1+ `CancelRequest()` API.
Provides an HTTP Transport that implements the `RoundTripper` interface and can be used as a built in replacement for the standard library's, providing: * connection timeouts * request timeouts This is a thin wrapper around `http.Transport` that sets dial timeouts and uses Go's internal timer scheduler to call the Go 1.1+ `CancelRequest()` API.
_workspace/src/github.com/coreos/etcd/third_party/github.com/rcrowley/go-metrics
Go port of Coda Hale's Metrics library <https://github.com/rcrowley/go-metrics> Coda Hale's original work: <https://github.com/codahale/metrics>
Go port of Coda Hale's Metrics library <https://github.com/rcrowley/go-metrics> Coda Hale's original work: <https://github.com/codahale/metrics>
Metrics output to StatHat.
_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/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/elazarl/go-bindata-assetfs
assetfs allows packages to serve static content embedded with the go-bindata tool with the standard net/http package.
assetfs allows packages to serve static content embedded with the go-bindata tool with the standard net/http package.
_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/testing
Package testing provides a fake implementation of the Docker API, useful for testing purpose.
Package testing provides a fake implementation of the Docker API, useful for testing purpose.
_workspace/src/github.com/getsentry/raven-go
Package raven implements a client for the Sentry error logging service.
Package raven implements a client for the Sentry error logging service.
_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/google/cadvisor/client
TODO(cAdvisor): Package comment.
TODO(cAdvisor): Package comment.
_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 gorilla/context stores values shared during a request lifetime.
Package gorilla/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/gorilla/securecookie
Package gorilla/securecookie encodes and decodes authenticated and optionally encrypted cookie values.
Package gorilla/securecookie encodes and decodes authenticated and optionally encrypted cookie values.
_workspace/src/github.com/gorilla/sessions
Package gorilla/sessions provides cookie and filesystem sessions and infrastructure for custom session backends.
Package gorilla/sessions provides cookie and filesystem sessions and infrastructure for custom session backends.
_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/jteeuwen/go-bindata
bindata converts any file into managable Go source code.
bindata converts any file into managable Go source code.
_workspace/src/github.com/openshift/source-to-image/pkg/sti/api
Provides types used for processing sti requests.
Provides types used for processing sti requests.
_workspace/src/github.com/pkg/profile
Package profile provides a simple way to manage runtime/pprof profiling of your Go application.
Package profile provides a simple way to manage runtime/pprof profiling of your Go application.
_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
pflag is a drop-in replacement for Go's flag package, implementing POSIX/GNU-style --flags.
pflag is a drop-in replacement for Go's flag package, implementing POSIX/GNU-style --flags.
_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/net/html
Package html implements an HTML5-compliant tokenizer and parser.
Package html implements an HTML5-compliant tokenizer and parser.
_workspace/src/golang.org/x/net/html/atom
Package atom provides integer codes (also known as atoms) for a fixed set of frequently occurring HTML strings: tag names and attribute keys such as "p" and "id".
Package atom provides integer codes (also known as atoms) for a fixed set of frequently occurring HTML strings: tag names and attribute keys such as "p" and "id".
_workspace/src/golang.org/x/net/html/charset
Package charset provides common text encodings for HTML documents.
Package charset provides common text encodings for HTML documents.
_workspace/src/golang.org/x/net/websocket
Package websocket implements a client and server for the WebSocket protocol as specified in RFC 6455.
Package websocket implements a client and server for the WebSocket protocol as specified in RFC 6455.
_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/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.
Package assets includes all of the static assets used by the OpenShift console and login flows.
Package assets includes all of the static assets used by the OpenShift console and login flows.
cmd
Package cmd contains the executables for OpenShift 3.
Package cmd contains the executables for OpenShift 3.
openshift
Package main contains the main executable for OpenShift 3 `openshift` which is an integrated client and server binary.
Package main contains the main executable for OpenShift 3 `openshift` which is an integrated client and server binary.
Package examples contains sample applications for trying out the concepts in OpenShift 3.
Package examples contains sample applications for trying out the concepts in OpenShift 3.
pkg
Package pkg contains all of the libraries for OpenShift 3.
Package pkg contains all of the libraries for OpenShift 3.
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.
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.
api/v1beta1
Package v1beta1 is the v1beta1 version of the API.
Package v1beta1 is the v1beta1 version of the API.
auth
Package auth provides mechanisms for providing authorization and authentication to OpenShift
Package auth provides mechanisms for providing authorization and authentication to OpenShift
auth/authenticator/password/basicauthpassword
Implements authenticator.Password by making a BasicAuth call to a remote endpoint, and extracting user information from a JSON response.
Implements authenticator.Password by making a BasicAuth call to a remote endpoint, and extracting user information from a JSON response.
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
build
Package build contains the OpenShift build system.
Package build contains the OpenShift build system.
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.
build/webhook
Package webhook contains code for managing and serving webhook services, providing post push events to trigger builds.
Package webhook contains code for managing and serving webhook services, providing post push events to trigger builds.
build/webhook/generic
Package generic contains webhook.Plugin implementation of a generic webhooks for use in testing and/or other ad/hoc usage
Package generic contains webhook.Plugin implementation of a generic webhooks for use in testing and/or other ad/hoc usage
build/webhook/github
Package github contains webhook.Plugin implementation of github webhooks according to https://developer.github.com/webhooks/
Package github contains webhook.Plugin implementation of github webhooks according to https://developer.github.com/webhooks/
cmd/client
Package client contains the implementation of the client side communication with the Kubernetes master.
Package client contains the implementation of the client side communication with the Kubernetes master.
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.
cmd/infra/builder
Package builder contains commands for running a Source-to-Images or Docker build from within a container
Package builder contains commands for running a Source-to-Images or Docker build from within a container
cmd/server
Package server contains the main command for launching an OpenShift server.
Package server contains the main command for launching an OpenShift server.
cmd/server/etcd
Package etcd provides objects for creating an embedded etcd server process.
Package etcd provides objects for creating an embedded etcd server process.
cmd/server/kubernetes
Package kubernetes provides objects for starting the Kubernetes master and node code.
Package kubernetes provides objects for starting the Kubernetes master and node code.
cmd/server/origin
Package origin provides objects for creating an OpenShift Origin server
Package origin provides objects for creating an OpenShift Origin server
cmd/util
Package util provides utility functions for the cmd packages.
Package util provides utility functions for the cmd packages.
config/api
Package api defines and registers types for Config objects.
Package api defines and registers types for Config objects.
deploy
Package deploy contains logic for watching and synchronizing deployments from configuration.
Package deploy contains logic for watching and synchronizing deployments from configuration.
deploy/controller
Package controller contains all the controllers which taken together implement the deployment system's behavior.
Package controller contains all the controllers which taken together implement the deployment system's behavior.
deploy/controller/factory
Package factory contains code used to create deployment controllers.
Package factory contains code used to create deployment controllers.
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.
deploy/registry/deploy
Package deploy provides Registry interface and its RESTStorage implementation for storing Deployment api objects.
Package deploy provides Registry interface and its RESTStorage implementation for storing Deployment api objects.
deploy/registry/deployconfig
Package deployconfig provides Registry interface and its RESTStorage implementation for storing DeploymentConfig api objects.
Package deployconfig provides Registry interface and its RESTStorage implementation for storing DeploymentConfig api objects.
deploy/registry/etcd
Package etcd provides etcd backend implementation for storing Deployment and DeploymentConfig objects
Package etcd provides etcd backend implementation for storing Deployment and DeploymentConfig objects
deploy/rollback
Package rollback contains the code for generating DeploymentConfigs representing rollbacks as well as REST support for API clients.
Package rollback contains the code for generating DeploymentConfigs representing rollbacks as well as REST support for API clients.
deploy/strategy
Package strategy contains implementations of core deployment strategies.
Package strategy contains implementations of core deployment strategies.
image
Package image provides support for images, image repositories, and image repository mappings, including RESTStorage implementations and registries.
Package image provides support for images, image repositories, and image repository mappings, including RESTStorage implementations and registries.
oauth/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.
oauth/osintypes
osintypes holds types that are used to interpret responses from the RangelReale osin server.
osintypes holds types that are used to interpret responses from the RangelReale osin server.
project
Package project provides support for projects including RESTStorage implementations and registries.
Package project provides support for projects including RESTStorage implementations and registries.
router
Package router contains the abstraction for router backend implementations.
Package router contains the abstraction for router backend implementations.
router/controller
Package controller contains the router controller.
Package controller contains the router controller.
router/controller/factory
Package factory contains code used to create the router controller.
Package factory contains code used to create the router controller.
template
Package template provides TemplateProcessor, capable of transforming Template objects into Config objects.
Package template provides TemplateProcessor, capable of transforming Template objects into Config objects.
template/api
Package api defines and registers types for Template objects.
Package api defines and registers types for Template objects.
template/api/validation
Package validation has functions for validating the correctness of Template objects and explaining what is wrong with them when they aren't valid.
Package validation has functions for validating the correctness of Template objects and explaining what is wrong with them when they aren't valid.
template/generator
Package generator defines GeneratorInterface interface and implements some random value generators.
Package generator defines GeneratorInterface interface and implements some random value generators.
template/generator/examples
Package examples demonstrates possible implementation of some random value generators.
Package examples demonstrates possible implementation of some random value generators.
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.
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.
plugins
Package test contains cross-functional test suites for OpenShift 3.
Package test contains cross-functional test suites for OpenShift 3.
integration
Package integration contains integration tests for OpenShift Origin.
Package integration contains integration tests for OpenShift Origin.

Jump to

Keyboard shortcuts

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