hashicorp / hashicorp/nomad

Add an enabled boolean parameter for all plugins

Open
#6,477 3 comments 3 reactions 0 assignees View on GitHub
theme/driver type/enhancement
Dominant language
Go
Stars
17k
Forks
2.1k
Avg merge
1d 9h
Merged PRs (30d)
105

Description

Problem
========
Right now there are a couple different ways to disable plugins:

* Drivers may be in the denylist

* External plugins may be deleted

However there's no way to disable builtin device plugins, and having 2 ways of disabling driver plugins is confusing.

Proposal
===========

Plugin stanzas should universally support an enabled boolean that defaults to true. This provides a consistent control mechanism that works for builtin and external plugins.

Once there is a universal mechanism for disabling plugins, a deprecation warning should be emitted when the original task driver denylist is specified. An issue should be filed against 0.X+2 to remove the denylist entirely. (So if this is released in 0.11.0, the denylist should be removed in 0.13.0).

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by tracing how plugin stanzas are parsed and how the task driver denylist is handled. Check the existing plugin configuration tests and add coverage for an enabled value that defaults to true across builtin and external plugins. Done means disabled plugins are consistently skipped and specifying the old denylist emits a deprecation warning.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
devops, infrastructure
Issue type
Feature
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.