mirror of
				https://github.com/moby/moby.git
				synced 2022-11-09 12:21:53 -05:00 
			
		
		
		
	Fix "--node-generic-resource" singular/plural
Daemon flags that can be specified multiple times use
singlar names for flags, but plural names for the configuration
file.
To make the daemon configuration know how to correlate
the flag with the corresponding configuration option,
`opt.NewNamedListOptsRef()` should be used instead of
`opt.NewListOptsRef()`.
Commit 6702ac590e attempted
to fix the daemon not corresponding the flag with the configuration
file option, but did so by changing the name of the flag
to plural.
This patch reverts that change, and uses `opt.NewNamedListOptsRef()`
instead.
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
			
			
This commit is contained in:
		
							parent
							
								
									2c05aefc99
								
							
						
					
					
						commit
						6e7715d65b
					
				
					 2 changed files with 17 additions and 1 deletions
				
			
		| 
						 | 
				
			
			@ -67,7 +67,7 @@ func installCommonConfigFlags(conf *config.Config, flags *pflag.FlagSet) {
 | 
			
		|||
 | 
			
		||||
	flags.StringVar(&conf.MetricsAddress, "metrics-addr", "", "Set default address and port to serve the metrics api on")
 | 
			
		||||
 | 
			
		||||
	flags.Var(opts.NewListOptsRef(&conf.NodeGenericResources, opts.ValidateSingleGenericResource), "node-generic-resources", "Advertise user-defined resource")
 | 
			
		||||
	flags.Var(opts.NewNamedListOptsRef("node-generic-resources", &conf.NodeGenericResources, opts.ValidateSingleGenericResource), "node-generic-resource", "Advertise user-defined resource")
 | 
			
		||||
 | 
			
		||||
	flags.IntVar(&conf.NetworkControlPlaneMTU, "network-control-plane-mtu", config.DefaultNetworkMtu, "Network Control plane MTU")
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -61,6 +61,22 @@ func TestLoadDaemonCliConfigWithConflicts(t *testing.T) {
 | 
			
		|||
	testutil.ErrorContains(t, err, "as a flag and in the configuration file: labels")
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func TestLoadDaemonCliWithConflictingNodeGenericResources(t *testing.T) {
 | 
			
		||||
	tempFile := fs.NewFile(t, "config", fs.WithContent(`{"node-generic-resources": ["foo=bar", "bar=baz"]}`))
 | 
			
		||||
	defer tempFile.Remove()
 | 
			
		||||
	configFile := tempFile.Path()
 | 
			
		||||
 | 
			
		||||
	opts := defaultOptions(configFile)
 | 
			
		||||
	flags := opts.flags
 | 
			
		||||
 | 
			
		||||
	assert.NoError(t, flags.Set("config-file", configFile))
 | 
			
		||||
	assert.NoError(t, flags.Set("node-generic-resource", "r1=bar"))
 | 
			
		||||
	assert.NoError(t, flags.Set("node-generic-resource", "r2=baz"))
 | 
			
		||||
 | 
			
		||||
	_, err := loadDaemonCliConfig(opts)
 | 
			
		||||
	testutil.ErrorContains(t, err, "as a flag and in the configuration file: node-generic-resources")
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func TestLoadDaemonCliWithConflictingLabels(t *testing.T) {
 | 
			
		||||
	opts := defaultOptions("")
 | 
			
		||||
	flags := opts.flags
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue