Skip to content

CLI panics when trying to deploy bundle #5182

@agagrins

Description

@agagrins

Describe the issue

When running in CircleCI with a Docker image cimg:python3.11, and doing databricks bundle deploy --force-lock, the CLI panics

Steps to reproduce the behavior

  1. docker pull cimg/python:3.11
  2. docker run --rm -ti --mount type=bind,source=./bundle.yaml,target=/home/circleci/project/bundle.yaml,readonly cimg/python:3.11
  3. curl -fsSL https://raw.githubusercontent.com/databricks/setup-cli/main/install.sh | sudo sh
  4. databricks bundle deploy --force-lock

Expected Behavior

The asset bundle should be deployed

Actual Behavior

The asset bundle is not deployed

OS and CLI version

Docker image cimg:python3.11 and latest CLI version. It's the same for Python 3.10, and for several other images

Is this a regression?

Seems to be same same for v0.299.0, v0.298.0, and v0.297.2. Versions before that fail with the openpgp: key expired error. But yes, this whole thing used to work

Debug Logs

The specifics of the bundle config have been redacted

The Databricks CLI unexpectedly had a fatal error.
Please report this issue to Databricks in the form of a GitHub issue at:
https://github.com/databricks/cli

CLI Version: 0.299.0

Panic Payload: merge node already set

Stack Trace:
goroutine 1 [running]:
runtime/debug.Stack()
        runtime/debug/stack.go:26 +0x64
github.com/databricks/cli/cmd/root.Execute.func1()
        github.com/databricks/cli/cmd/root/root.go:117 +0x9c
panic({0x1169da0?, 0x197f3f0?})
        runtime/panic.go:783 +0x120
github.com/databricks/cli/libs/dyn/yamlloader.(*loader).loadMapping(0x4000510bf0, 0x4000561d60, {{0x4000050c30?, 0x8b314?}, 0x20?, 0x14706a0?})
        github.com/databricks/cli/libs/dyn/yamlloader/loader.go:113 +0x8f8
github.com/databricks/cli/libs/dyn/yamlloader.(*loader).load(0x4000561cc0?, 0x4000561d60)
        github.com/databricks/cli/libs/dyn/yamlloader/loader.go:51 +0x250
github.com/databricks/cli/libs/dyn/yamlloader.(*loader).loadMapping(0x40005acbf0, 0x4000561c20, {{0x4000050c30?, 0x1?}, 0x4000523140?, 0x1b?})
        github.com/databricks/cli/libs/dyn/yamlloader/loader.go:127 +0x1ac
github.com/databricks/cli/libs/dyn/yamlloader.(*loader).load(0x4000561b80?, 0x4000561c20)
        github.com/databricks/cli/libs/dyn/yamlloader/loader.go:51 +0x250
github.com/databricks/cli/libs/dyn/yamlloader.(*loader).loadMapping(0x40005acbf0, 0x400054cdc0, {{0x4000050c30?, 0x1?}, 0x4000011f50?, 0x6?})
        github.com/databricks/cli/libs/dyn/yamlloader/loader.go:127 +0x1ac
github.com/databricks/cli/libs/dyn/yamlloader.(*loader).load(0x400054cd20?, 0x400054cdc0)
        github.com/databricks/cli/libs/dyn/yamlloader/loader.go:51 +0x250
github.com/databricks/cli/libs/dyn/yamlloader.(*loader).loadMapping(0x40005acbf0, 0x400054ca00, {{0x4000050c30?, 0x0?}, 0x40005108a8?, 0x11c398?})
        github.com/databricks/cli/libs/dyn/yamlloader/loader.go:127 +0x1ac
github.com/databricks/cli/libs/dyn/yamlloader.(*loader).load(0x400054c960?, 0x400054ca00)
        github.com/databricks/cli/libs/dyn/yamlloader/loader.go:51 +0x250
github.com/databricks/cli/libs/dyn/yamlloader.(*loader).loadDocument(...)
        github.com/databricks/cli/libs/dyn/yamlloader/loader.go:74
