Skip to content
Snippets Groups Projects
  1. Jan 12, 2018
    • bryanl's avatar
      Construct apimachinery version · 57a4192f
      bryanl authored
      
      Using `Version()` as a string leaves a preprocessed version tag in the
      ksonnet version. Construct a new version using the `Major` and `Minor`
      fields. Adds short SHA1 from k8s.io/apimachinery as well. SHA1 is pulled
      from `dep status`.
      
      Re: #250
      
      Signed-off-by: default avatarbryanl <bryanliles@gmail.com>
      57a4192f
  2. Dec 21, 2017
  3. Dec 03, 2017
  4. Dec 02, 2017
  5. Nov 29, 2017
    • Jessica Yuen's avatar
      Rewrite integration tests to support ksonnet.next application structure · d8734edd
      Jessica Yuen authored
      
      ksonnet.next is centered around the application directory structure
      generated during init, however the integration tests are still tightly
      tied to the model from kubecfg, where the '-f' flag was the standard and
      environments were not introduced.
      
      This commit will add test fixtures to mock a ksonnet application
      structure, and rewrite the existing apply and delete tests to support
      this new model.
      
      Signed-off-by: default avatarJessica Yuen <im.jessicayuen@gmail.com>
      d8734edd
    • Alex Clemmer's avatar
      :muscle: Make env-name a required param in "env commands" · 4923a3f5
      Alex Clemmer authored
      Fixes #100.
      
      This commit will transition the ksonnet CLI away from accepting either a
      list of files or an environment (or both). A detailed explanation
      follows.
      
      Historically, the ksonnet CLI has had several "environment commands".
      These commands (e.g., `apply`, `diff`, `delete`, `show`, etc.) all took
      one of the following:
      
        1. An environment name. For example, `apply us-west/dev` will `apply`
           everything in the `components/` directory to the cluster denoted by
           `us-west/dev`.
        2. A set of files. For example, `apply -f foo.jsonnet -f bar.jsonnet`
           would apply those two specific Jsonnet files to the server
           specified by the current context in $KUBECONFIG.
        3. Both an environment name and a set of files. For example,
           `apply us-west/dev -f foo.jsonnet -f bar.jsonnet` would `apply`
           those two files to the cluster denoted by the `us-west/dev`
           environment.
      
      This "duality" remained in place primarily because it was important ...
      4923a3f5
  6. Nov 16, 2017
  7. Nov 15, 2017
  8. Oct 17, 2017
  9. Sep 02, 2017
    • Alex Clemmer's avatar
      Implement parser and evaluator for TextMate snippets · 434d1f67
      Alex Clemmer authored
      The Language Server Protocol (LSP) implements TextMate's "snippets"
      feature. Originally imagined as a kind of Mad Libs for code, with users
      given a code template and some number of "placeholder" blanks to fill
      out, which was done by using tab to switch between them, LSP team
      attempted to standardize this feature across language servers, so that
      language authors had a well-specified interface to provide "snippets" to
      any editor implementing the LSP.
      
      Today, the LSP specification of TextMate snippets forms the bedrock of the
      ksonnet prototype specification. Specifically, though users will
      eventually be able to use Jsonnet to generate prototypes, they are
      compiled down to the TextMate snippets specification.
      
      This commit begins this process by introducing an implementation of the
      LSP snippets specification, including both a parser and an evaluator.
      
      For more details, see the extensive comment in `interface.go`.
      434d1f67
  10. Aug 30, 2017
    • Alex Clemmer's avatar
      Make delete, diff, show, update, and validate aware of ksonnet apps · af3f0f6c
      Alex Clemmer authored
      The ksonnet.next design doc specifies the core kubecfg verbs (i.e., the
      ones listed above) to all have the form:
      
        kubecfg <verb> [<env-name>|-f <file-or-dir>]
      
      That is to say, each of these should be able to take either an
      environment name, or a `-f` flag with a list of files and directories to
      apply `verb` on. In the case of the environment, we will apply `verb` to
      every component in the `components/` directory.
      
      This commit implements this behavior for all these verbs.
      af3f0f6c
    • Angus Lees's avatar
      Add basic integration test framework · b01b1647
      Angus Lees authored
      Currently contains basic "update" and "delete" tests.
      More cases will be added in followup patches.
  11. Aug 15, 2017
    • Alex Clemmer's avatar
      First cut at core app metadata management facilities · 57351df8
      Alex Clemmer authored
      Much of the tooling build around ksonnet applications will be powered by
      metadata presented in a structured directory format. This is similar in
      principle to how Hugo and Rails structure web applications.
      
      This commit will begin the process of introducing a FS-based state
      machine that manages this directory structure. Primarily, this involves
      introducing:
      
      1. Init routines for the directory structure
      2. Routines to search parent directories for a ksonnet application
         (similar to how git does this with repositories)
      
      Initially, the directory structures looks like this:
      
        app-name/
          .ksonnet/   Metadata for ksonnet
          components/ Top-level Kubernetes objects defining application
          lib/        User-written .libsonnet files
          vendor/     Mixin libraries, prototypes
      
      The `.ksonnet` file marks the application root, making it possible to
      search parent directories for the root.
      
      As time continues, more verbs will be introduced to manipulate this
      metadata (including, e.g., vendoring dependencies, searching prototypes,
      and so on).
      57351df8
  12. Aug 08, 2017
  13. Jun 30, 2017
  14. Jun 27, 2017
  15. Jun 22, 2017
  16. May 19, 2017
  17. May 17, 2017
  18. May 12, 2017