buildkite / buildkite/agent

Disabling command-eval also disables plugins

Open
#943 3 comments 0 reactions 0 assignees View on GitHub
plugins
Dominant language
Go
Stars
1.1k
Forks
378
Avg merge
2d 6h
Merged PRs (30d)
74

Description

When running agents on v3.8.4, we were using these settings

```
BUILDKITE_NO_PLUGINS: 'false'
BUILDKITE_NO_COMMAND_EVAL: 'true'
```

This allowed us to run plugins (we have our own security check in place for plugins), whilst also disabling command eval.

According to the documentation for command eval https://buildkite.com/docs/agent/v3/securing#disabling-command-eval this shouldn't have been possible. This is backed up by https://github.com/buildkite/agent/issues/674

In any case, we were indeed able to run plugins with command eval disabled just fine. However upgrading to 3.9.1 has broken that functionality.

Can we get some clarity if it was working incorrectly before and that "bug" has now been fixed (so we need to find a new way to disable command eval), or should it be that way and the documentation is misleading?

Contributor guide

Open the contributing guide

Research direction

Start with the command-eval documentation at buildkite.com/docs/agent/v3/securing#disabling-command-eval and compare the BUILDKITE_NO_PLUGINS and BUILDKITE_NO_COMMAND_EVAL settings across agent versions 3.8.4 and 3.9.1. Confirm the intended plugin behavior when command eval is disabled, then update the behavior or documentation and add coverage for the reported configuration.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
ci-cd, security
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.