Skip to content

Releases: garden-io/garden

v0.10.3-alpha.1

31 Jul 15:20
Compare
Choose a tag to compare
v0.10.3-alpha.1 Pre-release
Pre-release
chore(release): bump version to v0.10.3-alpha.1

v0.10.2

23 Jul 21:25
Compare
Choose a tag to compare

It's Tuesday and that means release time! With this release we add the ability to uninstall system services and other cluster-wide resources created by the Kubernetes provider via the uninstall command:

garden --env=<environment-name> plugins kubernetes uninstall-garden-services

The release also contains several bugfixes, in particular around version control and handling of included/excluded files.

Finally, to celebrate our 1000th PR, CEO and funny person @edvald added a special for command "getting contributors". Try it out before we deprecate garden get eysi. (You'll find the relevant commits under the aptly named Improvement heading below.)

Changelog

Features

  • k8s: add uninstall-garden-services command (93521763)

Bug Fixes

  • config: ignore empty docs in garden.yml files (d66cf5de)
  • container: respect include field when checking for Dockerfile (0df7a8dd)
  • core: task dependencies were not automatically run ahead of tests (46fb474f)
  • core: ensure untracked files from .gardenignore are excluded (a10bb289)
  • core: properly handle joining K8s api server url and path (8a56d199)
  • k8s: update deprecated Deployment API versions ahead of 1.16 (7cab3711)
  • k8s: remote building broken with certain cluster network configs (bf9a25ee)
  • log: error when logging object with circular refs (61bf65ff)
  • vcs: fixed support for GitHub SSH URLs and added tests (6e40f18c)
  • vcs: garden.yml changes now only affect relevant module version (#1009) (2ff4edfb)
  • vcs: allow ssh for git repo URLs (fef8ea5b)

Improvement

  • core: crucial enhancements to command (4dbdc154)
  • core: make contributor more visible in CLI (0f9a7ffc)

v0.10.2-alpha.0

23 Jul 17:54
Compare
Choose a tag to compare
v0.10.2-alpha.0 Pre-release
Pre-release
chore(release): release v0.10.2-alpha.0

v0.10.1

17 Jul 16:29
Compare
Choose a tag to compare

First of all, a big THANK YOU to our community for your contributions to this release! ❤️

Whether it's by helping us track down bugs, by submitting PRs (@theRealWardo, @johnraz, @dev-kpyc), or by giving us some much valued feedback.

The most requested feature after our last release was better secret support. With this release we take the first step towards that by allowing you to reference Kubernetes secrets in container modules. See our Kubernetes Secrets example for more details. We've also added the ability to only run certain groups of tests (or no tests at all) when in dev mode with the --test-name and --skip-tests flags. For example: garden dev --test-names=unit

Furthermore, we've made some changes to our release process. First of all, we'll now be uploading an edge release to Github on every merge to master. Second, we're moving to a weekly release cycle with releases every Tuesday afternoon (CET). This will allow us to respond faster to your issues and feature requests.

Beyond that, this one was all about squashing bugs! 🐛 🔨

Changelog

Features

  • added glob and test names to dev/test commands (df31b772)
  • implemented --skip-tests flag (dde191f6)
  • add env var for setting max task concurrency (c3383d23)
  • container: allow referencing Kubernetes secrets in container modules (4c603c38)

Improvement

  • updated PATH to include all gcloud bin-s (413fd02a)
  • dashboard: add taskCancelled support to stack graph page (76c154b6)
  • k8s: cluster cleanup command now also cleans build sync dir (69f41982)
  • k8s: fail fast on CreateContainerConfigError (557be338)

Bug Fixes

  • various issues with path handling on Windows (ea001d40)
  • declare latest version of fsevents explicity (f733afc6)
  • test fixes and docs update (7616fa38)
  • garden can again be run from project subdirs (560604f1)
  • hot-reloading and remote builds didn't work on Windows (40133353)
  • removed single quote from CREATE TABLE statement (a4b33c5e)
  • emit taskComplete when adding cached tasks (e1d49f26)
  • cli: fix log inconsistencies (12c242a9)
  • core: rsync error when running from dist build (70c3e595)
  • core: respect includes/excludes when syncing to build directory (becfcd39)
  • helm: add missing command directive to task spec (065b2840)
  • k8s: error when copying TLS secrets between namespaces (623a72d3)
  • k8s: skip setMinikubeDockerEnv when vm-driver=None (0825c5a0)
  • k8s: ensure images built remotely are tagged before publishing (63a2bbab)
  • k8s: respect in-cluster builder storage size configuration (6a0c61c2)
  • k8s: make sure Service Endpoints are ready at end of status checks (4678f400)
  • k8s: build --force would error with cluster-docker and no Dockerfile (710e8458)
  • k8s: always flatten resources of kind List (b6368f76)
  • k8s: support client cert authentication (2a3848ab)
  • k8s: cluster registry only worked when service CIDR was 10.x.x.x/y (609b6b1b)
  • task-graph: fix task deduplication (6979f8b5)
  • task-graph: use latest version for dedup (83803970)
  • task-gtaph: emit taskCancelled events (b6d8846f)

v0.10.1-alpha.4

17 Jul 13:21
Compare
Choose a tag to compare
v0.10.1-alpha.4 Pre-release
Pre-release
chore(release): bump version to 0.10.1-alpha.4

v0.10.1-alpha.3

17 Jul 10:14
Compare
Choose a tag to compare
v0.10.1-alpha.3 Pre-release
Pre-release
chore(release): bump version to 0.10.1-alpha.3

v0.10.1-2

16 Jul 17:03
Compare
Choose a tag to compare
v0.10.1-2 Pre-release
Pre-release
chore(release): bump version to v0.10.1-2

v0.10.1-0

10 Jul 17:22
Compare
Choose a tag to compare
v0.10.1-0 Pre-release
Pre-release
chore(release): bump version to v0.10.1-0

Note, the version in garden-service/package.json and
garden-service/package-lock.json is v0.10.1 instead of v0.10.1-0. This
is due to a bug in lerna that causes lerna bootstrap to fail when the
version number is a pre-release. This shouldn't matter since we'll
update the version anyway when we make the proper release.

v0.10.0

27 Jun 17:28
ab01ca5
Compare
Choose a tag to compare

Yowza! This may be our biggest release ever.

When we first started working on Garden, eighteen months ago, we knew that developing systems locally was a stop-gap solution. With 0.10, we're taking another leap towards providing the best possible developer experience by letting you move your development workflow off your machine, into shared development clusters.

We've published a blog post describing our motivation behind all this.

Shared development environments

Garden can now handle all building and testing in-cluster. This means you no longer need to run Kubernetes locally, but instead have a shared development cluster for your entire team. Each developer has a private namespace in the cluster, but shares the same build and test caches.

Think of how much time you, your team, and CI system waste downloading and building the same images, or testing the exact same combination of code. By moving your development to a shared cluster, each of these operations only needs to happen once.

For more information, see how to prep your cluster, and how to configure Garden to build remotely.

Combine dev and CI

Another advantage of shared development environments is that you can call garden test from CI, pointing it at the same environment you developed in. This will spin up your stack and run all your tests—most of which will be cached from development. You can also use Garden in CI to spin up preview environments, or tear them down.

This greatly simplifies the average CI set-up, as you can get rid of all your scripts that would usually handle this, and no longer need to maintain separate configuration for development and testing.

For more information, see how you can use Garden in CI!

And then some!

We’ve also included a large number of major and minor improvements and fixes,
including much improved deployment status checks for Kubernetes workloads. We now “fail faster” and give much more information when issues are detected while deploying.

For the full list of changes (which is rather long), get a cup of coffee and peruse the changelog below:

BREAKING CHANGES

k8s providers no longer default to /bin/sh -c as the entrypoint when running pods. This applies to tasks, tests and the run module command.

The --loglevel CLI option is now called --log-level

When using OpenFaaS with local-kubernetes you now need to use the local-openfaas provider, instead of openfaas. You also need to
manually delete any existing <my namespace>--openfaas namespaces from your cluster after upgrading.

Features

  • implement version check (9b077946)
  • config: add local.username and project.name config keys (8fb9b5fb)
  • container: allow configuring # of replicas for container services (ad7c973b)
  • k8s: add mechanism for cleaning up unused images in clusters (773365c3)
  • add analytics (#819) (a2fa49ec)
  • Implement get debug-info command (44f666e0)
  • cli: add a dedicated options command (8dd53003)
  • container: add configurable CPU and memory limits (77e71df5)
  • container: add command option (afbd9539)
  • core: providers can depend on and reference configs from each other (a67f5220)
  • core: add persistent ID for each working copy (b49ecc37)
  • core: allow .yaml endings for Garden config files (3a9195a0)
  • k8s: add Kaniko as a builder option (2ccd0395)
  • k8s: optionally enable ingress controller for remote k8s (6f321dcd)
  • k8s: in-cluster building (5d351025)

Improvement

  • k8s: bump default limits and sizes for cluster builder (6ec9f0a7)
  • config: allow non-string values to be output directly (52ad5faf)
  • config: allow chained conditionals in template strings (095e9436)
  • config: explicitly validate sub-paths when applicable (6343603b)
  • install: add install script for linux/mac and update docs (dbeb7544)
  • k8s: add explicit cluster-init command for remote clusters (0a70a068)
  • k8s: more robust and useful deployment status checks (4f1ff3be)
  • k8s: don't require manual init when only Tiller is missing (693189b4)
  • plugins: define schemas for module outputs and add docs (5f656ac2)
  • windows: check for Hyper-V and ask if user wants Docker (21024f82)
  • get source maps working in error tracebacks (36959cea)
  • cli: rename --loglevel to --log-level + refactor log init (de5e78a3)
  • dashboard: add graph filters to global context (73e3f5ca)
  • dashboard: add task and test info pane to overview page (e97b8fa7)
  • dashboard: add dependencies to each entity card (8b0a4305)
  • dashboard: view ingress on lg screens instead of xl (bd28965e)
  • k8s: always require manual init for remote clusters (4201dc53)
  • service: add project root to config dump (520aadf3)

Performance Improvements

  • improve performance of logs command (65afeef8)

Bug Fixes

  • update messaging when checking version (afebab2d)
  • openfaas: regression in openfaas provider init (bca7a626)
  • wrong base image for garden-gcloud container build (c4d2d818)
  • container entrypoint executable path should be passed as string (80e7cf18)
  • cli: don't log internal fields in error detail (5e02c5df)
  • cli: error log could crash if error details contained circular refs (b6bdf870)
  • core: chokidar watcher on mac could segfault after reloading configs (b950823c)
  • delete-env: delete services before calling cleanupEnvironment (e98485da)
  • install: Add -UseBasicParsing to Windows installer (86dacd99)
  • k8s: enable publishing container modules when using remote builders (5cfeca24)
  • k8s: error when test+task result log exceeded 1MB (04a5a36a)
  • k8s: don't store full version object with test+task results (c4e4059d)
  • k8s: status checks on resources outside of app namespace would fail (13accce4)
  • k8s: unreachable code when kubectl diff errors (29ae098a)
  • k8s: handle List resources in manifests properly (487637fc)
  • test: fixed flaky test by adding sort (8f8b0a49)
  • vcs: error when stat-ing deleted file that's still in git index (3c21ba4a)
  • windows: latest zeit/pkg produced broken binary for Windows (868a0d66)
  • revisions to command option (51fc76ab)
  • include fixes, docs and refactoring for #778 (14063c06)
  • crash when deploy and docker not installed (540edb02)
  • some commands terminate with double new line (86fa9816)
  • improved error messages for call command (2286a17e)
  • always ignore .garden ([bb0e2df](https://gi...
Read more

v0.10.0-0

13 Jun 23:49
Compare
Choose a tag to compare
v0.10.0-0 Pre-release
Pre-release
chore(release): release v0.10.0-0