freshly / tuber Goto Github PK
View Code? Open in Web Editor NEWkubectl as a service
License: MIT License
kubectl as a service
License: MIT License
mostly the 404 on pulling the latest image - it tells you it 404'd, but it's unclear that the actual issue is that the build cant be found
blocked by deploying as a part of install
Right now, an end user can control anything about their namespace through .tuber
's. Custom resources, extra resources, whatever. Except for secrets and configmaps.
Secrets and configmaps and their data shouldn't be committed to code, but we should be able to tear down and recreate a tuberapp entirely from 1 - the resources tuber creates, and 2 - the resources in .tuber
.
How do we do this? Not sure.
Add encrypt
and decrypt
justfile definitions.
Something like this:
encrypt:
cd {{ invocation_directory() }}; ../bin/encrypt credentials.json
decrypt:
cd {{ invocation_directory() }}; ../bin/decrypt credentials.json.enc
tuber-apps
kubernetes secretcredentials.json
file into tuber-secrets
freshly-docker
project
Some ideas for naming
tuber install <cluster-name>
tuber configure <cluster-name>
tuber setup <cluster-name>
It's a goroutine already, we might as well add a wait
for the success of a release.
If the new pods enter crashloop, or otherwise don't run successfully, we should know about it.
Hopefully we can query on the revision, not on created pods, though.
for reasons
Is there any other configuration that an app would need to read/write to besides env vars? If not, we can drop the env
argument in the below command suggestions.
tubectl config set env NAME=VALUE
tubectl config get env NAME
tubectl config list env
Debating on the fact that people even need to know that configs are stored as Kubernetes secrets as opposed to plain config maps. It seems reasonable to group all of these commands under the name config
.
sderr
?context
?Removal of certain resources should be possible, and driven by .tuber
contents.
If you're silly and merge migrations (or anything that prereleasers handle) at the same time as invalid yamls (or otherwise a failed deploy), prerelease will run but the deploy will not.
this kills the rails app
todo: wtf how does heroku get around this
all commands should be idempotent. Should start with an audit
kubectl port-forward -n someapp `kubectl get pods -n someapp -o jsonpath="{.items[0].metadata.name}"` 8080:8080
ill have none of that
On errors during setup, created resources should be deleted
create
definitely
tuber-apps
config map, doesn't do anything else)Primarily removing a single tuber-app
Tentative plan:
Add exec.yaml
, a blank pod with no command - then
kubectl exec
's with whatever command you passed inexcept that won't work, WIP
currently panics because we suck
๐ jordan got his way
this would open the door to apps install
resulting in a deployed app. or otherwise, using deploy
like ever.
creds are used only for gcr, k8s rolebindings would still be in play
Require a cluster
or context
flag to specify which cluster to operate on. It's similar to Heroku's -a --app
flag.
Poor mans version of this is to add a confirm step before running any commands that modify the state of the cluster
any command that alters anything on the cluster should have a confirmation.
any command that reads data and does not alter anything should not require confirmation.
print context name to STDERR.
bunch of stuff changing
.tuber
directory in project rootdeployment.yaml
service.yaml
Outstanding issues (that we know of):
Docker-Content-Digest
headerThis has changed quite a bit, now that we know what we're doing with istio.
I think this is now "add cluster setup" commands - such that once you have a fresh cluster, tuber can istio-ify.
Is that best done through giving tuber access to istio-system
, and tuberizing the tuber-farm? Or.. what else?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.