The "etcd.service" unit distributed with Fedora 21 (atomic) does not contain any facilities for passing arguments to etcd. That is, it looks like this: [Service] Type=simple StandardOutput=null WorkingDirectory=/var/lib/etcd User=etcd ExecStart=/usr/bin/etcd This means that if a deployer wants to pass arguments to etcd at boot (such as a discovery URL), the only option is to introduce a new unit file in /etc/systemd/system. This works, but it seems like a heavy hammer. It seems as if a better choice would be to introduce an EnvironmentFile directive like we do for so many other units. Something like: [Service] Type=simple StandardOutput=null WorkingDirectory=/var/lib/etcd User=etcd EnvironmentFile=/etc/sysconfig/etcd ExecStart=/usr/bin/etcd $OPTIONS
etcd (at least 0.4) has a config file. /etc/etcd/etcd.conf Which is sourced and used by etcd itself. This might go away in 0.5 or 0.6, in which case we will look to support the model you describe. But right now, I don't see a bug here.
I thought that the config file *was* going away in 0.5 (rather than "might"), so I figured that preparing for that in advance would mean that people would be able to transition from 0.4.6 to 0.5.x with fewer changes. But consider this an RFE rather than a bug, I guess.
Since etcd-2.0.* (already updated in f20-rawhide) has introduces environment file (path is the same, content of /etc/etcd/etcd.conf has changed), we can close this bug as resolved in the current release.