{"id":"7f0ab27ffb00cba6","repo":"docker/cli","slug":"invalid-availability-q-only-active-pause-and-dr","errorCode":null,"errorMessage":"invalid availability %q, only active, pause and drain are supported","messagePattern":"invalid availability %q, only active, pause and drain are supported","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"cli/command/swarm/init.go","lineNumber":95,"sourceCode":"\t\t}\n\t\tip := p.IP.To4()\n\t\tif ip == nil {\n\t\t\tip = p.IP.To16()\n\t\t}\n\t\taddr, ok := netip.AddrFromSlice(ip)\n\t\tif !ok {\n\t\t\treturn fmt.Errorf(\"invalid IP address: %s\", p.IP)\n\t\t}\n\t\tones, _ := p.Mask.Size()\n\t\tdefaultAddrPool = append(defaultAddrPool, netip.PrefixFrom(addr, ones))\n\t}\n\tvar availability swarm.NodeAvailability\n\tif flags.Changed(flagAvailability) {\n\t\tswitch a := swarm.NodeAvailability(strings.ToLower(opts.availability)); a {\n\t\tcase swarm.NodeAvailabilityActive, swarm.NodeAvailabilityPause, swarm.NodeAvailabilityDrain:\n\t\t\tavailability = a\n\t\tdefault:\n\t\t\treturn fmt.Errorf(\"invalid availability %q, only active, pause and drain are supported\", opts.availability)\n\t\t}\n\t}\n\n\tres, err := apiClient.SwarmInit(ctx, client.SwarmInitOptions{\n\t\tListenAddr:       opts.listenAddr.String(),\n\t\tAdvertiseAddr:    opts.advertiseAddr,\n\t\tDataPathAddr:     opts.dataPathAddr,\n\t\tDataPathPort:     opts.dataPathPort,\n\t\tDefaultAddrPool:  defaultAddrPool,\n\t\tForceNewCluster:  opts.forceNewCluster,\n\t\tSpec:             opts.swarmOptions.ToSpec(flags),\n\t\tAutoLockManagers: opts.swarmOptions.autolock,\n\t\tAvailability:     availability,\n\t\tSubnetSize:       opts.DefaultAddrPoolMaskLength,\n\t})\n\tif err != nil {\n\t\tif strings.Contains(err.Error(), \"could not choose an IP address to advertise\") || strings.Contains(err.Error(), \"could not find the system's IP address\") {\n\t\t\treturn fmt.Errorf(\"%w - specify one with --advertise-addr\", err)","sourceCodeStart":77,"sourceCodeEnd":113,"githubUrl":"https://github.com/docker/cli/blob/e9452d6e785f6e365712b9d71bd7517591773c86/cli/command/swarm/init.go#L77-L113","documentation":"Error \"invalid availability %q, only active, pause and drain are supported\" thrown in docker/cli.","triggerScenarios":"Thrown at cli/command/swarm/init.go:95 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"analyzedSha":"e9452d6e785f6e365712b9d71bd7517591773c86","analyzedAt":"2026-08-01T07:09:22.474Z","schemaVersion":2}