tilt-apiserver

command module
v0.3.0 Latest Latest
Warning

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

Go to latest
Published: Apr 9, 2021 License: Apache-2.0 Imports: 10 Imported by: 0

README

tilt-apiserver

Build Status GoDoc

Why

Tilt is a toolkit for building multi-service dev environments.

Tilt offers many first-party data types like Docker builds and Kubernetes appliers. But long-term, we want to make it easier for users to define their own data types and behaviors.

The future of Tilt is a simple model consisting of very few types of building blocks, and a mix of uniformity and versatility whereby using the same simple elements one can build complex systems and different types of functionality.

The Tilt apiserver is the base layer of that model.

What

The Tilt apiserver is a full-fledged Kubernetes API server. You can query it with kubectl or any standard Kubernetes tooling.

This repo offers:

  • A builder for registering data types, storing them in memory, and serving them up on any port on HTTP
  • An example data type
  • An example of generated client code

This repo is intended primarily for consumption by https://github.com/tilt-dev/tilt, where we define the first-party data types and controllers that Tilt needs.

How

To develop the API server, install Tilt and run:

tilt up

This will present you with a list of common commands we run in development.

You may prefer running commands in the terminal.

To run on port 9443:

make run-apiserver

To create a new data object:

kubectl --kubeconfig kubeconfig apply -f manifest.yaml

Credits

Big thanks to the Kubernetes community for all the help and documentation on how to use their API infrastructure. We could not have built this without inspiration from:

License

Copyright 2020 The Tilt Dev Authors

Licensed under the Apache License, Version 2.0

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
cmd
controllers
pkg
apis/core
Package api is the internal version of the API.
Package api is the internal version of the API.
apis/core/v1alpha1
+k8s:openapi-gen=true +k8s:deepcopy-gen=package,register +k8s:conversion-gen=github.com/tilt-dev/tilt-apiserver/pkg/apis/core +k8s:defaulter-gen=TypeMeta +groupName=core.tilt.dev
+k8s:openapi-gen=true +k8s:deepcopy-gen=package,register +k8s:conversion-gen=github.com/tilt-dev/tilt-apiserver/pkg/apis/core +k8s:defaulter-gen=TypeMeta +groupName=core.tilt.dev
generated/clientset/versioned
This package has the automatically generated clientset.
This package has the automatically generated clientset.
generated/clientset/versioned/fake
This package has the automatically generated fake clientset.
This package has the automatically generated fake clientset.
generated/clientset/versioned/scheme
This package contains the scheme of the automatically generated clientset.
This package contains the scheme of the automatically generated clientset.
generated/clientset/versioned/typed/core/v1alpha1
This package has the automatically generated typed clients.
This package has the automatically generated typed clients.
generated/clientset/versioned/typed/core/v1alpha1/fake
Package fake has the automatically generated clients.
Package fake has the automatically generated clients.
server/builder
Package builder contains a builder for creating a new Kubernetes apiserver.
Package builder contains a builder for creating a new Kubernetes apiserver.
server/builder/resource
Package resource defines interfaces that may be implemented by types -- e.g.
Package resource defines interfaces that may be implemented by types -- e.g.
server/builder/resource/resourcerest
Package resourcerest defines interfaces for resource REST implementations.
Package resourcerest defines interfaces for resource REST implementations.
server/builder/resource/resourcestrategy
Package resourcestrategy defines interfaces for customizing how resources are converted and stored.
Package resourcestrategy defines interfaces for customizing how resources are converted and stored.
server/builder/resource/util
Package util contains a set of utility functions that help plumbing new kubernetes resources into an aggregated apiserver.
Package util contains a set of utility functions that help plumbing new kubernetes resources into an aggregated apiserver.
server/builder/rest
Package rest contains libraries for implementing resource request handlers.
Package rest contains libraries for implementing resource request handlers.
storage/filepath
Package filepath provides filepath storage related utilities.
Package filepath provides filepath storage related utilities.

Jump to

Keyboard shortcuts

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