github.com/databricks/cli/libs/dyn/yamlloader.(*loader).load(0x4000510c00?, 0x400054c8c0)
        github.com/databricks/cli/libs/dyn/yamlloader/loader.go:47 +0x84
github.com/databricks/cli/libs/dyn/yamlloader.LoadYAML({0x4000050c30, 0x46}, {0x1987800, 0x400054ed80})
        github.com/databricks/cli/libs/dyn/yamlloader/yaml.go:21 +0x28c
github.com/databricks/cli/bundle/config.LoadFromBytes({0x4000050c30, 0x46}, {0x4000554000, 0x755c, 0x755d})
        github.com/databricks/cli/bundle/config/root.go:107 +0x98
github.com/databricks/cli/bundle/config.Load({0x4000050c30, 0x46})
        github.com/databricks/cli/bundle/config/root.go:100 +0x68
github.com/databricks/cli/bundle/config/loader.(*entryPoint).Apply(0x4000077858?, {0x199f9b8?, 0x400054e150?}, 0x4000077808)
        github.com/databricks/cli/bundle/config/loader/entry_point.go:27 +0x44
github.com/databricks/cli/bundle.ApplyContext({0x199f9b8, 0x4000337c50}, 0x4000077808, {0x1993b48, 0x28a71e0})
        github.com/databricks/cli/bundle/mutator.go:91 +0x194
github.com/databricks/cli/bundle.ApplySeqContext({0x199f9b8, 0x4000337c50}, 0x4000077808, {0x4000511198?, 0x4000511188?, 0xb99268?})
        github.com/databricks/cli/bundle/mutator.go:100 +0x60
github.com/databricks/cli/bundle/config/mutator.DefaultMutators({0x199f9b8, 0x4000337c50}, 0x4000077808)
        github.com/databricks/cli/bundle/config/mutator/mutator.go:14 +0x14c
github.com/databricks/cli/bundle/phases.LoadDefaultTarget({0x199f9b8, 0x4000337c50}, 0x4000077808)
        github.com/databricks/cli/bundle/phases/load.go:23 +0x44
github.com/databricks/cli/cmd/root.configureBundle(0x40002fb208, 0x4000077808)
        github.com/databricks/cli/cmd/root/bundle.go:148 +0x4c
github.com/databricks/cli/cmd/root.MustConfigureBundle(0x40002fb208)
        github.com/databricks/cli/cmd/root/bundle.go:203 +0x78
github.com/databricks/cli/cmd/bundle/utils.ProcessBundleRet(0x40002fb208, {0x0, 0x4000538a40, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, ...})
        github.com/databricks/cli/cmd/bundle/utils/process.go:100 +0x12c
github.com/databricks/cli/cmd/bundle/utils.ProcessBundle(...)
        github.com/databricks/cli/cmd/bundle/utils/process.go:83
github.com/databricks/cli/cmd/bundle.newDeployCommand.func1(0x40002fb208, {0x40004a10d0?, 0x4?, 0x1641114?})
        github.com/databricks/cli/cmd/bundle/deploy.go:47 +0x124
github.com/spf13/cobra.(*Command).execute(0x40002fb208, {0x40004a10b0, 0x1, 0x1})
        github.com/spf13/cobra@v1.10.2/command.go:1015 +0x7d4
github.com/spf13/cobra.(*Command).ExecuteC(0x40001acf08)
        github.com/spf13/cobra@v1.10.2/command.go:1148 +0x350
github.com/spf13/cobra.(*Command).ExecuteContextC(...)
        github.com/spf13/cobra@v1.10.2/command.go:1080
github.com/databricks/cli/cmd/root.Execute({0x199f980, 0x28a71e0}, 0x40001acf08)
        github.com/databricks/cli/cmd/root/root.go:146 +0x108
main.main()
        github.com/databricks/cli/main.go:17 +0x44

Exited with code exit status 1

Metadata

Metadata

Assignees

No one assigned

    Labels

    BugSomething isn't workingDABsDABs related issues

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions