Skip to content
Snippets Groups Projects
  1. Oct 17, 2017
  2. 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
  3. 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.
  4. 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
  5. Aug 08, 2017
  6. Jun 30, 2017
  7. Jun 27, 2017
  8. Jun 22, 2017
  9. May 19, 2017
  10. May 17, 2017
  11. May 12, 2017