devspace

DevSpace - The Fastest Developer Tool for Kubernetes ⚡ Automate your deployment workflow with DevSpace and develop software directly inside Kubernetes.

APACHE-2.0 License

Downloads
5.8K
Stars
4.1K
Committers
101

Bot releases are hidden (Show)

devspace - v5.4.1

Published by FabianKramm almost 4 years ago

Fixes

  • Fixes an issue where devspace was wrongly tagged as a beta release
devspace - v5.4.0

Published by FabianKramm almost 4 years ago

New Features

  • Added source: command to variables. It is now possible to retrieve variable values from commands, e.g.:
images:
  database:
    image: "mysql:${MYSQL_VERSION}"
vars:
- name: MYSQL_VERSION
  source: command
  command: echo
  args: ["5.5"]
  • New DEVSPACE_GIT_BRANCH predefined variable that holds the current git branch
  • New option tagsAppendRandom that automatically adds a random suffix to each tag and avoids the rebuilding problem described in #1188

Fixes

  • Fixes an issue where docker client creation for minikube could fail on windows and was not shown in DevSpace
  • Fixes an issue where local paths were wrong when using devspace dev --config other-folder/devspace.yaml (#1226)
  • Fixes a race condition in sync where the initial sync wouldn't wait for uploading a single file (#1223)
  • Fixes an issue where devspace restart wouldn't work without running devspace dev or devspace sync prior
  • Fixes an issue where pod restarts could lead to a timeout during devspace deploy/dev --wait
  • Improves the error message when injecting of the restart helper fails
devspace - v5.3.0

Published by FabianKramm almost 4 years ago

New Features

  • New section pullSecrets that lets you define additional image pull secrets devspace should create in the target namespace (for more informations take a look at the docs):
images: ...
deployments: ...
pullSecrets: 
# Pull secret for the registry my-registry.com:5000
- registry: my-registry.com:5000 
  username: my-user
  password: my-password
  # Name of the pull secret
  secret: my-pull-secret-name
  # Service accounts to add this pull secret to
  serviceAccounts: 
    - default
    - my-other-service-account
  • New options merge and strategicMerge in profiles which can now be used as an alternative to replace and patches (for more informations take a look at the docs):
images:
  backend:
    image: john/devbackend
  backend-debugger:
    image: john/debugger
deployments:
- name: backend
  helm:
    componentChart: true
    values:
      containers:
      - image: john/devbackend
      - image: john/debugger
profiles:
- name: production
  merge:
    images:
      # Change the backend image
      backend:
        image: john/prodbackend
    # Override deployments
    deployments:
    - name: backend
      helm:
        componentChart: true
        values:
          containers:
          - image: john/prodbackend
  • New events for plugins & more context information from where a command was called (we also have now a complete plugin guide in the docs)
  • New flag --skip-deploy for devspace deploy to use it for building images or creating pull secrets only
  • New option hooks.[*].os to execute hooks only on certain operating systems
  • New events for dependencies and pull secrets for hooks

Other Changes

  • devspace dev -i is now deprecated and will be removed with the next major devspace version. Please use profiles instead
  • Fixes an issue where hooks were not correctly parsed in plugins
  • Removed some unused dependencies
devspace - v5.3.0-beta.0

Published by FabianKramm almost 4 years ago

devspace - v5.2.2

Published by FabianKramm almost 4 years ago

Changes

  • Updates kaniko default version to v1.3.0
  • Fixes an issue in kaniko build where the target was not set correctly
  • Fixes an issue in kaniko build on windows where the restart helper couldn't be injected
  • Fixes an issue in kaniko build on windows where files were not executable
devspace - v5.2.2-beta.0

Published by FabianKramm almost 4 years ago

Changes

  • Updates kaniko default version to v1.3.0
  • Fixes an issue in kaniko build where the target was not set correctly
  • Fixes an issue in kaniko build on windows where the restart helper couldn't be injected
  • Fixes an issue in kaniko build on windows where files were not executable
devspace - v5.2.1

Published by FabianKramm almost 4 years ago

Changes

  • Updated the component-chart to version v0.7.0 and added several new config options to initContainers (#1207)
  • If devspace cannot load a kubernetes config it falls back to the in cluster config if there is any (#1205)
  • devspace will now stream logs from all containers in a pod that have a matching image (#1211)
  • Fixed an issue where in certain circumstances a nil pointer panic could occur when devspace tries to ask a question
devspace - v5.2.0

Published by FabianKramm almost 4 years ago

From v5.2.0 onward devspace uses the locally installed helm cli instead of helm as a library. If no available helm v2 or v3 binary was found, devspace will automatically install helm.

New Features

  • Adds deployments.*.helm.upgradeArgs, deployments.*.helm.templateArgs and deployments.*.helm.deleteArgs to helm options (#1192)
  • Adds a new environment variable DEVSPACE_SKIP_VERSION_CHECK to skip version check (#1198)
  • Adds a new config option profiles.*.parents that can define multiple parent profiles, e.g.: (#1199)
version: v1beta9
profiles:
- name: multi-parents
  # New field that applies the profile deployments first and then the profile images
  parents:
  - profile: deployments
  - profile: images
- name: deployments
  replace:
   deployments:
   - name: my-deployment
     helm:
       componentChart: true
       values:
         containers:
         - name: test
- name: images
  replace:
    images:
      test:
        image: mydockeruser/devspace
        createPullSecret: true
  • Adds a new config option profiles.*.parents.*.source that can define profiles that lie in a different devspace.yaml: (#1200)
version: v1beta9
profiles:
- name: dev
  parents:
  - profile: images
    source:
      path: other-folder # devspace.yaml will be automatically appended to the path (same syntax as with dependencies)
      # or load from url
      # path: https://raw.githubusercontent.com/my-org/my-repo/master/devspace.yaml
      # or load from git
      # git: https://github.com/devspace-cloud/devspace.git 
  - profile: deployments
    source:
      path: other-folder-2

Other

  • Fixes an issue where add patches wouldn't work as expected
  • Upgrade kubernetes to v1.19.2
  • Removes helm v3 as a code dependency
devspace - v5.2.0-beta.0

Published by FabianKramm almost 4 years ago

devspace now internally uses the locally installed helm cli instead of helm as a library. If no available helm v2 or v3 binary was found, devspace will automatically install helm and use this binary.

New Features

  • Adds deployments.*.helm.upgradeArgs, deployments.*.helm.templateArgs and deployments.*.helm.deleteArgs to helm options (#1192)
  • Adds a new environment variable DEVSPACE_SKIP_VERSION_CHECK to skip version check (#1198)
  • Adds a new config option profiles.*.parents that can define multiple parent profiles, e.g.: (#1199)
version: v1beta9
profiles:
- name: multi-parents
  # New field that applies the profile deployments first and then the profile images
  parents:
  - profile: deployments
  - profile: images
- name: deployments
  replace:
   deployments:
   - name: my-deployment
     helm:
       componentChart: true
       values:
         containers:
         - name: test
- name: images
  replace:
    images:
      test:
        image: mydockeruser/devspace
        createPullSecret: true
  • Adds a new config option profiles.*.parents.*.source that can define profiles that lie in a different devspace.yaml: (#1200)
version: v1beta9
profiles:
- name: dev
  parents:
  - profile: images
    source:
      path: other-folder # devspace.yaml will be automatically appended to the path (same syntax as with dependencies)
      # or load from url
      # path: https://raw.githubusercontent.com/my-org/my-repo/master/devspace.yaml
      # or load from git
      # git: https://github.com/devspace-cloud/devspace.git 
  - profile: deployments
    source:
      path: other-folder-2

Other

  • Fixes an issue where add patches wouldn't work as expected
  • Upgrade kubernetes to v1.19.2
  • Removes helm v3 as a code dependency
devspace - v5.1.2

Published by FabianKramm about 4 years ago

Fixes

  • Fixes an issue where devspace ui would return an 404 error
devspace - v5.1.1

Published by FabianKramm about 4 years ago

Fixes

  • Fixes an issue where the terminal didn't have the correct size (#1190)
  • Fixed an issue where larger files couldn't be forwarded correctly in remote port forwarding

Other

  • Updates the component chart to v0.6.0
devspace - v5.1.0

Published by FabianKramm about 4 years ago

New Features

  • Added a new flag --print-sync to devspace dev that prints the sync output to the console and prevents any other output (#1111)
  • Added devspace save vars and devspace restore vars that save or restore devspace config variables from kubernetes secrets
  • Added a new config option dev.sync.initialCompareBy that allows you to specify that a file should only be synced if the file size has changed during initial sync (#1177)
  • Added a new command devspace restart that triggers a restart for all containers where dev.sync.onUpload.restartContainer was specified (#1161)
  • Added an option dev.sync.throttleChangeDetection to configure throttling of downstream change detection
  • Added --save-vars and --restore-vars as flags to devspace dev and devspace deploy

Changes

  • devspace will now throttle remote change detection for each scanned 100 files by 5ms by default. This should drastically decrease CPU usage of the devspacehelper binary. For large folders the throttle amount can be configured by the new option dev.sync. throttleChangeDetection
  • Added new github docker registry option to devspace init
  • Upgrade devspace messages are now only displayed at certain commands instead of every command

Fixes

  • Fixes an issue where upgrade message could be displayed where they shouldn't
  • Disable klog messages for the devspace command (#1179)
devspace - v5.0.3

Published by FabianKramm about 4 years ago

Changes

  • Adds a new flag --port to devspace open where the exact port can be specified (#1166)
  • Adds a new flag --host to devspace ui where the hostname can be specified that devspace should listen on (#1163)
  • Adds a new predefined variable DEVSPACE_PROFILE that contains the current selected profile (#1160)
  • Add startupProbe for component-chart (#1157)
  • Fixes an issue where the wrong path was taken for DEVSPACE_GIT_COMMIT, when specified in a dependency (#1165)
devspace - v5.0.2

Published by FabianKramm about 4 years ago

Changes

  • Fixes an issue where the Dockerfile was not correctly parsed (#1153)
  • Added a search bar for the devspace ui to filter pods (#1133)
devspace - v5.0.1

Published by FabianKramm about 4 years ago

Changes

  • Fixes an issue where the Dockerfile was not correctly parsed (#1153)
  • Added a search bar for the devspace ui to filter pods (#1133)
devspace - v5.0.0

Published by FabianKramm about 4 years ago

BREAKING CHANGES

devspace-cloud related functionality was completely removed from devspace and moved into a separate devspace plugin devspace-cloud-plugin. To add devspace-cloud functionality again, execute:

devspace add plugin https://github.com/devspace-cloud/devspace-cloud-plugin

After installing the plugin, devspace should work the same way as before.

In addition to the devspace-cloud plugin, there is a new loft-devspace-plugin that will add loft cli functionality to devspace, similar to the devspace-cloud plugin. You can install the loft plugin via:

devspace add plugin https://github.com/loft-sh/loft-devspace-plugin

NOTE: Please make sure that you do not install the loft and devspace-cloud plugin at the same time, since they add commands that overlap with each other e.g. devspace login that will cause problems.

Plugins

Added plugins to devspace that extend the functionality of devspace by additional commands, variables and command extensions. A plugin in devspace is defined by a plugin.yaml that specifies the additional functionality and a platform dependent binary that executes that functionality.

devspace can add plugins via git, local path or an URL:

# Add plugin from git repo
devspace add plugin https://github.com/devspace-cloud/devspace-cloud-plugin

# Add plugin from url
devspace add plugin https://raw.githubusercontent.com/devspace-cloud/devspace-cloud-plugin/master/plugin.yaml

# Add plugin from local path
devspace add plugin ./my-folder/plugin.yaml

A plugin.yaml can look like this:

# Name of the plugin as shown in devspace list plugins and used for
# devspace update plugin and devspace remove plugin
name: devspace-cloud
# The semantic version of the plugin
version: 0.0.2
# Additional commands that are added to devspace
commands:
    # This will add the command devspace login
  - name: "login"
     # this args are prepended to the plugin binary, so when a user will call 'devspace login test test2 --flag 123'
     # devspace will call the plugin binary with 'plugin-binary plugin binary arg test test2 --flag 123'
    baseArgs: ["plugin", "binary", "arg"] 
    usage: "short description of command"
    description: "long description of command"
    # You can also add commands under already existing devspace subcommands
    # This will add the devspace command: devspace add provider
  - name: "provider"
    baseArgs: ["add", "provider"]
    subCommand: "add"
# Hooks are called before certain already existing commands are executed 
# in devspace, for example devspace dev
hooks:
    # will be executed when devspace dev is run by the user
  - event: dev 
    # this will call the plugin binary before devspace dev is called with: 'plugin-binary do something'
    baseArgs: ["do", "something"]
# You can also add predefined variables for the config via plugins
vars:
    # the name of the predefined variable 
    # that can be used within any devspace.yaml
  - name: DEVSPACE_SPACE
    # this will call the plugin binary when resolving this variable and expects the variable
    # output on stdout. Furthermore devspace will set the env variables 
    # DEVSPACE_PLUGIN_KUBE_CONTEXT_FLAG and DEVSPACE_PLUGIN_KUBE_NAMESPACE_FLAG
    # for the plugin, so the variable can change based on the supplied kube context or namespace
    baseArgs: ["vars", "space"]
# In this section the plugin binaries (or scripts) and their locations are defined
# if devspace cannot find a binary for the current runtime.GOOS and runtime.GOARCH
# it will not install the plugin
binaries:
  - os: darwin
    arch: amd64
    # can be either an URL or local path, could be also a script
    path: https://github.com/devspace-cloud/devspace-cloud-plugin/releases/download/v0.0.2/devspace-cloud-plugin-darwin-amd64
  - os: linux
    arch: amd64
    path: https://github.com/devspace-cloud/devspace-cloud-plugin/releases/download/v0.0.2/devspace-cloud-plugin-linux-amd64
  - os: linux
    arch: "386"
    path: https://github.com/devspace-cloud/devspace-cloud-plugin/releases/download/v0.0.2/devspace-cloud-plugin-linux-386
  - os: windows
    arch: amd64
    path: https://github.com/devspace-cloud/devspace-cloud-plugin/releases/download/v0.0.2/devspace-cloud-plugin-windows-amd64.exe
  - os: windows
    arch: "386"
    path: https://github.com/devspace-cloud/devspace-cloud-plugin/releases/download/v0.0.2/devspace-cloud-plugin-windows-386.exe

Other Changes

  • Added predefined variables DEVSPACE_NAMESPACE and DEVSPACE_CONTEXT (#1137)
  • Fixed an issue where kustomize was not used correctly (#1135)
devspace - v5.0.0-beta.2

Published by FabianKramm about 4 years ago

BREAKING CHANGES

devspace-cloud related functionality was completely removed from devspace and moved into a separate devspace plugin devspace-cloud-plugin. To add devspace-cloud functionality again, execute:

devspace add plugin https://github.com/devspace-cloud/devspace-cloud-plugin

After installing the plugin, devspace should work the same way as before.

In addition to the devspace-cloud plugin, there is a new loft-devspace-plugin that will add loft cli functionality to devspace, similar to the devspace-cloud plugin. You can install the loft plugin via:

devspace add plugin https://github.com/loft-sh/loft-devspace-plugin

NOTE: Please make sure that you do not install the loft and devspace-cloud plugin at the same time, since they add commands that overlap with each other e.g. devspace login that will cause problems.

Plugins

Added plugins to devspace that extend the functionality of devspace by additional commands, variables and command extensions. A plugin in devspace is defined by a plugin.yaml that specifies the additional functionality and a platform dependent binary that executes that functionality.

devspace can add plugins via git, local path or an URL:

# Add plugin from git repo
devspace add plugin https://github.com/devspace-cloud/devspace-cloud-plugin

# Add plugin from url
devspace add plugin https://raw.githubusercontent.com/devspace-cloud/devspace-cloud-plugin/master/plugin.yaml

# Add plugin from local path
devspace add plugin ./my-folder/plugin.yaml

A plugin.yaml can look like this:

# Name of the plugin as shown in devspace list plugins and used for
# devspace update plugin and devspace remove plugin
name: devspace-cloud
# The semantic version of the plugin
version: 0.0.2
# Additional commands that are added to devspace
commands:
    # This will add the command devspace login
  - name: "login"
     # this args are prepended to the plugin binary, so when a user will call 'devspace login test test2 --flag 123'
     # devspace will call the plugin binary with 'plugin-binary plugin binary arg test test2 --flag 123'
    baseArgs: ["plugin", "binary", "arg"] 
    usage: "short description of command"
    description: "long description of command"
    # You can also add commands under already existing devspace subcommands
    # This will add the devspace command: devspace add provider
  - name: "provider"
    baseArgs: ["add", "provider"]
    subCommand: "add"
# Hooks are called before certain already existing commands are executed 
# in devspace, for example devspace dev
hooks:
    # will be executed when devspace dev is run by the user
  - event: dev 
    # this will call the plugin binary before devspace dev is called with: 'plugin-binary do something'
    baseArgs: ["do", "something"]
# You can also add predefined variables for the config via plugins
vars:
    # the name of the predefined variable 
    # that can be used within any devspace.yaml
  - name: DEVSPACE_SPACE
    # this will call the plugin binary when resolving this variable and expects the variable
    # output on stdout. Furthermore devspace will set the env variables 
    # DEVSPACE_PLUGIN_KUBE_CONTEXT_FLAG and DEVSPACE_PLUGIN_KUBE_NAMESPACE_FLAG
    # for the plugin, so the variable can change based on the supplied kube context or namespace
    baseArgs: ["vars", "space"]
# In this section the plugin binaries (or scripts) and their locations are defined
# if devspace cannot find a binary for the current runtime.GOOS and runtime.GOARCH
# it will not install the plugin
binaries:
  - os: darwin
    arch: amd64
    # can be either an URL or local path, could be also a script
    path: https://github.com/devspace-cloud/devspace-cloud-plugin/releases/download/v0.0.2/devspace-cloud-plugin-darwin-amd64
  - os: linux
    arch: amd64
    path: https://github.com/devspace-cloud/devspace-cloud-plugin/releases/download/v0.0.2/devspace-cloud-plugin-linux-amd64
  - os: linux
    arch: "386"
    path: https://github.com/devspace-cloud/devspace-cloud-plugin/releases/download/v0.0.2/devspace-cloud-plugin-linux-386
  - os: windows
    arch: amd64
    path: https://github.com/devspace-cloud/devspace-cloud-plugin/releases/download/v0.0.2/devspace-cloud-plugin-windows-amd64.exe
  - os: windows
    arch: "386"
    path: https://github.com/devspace-cloud/devspace-cloud-plugin/releases/download/v0.0.2/devspace-cloud-plugin-windows-386.exe

Other Changes

  • Added predefined variables DEVSPACE_NAMESPACE and DEVSPACE_CONTEXT (#1137)
  • Fixed an issue where kustomize was not used correctly (#1135)
devspace - v4.14.0

Published by FabianKramm over 4 years ago

Changes

  • devspace now automatically creates deployment namespaces if they do not exist before deploying (#1127)
  • New config option images.*.build.kaniko.resources to support specifying the kaniko pod resources in the devspace.yaml (#1126)

Fixes

  • Fixes a security vulnerability in the devspace ui server (CVE-2020-15391, thanks to Barak Tawily and Amit De-Paz for identifying and reporting this issue) (#1128)
devspace - v4.14.0-beta.2

Published by FabianKramm over 4 years ago

Changes

  • devspace now automatically creates deployment namespaces if they do not exist before deploying (#1127)
  • New config option images.*.build.kaniko.resources to support specifying the kaniko pod resources in the devspace.yaml (#1126)

Fixes

  • Fixes a security vulnerability in the devspace ui server (CVE-2020-15391, thanks to Barak Tawily and Amit De-Paz for pointing out) (#1128)
devspace - v4.13.1

Published by FabianKramm over 4 years ago

Fixes

  • Fixes an issue in the restart helper script, where the wrong sync binary path was checked for existence (#1124)
Package Rankings
Top 4.02% on Npmjs.org
Top 4.52% on Proxy.golang.org
Badges
Extracted from project README
Join us on Slack! Join us on Slack!
Related Projects