(idx int, raft string)
| 229 | } |
| 230 | |
| 231 | func getZero(idx int, raft string) service { |
| 232 | basename := "zero" |
| 233 | basePort := zeroBasePort + opts.PortOffset |
| 234 | grpcPort := basePort + getOffset(idx) |
| 235 | |
| 236 | svc := initService(basename, idx, grpcPort) |
| 237 | |
| 238 | if opts.TmpFS { |
| 239 | svc.TmpFS = append(svc.TmpFS, fmt.Sprintf("/data/%s/zw", svc.name)) |
| 240 | } |
| 241 | |
| 242 | offset := getOffset(idx) |
| 243 | if (opts.PortOffset + offset) != 0 { |
| 244 | svc.Command += fmt.Sprintf(" -o %d", opts.PortOffset+offset) |
| 245 | } |
| 246 | svc.Command += fmt.Sprintf(" --raft='%s'", raft) |
| 247 | svc.Command += fmt.Sprintf(" --my=%s:%d", svc.name, grpcPort) |
| 248 | if opts.NumAlphas > 1 { |
| 249 | svc.Command += fmt.Sprintf(" --replicas=%d", opts.NumReplicas) |
| 250 | } |
| 251 | svc.Command += fmt.Sprintf(" --logtostderr -v=%d", opts.Verbosity) |
| 252 | if opts.Vmodule != "" { |
| 253 | svc.Command += fmt.Sprintf(" --vmodule=%s", opts.Vmodule) |
| 254 | } |
| 255 | if idx == 1 { |
| 256 | svc.Command += " --bindall" |
| 257 | } else { |
| 258 | peerPort := zeroBasePort + opts.PortOffset |
| 259 | svc.Command += fmt.Sprintf(" --peer=%s:%d", name(basename, 1), peerPort) |
| 260 | } |
| 261 | if len(opts.MemLimit) > 0 { |
| 262 | svc.Deploy.Resources = res{ |
| 263 | Limits: limit{Memory: opts.MemLimit}, |
| 264 | } |
| 265 | } |
| 266 | if opts.ZeroFlags != "" { |
| 267 | svc.Command += " " + opts.ZeroFlags |
| 268 | } |
| 269 | |
| 270 | if len(opts.ZeroVolumes) > 0 { |
| 271 | for _, vol := range opts.ZeroVolumes { |
| 272 | svc.Volumes = append(svc.Volumes, getVolume(vol)) |
| 273 | } |
| 274 | } |
| 275 | svc.EnvFile = opts.ZeroEnvFile |
| 276 | |
| 277 | return svc |
| 278 | } |
| 279 | |
| 280 | func getAlpha(idx int, raft string) service { |
| 281 | basename := "alpha" |
no test coverage detected
searching dependent graphs…