Skip to content

Panic when multiple ref field found in plasma-compose.yaml #64

@davidferlay

Description

@davidferlay

Observed

  • Such compose file, with twice ref field
name: plasma
dependencies:
  - name: plasma-core
    source:
      type: git
      ref: 1.121.2
      ref: 342-utterance-bus-enhance-postgres-conf
  • Causes panic when composing
➜ pl compose --skip-not-versioned --conflicts-verbosity --keyring-passphrase-file /tmp/kp      
                
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0x1f158cd]

goroutine 1 [running]:
github.com/launchrctl/compose.(*Plugin).DiscoverActions.func1({0xc000503650?, 0x2d22408?}, 0x4224620?)
	github.com/launchrctl/compose@v0.15.1/plugin.go:72 +0x24d
github.com/launchrctl/launchr/pkg/action.(*FnRuntime).Execute(0xc000430f90, {0x2d22408, 0x4224620}, 0xc000256320)
	github.com/launchrctl/launchr@v0.21.1/pkg/action/runtime.fn.go:36 +0x123
github.com/launchrctl/launchr/pkg/action.(*Action).Execute(0xc000256320, {0x2d22408, 0x4224620})
	github.com/launchrctl/launchr@v0.21.1/pkg/action/action.go:272 +0xeb
github.com/launchrctl/launchr/pkg/action.(*runManagerMap).Run(0xc0002a7978?, {0x2d22408, 0x4224620}, 0xc000256320)
	github.com/launchrctl/launchr@v0.21.1/pkg/action/manager.go:491 +0xa7
github.com/launchrctl/launchr/plugins/actionscobra.CobraImpl.func2(0xc000314908?, {0xc0005aef40?, 0x0?, 0x4?})
	github.com/launchrctl/launchr@v0.21.1/plugins/actionscobra/cobra.go:76 +0x38
github.com/spf13/cobra.(*Command).execute(0xc000314908, {0xc0005aef00, 0x4, 0x4})
	github.com/spf13/cobra@v1.9.1/command.go:1015 +0xaaa
github.com/spf13/cobra.(*Command).ExecuteC(0xc000314608)
	github.com/spf13/cobra@v1.9.1/command.go:1148 +0x46f
github.com/spf13/cobra.(*Command).Execute(0xc000411b90?)
	github.com/spf13/cobra@v1.9.1/command.go:1071 +0x13
github.com/launchrctl/launchr.(*appImpl).exec(0xc000397900)
	github.com/launchrctl/launchr@v0.21.1/app.go:173 +0x36b
github.com/launchrctl/launchr.(*appImpl).Execute(0xc000397900)
	github.com/launchrctl/launchr@v0.21.1/app.go:194 +0x11d
github.com/launchrctl/launchr.Run(...)
	github.com/launchrctl/launchr@v0.21.1/app.go:217
github.com/launchrctl/launchr.RunAndExit()
	github.com/launchrctl/launchr@v0.21.1/app.go:222 +0x1f
main.main()
	plasmactl/main.go:9 +0xf

Expected

  • When multiple ref field are found for a package in plasma-compose.yaml:
    • best to throw a warning and use last ref value available
    • or simply throw a relevant error message

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions