Skip to content
Snippets Groups Projects
  1. Nov 14, 2017
  2. Nov 13, 2017
  3. Nov 10, 2017
  4. Nov 09, 2017
  5. Nov 08, 2017
    • Jess's avatar
      Merge pull request #52 from jessicayuen/hyphenated-components · c2a0ea15
      Jess authored
      Jsonnet handling of component names with special characters
    • Alex Clemmer's avatar
      Add optional params to prototype spec · ffd62b9b
      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.
      ffd62b9b
    • Alex Clemmer's avatar
      De/serialize specification objects with YAML · 56befd0f
      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.
      56befd0f
    • Jessica Yuen's avatar
      Jsonnet handling of component names with special characters · ce2d567d
      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.
      ce2d567d
    • Alex Clemmer's avatar
      Merge pull request #71 from hausdorff/vendor-path · 02b62066
      Alex Clemmer authored
      Add `vendor/` to Jsonnet paths
    • Alex Clemmer's avatar
      Merge pull request #60 from jessicayuen/env-context-fix · dfe8aafc
      Alex Clemmer authored
      Pass context & overrides by reference when initiating client
    • Alex Clemmer's avatar
      Add `vendor/` to Jsonnet paths · 5327cf5c
      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.
      5327cf5c
    • Jessica Yuen's avatar
      Pass overrides by reference when initiating client · beddf415
      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.
      beddf415
    • Alex Clemmer's avatar
      Merge pull request #63 from hausdorff/ext-proto · 06c4cc80
      Alex Clemmer authored
      Add ability to retrieve prototypes from vendor/
  6. Nov 07, 2017
  7. Nov 06, 2017
  8. Nov 04, 2017
    • Jessica Yuen's avatar
      Introduce command: `ks param diff <env1> <env2> [--component]` · 6a6704fc
      Jessica Yuen authored
      Pretty prints differences between the component parameters of two
      environments.
      
      A component flag is accepted to diff against a single component. By
      default, the diff is performed against all components.
      6a6704fc
    • Jessica Yuen's avatar
      Introduce command: 'ks param list [component] [--env=<env>]' · eabd30c5
      Jessica Yuen authored
      Pretty prints component or environment parameters.
      
      This command will display all parameters for the component specified. If
      a component is not specified, parameters for all components will be
      listed.
      
      Furthermore, parameters can be listed on a per-environment basis.
      
      Examples:
      
      List all component parameters
        ks param list
      
      List all parameters for the component "guestbook"
        ks param list guestbook
      
      List all parameters for the environment "dev"
        ks param list --env=dev
      
      List all parameters for the component "guestbook" in the environment
      "dev"
        ks param list guestbook --env=dev`,
      eabd30c5
    • Jessica Yuen's avatar
      Introduce commands: 'ks param' and 'ks param set' · 8fc6c76c
      Jessica Yuen authored
      Parameters are the customizable fields defining ksonnet components. For
      example, replica count, component name, or deployment image.
      
      Parameters are also able to be defined separately across environments.
      Meaning, this supports features to allow a "development" environment to
      only run a single replication instance for it's components, whereas
      allowing a "production" environment to run more replication instances to
      meet heavier production load demands.
      
      'ks param set' is defined as follows:
        'ks param set <component-name> <param-key> <param-value>'
      
      Examples:
      
      Updates the replica count of the 'guestbook' component to 4.
        'ks param set guestbook replicas 4'
      
      Updates the replica count of the 'guestbook' component to 2 for the
      environment 'dev'
        'ks param set guestbook replicas 2 --env=dev'
      8fc6c76c