Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: add support for helmfile in the apps model #6660

Closed
wants to merge 20 commits into from

Commits on Jan 31, 2020

  1. fix: add helper class for working with environment contexts

    * wrapping up team settings / version resolver / requirements APIs in a simpler facade
    * add a helper method with tests for resolving a chart name with optional prefix and/or repository to a canonical set of data we can use in version streams / apps framework
    
    Signed-off-by: James Strachan <[email protected]>
    jstrachan committed Jan 31, 2020
    Configuration menu
    Copy the full SHA
    ce6ab1c View commit details
    Browse the repository at this point in the history
  2. fix: support helmfile/helm 3 with the app framework

    so that we can add/delete/update/get apps which map to changing the `jx-apps.yml` instead of the `env/requirements.yaml` file.
    
    this implementation also lets you use helm repo prefixes to fully qualify charts; using the version stream to map prefixes <-> URLs.
    
    e.g. to add flagger/cert manager you can do:
    
    ```
    jx add app jetstack/cert-manager
    jx add app flagger/flagger
    
    ```
    
    Signed-off-by: James Strachan <[email protected]>
    jstrachan committed Jan 31, 2020
    Configuration menu
    Copy the full SHA
    3e540a9 View commit details
    Browse the repository at this point in the history
  3. fix: lets resolve fully qualified charts for helmfile

    and reuse the version stream prefixes for repositories in the generated helmfile
    
    also lets add a diff based test case to verify we generate the right helmfile
    
    Signed-off-by: James Strachan <[email protected]>
    jstrachan committed Jan 31, 2020
    Configuration menu
    Copy the full SHA
    c441ae3 View commit details
    Browse the repository at this point in the history
  4. fix: add version defaulting from the version stream

    so that we always use a fixed version in the generated helmfiles
    
    Signed-off-by: James Strachan <[email protected]>
    jstrachan committed Jan 31, 2020
    Configuration menu
    Copy the full SHA
    ab161fa View commit details
    Browse the repository at this point in the history
  5. fix: improve handling of local charts in helmfile generation

    Signed-off-by: James Strachan <[email protected]>
    jstrachan committed Jan 31, 2020
    Configuration menu
    Copy the full SHA
    d9f504f View commit details
    Browse the repository at this point in the history
  6. fix: add version stream defaults for apps in helmfile

    so that we can default things like namespace / phase / values.yaml* files across cluster configurations via the Version Stream
    
    Signed-off-by: James Strachan <[email protected]>
    jstrachan committed Jan 31, 2020
    Configuration menu
    Copy the full SHA
    f05a967 View commit details
    Browse the repository at this point in the history
  7. fix: lets allow helmfile to be abled via env vars

    Signed-off-by: James Strachan <[email protected]>
    jstrachan committed Jan 31, 2020
    Configuration menu
    Copy the full SHA
    2cd5171 View commit details
    Browse the repository at this point in the history
  8. fix: rebased with latest jx

    also ensured we can default the boot phase from the defaults in the version stream
    
    Signed-off-by: James Strachan <[email protected]>
    jstrachan committed Jan 31, 2020
    Configuration menu
    Copy the full SHA
    5ae4e0b View commit details
    Browse the repository at this point in the history
  9. chore: fix hound warnings

    Signed-off-by: James Strachan <[email protected]>
    jstrachan committed Jan 31, 2020
    Configuration menu
    Copy the full SHA
    8820ffa View commit details
    Browse the repository at this point in the history
  10. fix: add missing classifications

    to fix lint failure
    
    Signed-off-by: James Strachan <[email protected]>
    jstrachan committed Jan 31, 2020
    Configuration menu
    Copy the full SHA
    a81936e View commit details
    Browse the repository at this point in the history
  11. chore: fix failing test broken due to rebase

    Signed-off-by: James Strachan <[email protected]>
    jstrachan committed Jan 31, 2020
    Configuration menu
    Copy the full SHA
    4968833 View commit details
    Browse the repository at this point in the history
  12. chore: regenerated

    Signed-off-by: James Strachan <[email protected]>
    jstrachan committed Jan 31, 2020
    Configuration menu
    Copy the full SHA
    ca0939d View commit details
    Browse the repository at this point in the history
  13. chore: fix some tests broken due to rebase

    Signed-off-by: James Strachan <[email protected]>
    jstrachan committed Jan 31, 2020
    Configuration menu
    Copy the full SHA
    3209fe7 View commit details
    Browse the repository at this point in the history
  14. fix: refactor ApplicationConfig => AppConfig

    so we use Apps rather than Application to refer to the apps framework and the config for `jx-apps.yml` to avoid confusion
    
    Signed-off-by: James Strachan <[email protected]>
    jstrachan committed Jan 31, 2020
    Configuration menu
    Copy the full SHA
    c7d0454 View commit details
    Browse the repository at this point in the history
  15. fix: regression in jx add app when not using helmfile

    to more cleanly differentiate between local chart name and full chart name (with repo prefix)
    
    Signed-off-by: James Strachan <[email protected]>
    jstrachan committed Jan 31, 2020
    Configuration menu
    Copy the full SHA
    bce4142 View commit details
    Browse the repository at this point in the history
  16. fix: lets improve the EnvironmentContext API

    so that we can give an indication of if we prefer local requirements files (for early stages in boot) versus commands used after boot such as (get|add|upgrade|delete) apps
    
    Signed-off-by: James Strachan <[email protected]>
    jstrachan committed Jan 31, 2020
    Configuration menu
    Copy the full SHA
    e213c49 View commit details
    Browse the repository at this point in the history
  17. fix: regression in jx upgrade app

    lets make sure we populate the repository from the team settings/default repo
    
    Signed-off-by: James Strachan <[email protected]>
    jstrachan committed Jan 31, 2020
    Configuration menu
    Copy the full SHA
    84c5288 View commit details
    Browse the repository at this point in the history
  18. fix: lets polish the code to be more clear on chart names

    as we can support full chart names or local chart names; so lets be more specific which name we are using in the code
    
    Signed-off-by: James Strachan <[email protected]>
    jstrachan committed Jan 31, 2020
    Configuration menu
    Copy the full SHA
    61a2300 View commit details
    Browse the repository at this point in the history
  19. fix: polish the code based on review

    thanks @pmuir for your review
    
    Signed-off-by: James Strachan <[email protected]>
    jstrachan committed Jan 31, 2020
    Configuration menu
    Copy the full SHA
    b0ed159 View commit details
    Browse the repository at this point in the history
  20. fix: add the suggestions from @pmuir

    thanks @pmuir
    
    Signed-off-by: James Strachan <[email protected]>
    jstrachan committed Jan 31, 2020
    Configuration menu
    Copy the full SHA
    272c3d5 View commit details
    Browse the repository at this point in the history