containermodules? Is it for pulling or publishing images?
imagefield is specified and Garden can't find a Dockerfile for the module, Garden will use that image when deploying the module. If there is a Dockerfile, Garden will build the image from it, regardless of whether or not the
imagefield is specified.
imagefield is specified and the module has a Dockerfile, Garden will build the image from the Dockerfile and publish it to the URL specified in the
imagefield. If there's no Dockerfile, the
publishcommand will fail.
excludefields? How are they different from the project-level
module.include/module.excludefields? What about ignore files?
helmmodules to their own namespaces.
garden.ymlfile so that it is at the same level or parent to all relevant build context and use the
v-<something>versions mean, and why are they sometimes different between building and deploying?
containermodule) is generally different from the version of a service defined in the same module. This is because the service version also factors in the runtime configuration for that service, which often differs between environments, but we don't want those changes to require a rebuild of the container image.
verboseor higher. For example:
garden.ymlfile for the respective module, or in a child directory.
garden.ymlfile to the same level as the Dockerfile and use the
includedirective to tell Garden what other files belong to the module. For example, if you have the following directory structure:
garden.ymlfile at the root and define your modules likes so:
dockerfilefield. For example:
docker-daemoninstances for more build concurrency?
garden-systemnamespace directly, because Kubernetes may fail to remove persistent volumes. Instead, use this command:
cacheResult: falseis set on the task definition.
<project-name>--metadatanamespace. You can delete them manually with this command:
garden run test
garden testcommand can run all your tests, or a subset of your tests, and has a
--watchflag. It won't re-run tests that are cached unless the
--forceflag is set and it won't print the output unless the test fails. See here for the synopsis and examples.
garden run testcommand runs a single test in interactive mode regardless of whether or not it's cached. Interactive mode means that the output is streamed to the screen immediately and you can interact with it if applicable.
--interactive=falsethe default with our next major release.
buildArgsare considered a bad practice and a security risk.
kubectland by using the Kubernetes APIs directly and should therefore work with all Kubernetes clusters that implement these. Garden is committed to supporting the latest six stable versions of Kubernetes.
containermodules (e.g. annotations and labels)?
helmmodule type over
containerin terms of features?
local-kubernetesprovider defaults to installing Nginx, but the (remote)
kubernetesprovider does not install it by default.
openfaasprovider installs some components necessary for OpenFaas to work.
*.local.app.gardendomain resolves to 127.0.0.1 via our DNS provider for convenience. If you want to use a different hostname for local development, you’ll have to add the corresponding entry to your hosts file.