Re: [systemd-devel] Systemd -- Using Environment variable in a Unit file from Environment File

2017-05-29 Thread Lennart Poettering
On Fri, 26.05.17 15:06, Raghavendra. H. R (raghuh...@gmail.com) wrote:

> Hi All,
> 
> I'm in the situation where path of my server changes due to version change.
> I don't want to modify my systemd unit file everytime, instead I want to go
> ahead with my environement file for modification.

Please do not use environment files for that. Simply add or remove
unit drop-in files. i.e. if you want to make minor changes to a unit
file foobar.service then add
/etc/systemd/system/foobar.service.d/50-quux.conf or so, and add the
necessary settings there. "systemctl edit" helps you in doing so, and
make this easy.

> EnvironmentFile=/home/raghu/system.env
> *WorkingDirectory=${SERVER_PATH}*

Please read the documentation about EnvironmentFile=, its environment
variables configured what is passed to the executed processes, and may
be referenced in the ExecXYZ= line, but not in any other configuration
lines. THis is because the precise environment is determined at the
moment of activation, and settings generally have a broader definition
than that.

Lennart

-- 
Lennart Poettering, Red Hat
___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/systemd-devel


Re: [systemd-devel] Systemd -- Using Environment variable in a Unit file from Environment File

2017-05-28 Thread Raghavendra. H. R
Guys,

Any suggestions about this kind of problem ?


--
Regards,

Raghavendra. H. R
(Raghu)

On Fri, May 26, 2017 at 3:06 PM, Raghavendra. H. R 
wrote:

> Hi All,
>
> I'm in the situation where path of my server changes due to version
> change. I don't want to modify my systemd unit file everytime, instead I
> want to go ahead with my environement file for modification.
>
> My Env file system.env contains environment variables
>
> system.env
> 
> SERVER_PATH=/home/raghu/TAP/server/V110
>
> In my systemd unit file I have included this enviroment file.
>
> Tap.service
> 
> [Unit]
> Description=Starting TAP server
>
> [Service]
> EnvironmentFile=/home/raghu/system.env
> *WorkingDirectory=${SERVER_PATH}*
> *ExecStart=/home/raghu/TAP/out  "./server.js"*
>
> [Install]
> WantedBy=multi-user.target
>
> I'm stuck with the below error
>
> *error: Cannot find module '/server.js'*
>
> ${SERVER_PATH} is not set to my WorkingDirectory. Instead of using this
> variable, if I give the absolute path, my unit file works well.
>
> Need help in resoling this issue.
>
> --
> Regards,
>
> Raghavendra. H. R
> (Raghu)
>
___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/systemd-devel