- Nov 21, 2017
-
-
Jessica Yuen authored
Currently, there are limitations around the file system we are using that does not easily allow renaming of `us-west/prod` to `us-west`, or vice versa - `us-west` to `us-west/prod`. This commit will handle the logic to allow for that by moving the file contents.
-
- Nov 16, 2017
-
-
Jessica Yuen authored
Currently, creating a `dev` environment will create a file `dev.jsonnet`. Creating a `prod` environment will create a file `prod.jsonnet`. This is a little more complex and prone to error than it needs to be, especially when we are renaming environments. It will also make this file easier to refer to in documentation if we give the file a static name -- `main.jsonnet`.
-
- Nov 15, 2017
-
-
Jessica Yao authored
[docs] Add autogenerated CLI reference
-
Jessica Yao authored
-
Alex Clemmer authored
Implement `registry describe` and `dep describe`
-
Alex Clemmer authored
-
Alex Clemmer authored
The command `dep` currently broadly allows users to inspect, use, and search for packages. Currently, however, the name `dep` suggests that this functionality is scoped to dependencies. Consider, for example, the command `dep list`. A user might reasonable expect this to list all dependencies, rather than all packages, which is what it does. Another example is `dep search`, which actually searches all known packages, not all known dependencies. Hence, this commit will rename this command to simply be `pkg`.
-
Alex Clemmer authored
This commit will partially resolve #38.
-
- Nov 14, 2017
-
-
Alex Clemmer authored
`registry list` and `registry describe` were designed to behave very similarly to `prototype list` and `prototype describe`. The former command is self-explanatory, and the second does displays some documentation about the object in question. This commit will implement these commands per the spec, and is a partial fix to #38.
-
Jess authored
Add `--help` flag to `generate` and `prototype use`
-
- Nov 13, 2017
-
-
Alex Clemmer authored
When `generate` was first implemented, we made a conscious decision to not include the `--help` flag, so that we would not accidentally break templates with a parameter called `help`. But, this is unintuitive for users who want to use the `--help` flag, so in this commit we will print the help message if (1) there is a single command argument, and (2) it is either `--help` or `-h`. Fixes #21.
-
Alex Clemmer authored
Fix bug for duplicate environment params
-
Alex Clemmer authored
Provide access to ExtCodes when the '-f' flag is provided
-
Alex Clemmer authored
Use background colors for param diff
-
Jessica Yuen authored
Currently, ExtCodes are only provided when the 'env' flag is present in commands. The result is errors occuring when we run commands such as `ks show default -f components/guestbook-ui.jsonnet`, where the params ExtVar is needed. This commit fixes that scenario.
-
Jessica Yuen authored
Foreground colors were causing conflicts with user's terminal colors. i.e. Black text would show as invisible for users with a black terminal background.
-
Jessica Yuen authored
A bug existed where if `param set` was called for the same param twice, a duplicate entry was created for the component. This only occured where the component name contained a special character.
-
- Nov 10, 2017
-
-
Alex Clemmer authored
Historically, every time we've needed to write out something tabular, we've hand-rolled an ad hoc padded row writer. Yes, in each case. Such is #startuplife. The third time we did this we wrote this with bugs, and so now we are rewriting it in a general, tested function, and transitioning all places where we call this to use this function.
-
Alex Clemmer authored
Renaming environment should also rename nested .jsonnet
-
- Nov 09, 2017
-
-
Alex Clemmer authored
[bug fix] Fix optionalParam defaults
-
Jessica Yao authored
Signed-off-by:
Jessica Yao <jessica@heptio.com>
-
Jessica Yuen authored
Currently the env directory is being renamed on `env set foo --name=bar`, however the `foo.jsonnet` file also needs to be renamed to `bar.jsonnet`. This commit fixes that.
-
Alex Clemmer authored
De/serialize specification objects with YAML
-
Alex Clemmer authored
Add optional params to prototype spec
-
- Nov 08, 2017
-
-
Jess authored
Jsonnet handling of component names with special characters
-
Alex Clemmer authored
Fixes #69. Currently we allow users to specify prototypes using Jsonnet. At the head of each prototype should be a comment with semi-structured metadata, e.g., // @apiVersion 0.0.1 // @name io.ksonnet.pkg.nginx-simple // @description Deploys a simple, stateless nginx server with server // blocks (roughly equivalent // to nginx virtual hosts). The nginx container is deployed using a // Kubernetes deployment, and is exposed to a network with a service. // @param namespace string default Namespace in which to put the // application // @param name string Name to give to each of the components Critically, some metadata about params is stored using the `@param` tag, including name, type, and description, for pretty printing. This commit will introduce a new param type, `@optionalParam`. This type has a name, type, default value, and description. It is currently not possible to specify a default value with spaces, but this should be good enough for MVP.
-
Alex Clemmer authored
Fixes #48. Currently the structs `app.Spec`, `registry.Spec`, and `parts.Spec` are all serialized and deserialized using JSON instead of YAML. This commit will resolve this issue.
-
Jessica Yuen authored
Currently, if a component name contains a special character, ex: foo-bar, this translates to the jsonnet identifier: foo-bar, which is invalid syntax. This change will quote component names where there are special characters.
-
Alex Clemmer authored
Add `vendor/` to Jsonnet paths
-
Alex Clemmer authored
Pass context & overrides by reference when initiating client
-
Alex Clemmer authored
This resolves the first half of #68. When we `generate` using a prototype from a vendored dependency, it often results in a compilation error when we `apply`, because these prototypes usually depend on code that exists in the dependency, and `vendor/` is not a part of the Jsonnet search path. This commit resolves this problem by adding it to the search path.
-
Jessica Yuen authored
This fixes the bug where objects weren't being deployed to the cluster specified by the environment. This bug occurred because overrides (ex: cluster, namespace) were being lost because we weren't applying the changes to the correct override object. To fix this, we needed to pass the overrides by reference.
-
Alex Clemmer authored
Add ability to retrieve prototypes from vendor/
-
- Nov 07, 2017
-
-
Alex Clemmer authored
-
- Nov 06, 2017
-
-
Alex Clemmer authored
Add alias 'ks generate' for 'ks prototype use'
-
Alex Clemmer authored
Add rudimentary package management
-
Alex Clemmer authored
-
Alex Clemmer authored
-
Alex Clemmer authored
The ksonnet project exposes a "default" registry, `incubator`, in the ksonnet/parts repository. This commit will cause ever `ks init` command to automatically add this registry to the ksonnet application.
-
Alex Clemmer authored
The vast majority of ksonnet apps will know about at least one registry, the official ksonnet `incubator` registry. In general, managing registries can involve fairly complex logic (e.g., resolving a reference to a registry to a remote registry specification; finding all libraries exposed by a registry; and so on). This commit will introduce the `registry.Manager` abstraction, as well as an implementation for registries hosted as GitHub repositories.
-