We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
If the root reference in a workflow schema does not match an object ID, a SIGSEGV panic is emitted.
root
SIGSEGV
$ arcaflow -config config.yaml -input input.yaml -context . 2024-03-01T13:03:55+01:00 debug source=deployer Checking whether image exists with command [/usr/bin/podman image ls --format {{.Repository}}:{{.Tag}}] 2024-03-01T13:03:57+01:00 debug source=deployer quay.io/arcalot/arcaflow-plugin-example:0.5.0: image already present skipping pull 2024-03-01T13:03:57+01:00 debug source=deployer Deploying with command [/usr/bin/podman run -i -a stdin -a stdout -a stderr --name arcaflow_podman_QNODKTZxeD quay.io/arcalot/arcaflow-plugin-example:0.5.0 --atp] 2024-03-01T13:03:57+01:00 debug source=plugin-provider Reading plugin schema... 2024-03-01T13:03:57+01:00 debug source=plugin-provider Hello message read, ATP version 3. 2024-03-01T13:03:57+01:00 debug source=plugin-provider Schema unserialization complete. 2024-03-01T13:03:57+01:00 debug source=deployer Killing with command [/usr/bin/podman kill arcaflow_podman_QNODKTZxeD] 2024-03-01T13:03:57+01:00 warning source=deployer failed to kill pod arcaflow_podman_QNODKTZxeD, probably the execution terminated earlier 2024-03-01T13:03:57+01:00 debug source=deployer Removing container with command [/usr/bin/podman rm --force arcaflow_podman_QNODKTZxeD] 2024-03-01T13:03:57+01:00 info source=deployer successfully removed container arcaflow_podman_QNODKTZxeD 2024-03-01T13:03:57+01:00 info source=deployer stdin pipe successfully closed 2024-03-01T13:03:57+01:00 info source=deployer stdout pipe successfully closed panic: runtime error: invalid memory address or nil pointer dereference [signal SIGSEGV: segmentation violation code=0x1 addr=0x10 pc=0x152d08] goroutine 1 [running]: go.flow.arcalot.io/pluginsdk/schema.(*ScopeSchema).Properties(0xfffea6ae6358?) /home/runner/go/pkg/mod/go.flow.arcalot.io/pluginsdk@v0.5.1/schema/scope.go:63 +0x38 go.flow.arcalot.io/expressions.dependenciesBracketKey({0x1630bb0, 0x400046aae0}, {0x10b6400?, 0x4000014150}, 0x40004cd410) /home/runner/go/pkg/mod/go.flow.arcalot.io/expressions@v0.2.1/expression_dependencies.go:231 +0x6c0 go.flow.arcalot.io/expressions.(*dependencyContext).identifierDependencies(0x400083ed28?, 0x400016c6a0?, {0x1630bb0, 0x400046aae0}, 0xfffea6f23800?) /home/runner/go/pkg/mod/go.flow.arcalot.io/expressions@v0.2.1/expression_dependencies.go:170 +0x8c go.flow.arcalot.io/expressions.(*dependencyContext).dependencies(0x40004cd3e0?, {0x1623120?, 0x40001534e0?}, {0x1630bb0?, 0x400046aae0?}, 0xfffea6dae068?) /home/runner/go/pkg/mod/go.flow.arcalot.io/expressions@v0.2.1/expression_dependencies.go:41 +0xf8 go.flow.arcalot.io/expressions.(*dependencyContext).dotNotationDependencies(0x0?, 0x400016c6c0, {0x1630bb0?, 0x400063f170?}, 0x28?) /home/runner/go/pkg/mod/go.flow.arcalot.io/expressions@v0.2.1/expression_dependencies.go:62 +0x90 go.flow.arcalot.io/expressions.(*dependencyContext).dependencies(0x4000648000?, {0x16230f0?, 0x400016c6c0?}, {0x1630bb0?, 0x400063f170?}, 0x1375f9d?) /home/runner/go/pkg/mod/go.flow.arcalot.io/expressions@v0.2.1/expression_dependencies.go:34 +0x78 go.flow.arcalot.io/expressions.expression.Dependencies({{0x40009003e0?, 0x15?}, {0x16230f0?, 0x400016c6c0?}}, {0x1630bb0, 0x400063f170}, 0x40008d2a80) /home/runner/go/pkg/mod/go.flow.arcalot.io/expressions@v0.2.1/expression.go:78 +0xa4 go.flow.arcalot.io/engine/workflow.(*executor).prepareDependencies(0x112cdc0?, 0x40000140d0?, {0x11cc4e0, 0x400016c760}, {0x1631300, 0x40004ccbd0}, 0x400083f0c8?, {0x16306b0, 0x400016dac0}) /home/runner/go/pkg/mod/go.flow.arcalot.io/engine@v0.9.1/workflow/executor.go:795 +0x3cc go.flow.arcalot.io/engine/workflow.(*executor).prepareDependencies(0x112cdc0?, 0x4000014010?, {0x11511c0, 0x4000904db0}, {0x1631300, 0x40004ccbd0}, 0x400083f2c8?, {0x16306b0, 0x400016dac0}) /home/runner/go/pkg/mod/go.flow.arcalot.io/engine@v0.9.1/workflow/executor.go:859 +0xb90 go.flow.arcalot.io/engine/workflow.(*executor).prepareDependencies(0x11511c0?, 0x40004cd380?, {0x11511c0, 0x4000904d80}, {0x1631300, 0x40004ccbd0}, 0x11531a0?, {0x16306b0, 0x400016dac0}) /home/runner/go/pkg/mod/go.flow.arcalot.io/engine@v0.9.1/workflow/executor.go:859 +0xb90 go.flow.arcalot.io/engine/workflow.(*executor).connectStepDependencies(0x4000904ed0?, 0x16347d0?, 0x400046aae0?, 0x400016dac0?, {0x16306b0, 0x400016dac0?}, 0x1154c40?) /home/runner/go/pkg/mod/go.flow.arcalot.io/engine@v0.9.1/workflow/executor.go:320 +0x57c go.flow.arcalot.io/engine/workflow.(*executor).Prepare(0x4000904ed0, 0x40005460a0, 0x40008d2a80) /home/runner/go/pkg/mod/go.flow.arcalot.io/engine@v0.9.1/workflow/executor.go:120 +0x218 go.flow.arcalot.io/engine.workflowEngine.Parse({{0x162fbc0, 0x40008d2ab0}, {0x162e8f8, 0x40005938f0}, 0x4000490180}, 0x4eedc?, {0x400048e320?, 0xfceed4?}) /home/runner/go/pkg/mod/go.flow.arcalot.io/engine@v0.9.1/engine.go:107 +0x170 main.runWorkflow({0x161e290, 0x40008d32f0}, 0x13786d5?, {0x400048e320, 0x48}, {0x162fbc0?, 0x40008d2a20}, {0x4000296800, 0x11, 0x200}) /home/runner/go/pkg/mod/go.flow.arcalot.io/engine@v0.9.1/cmd/arcaflow/main.go:204 +0x1a8 main.main() /home/runner/go/pkg/mod/go.flow.arcalot.io/engine@v0.9.1/cmd/arcaflow/main.go:190 +0xd04
Simply reproduced with any workflow:
version: v0.2.0 input: root: BadObjectName objects: RootObject: id: RootObject properties: nickname: display: description: Just a name name: Name required: true type: type_id: string steps: example: plugin: deployment_type: image src: quay.io/arcalot/arcaflow-plugin-example:0.5.0 input: name: _type: nickname nick: !expr $.input.nickname outputs: success: example: !expr $.steps.example.outputs.success
The text was updated successfully, but these errors were encountered:
No branches or pull requests
Describe the bug
If the
root
reference in a workflow schema does not match an object ID, aSIGSEGV
panic is emitted.To reproduce
Simply reproduced with any workflow:
The text was updated successfully, but these errors were encountered: