Re: [systemd-devel] Formatting Execstart= for readability

2017-08-16 Thread Mantas Mikulėnas
On Wed, Aug 16, 2017 at 1:09 PM, Reindl Harald 
wrote:

>
>
> Am 16.08.2017 um 12:04 schrieb Mantas Mikulėnas:
>
>> On Wed, Aug 16, 2017 at 12:09 PM, Reindl Harald > > wrote:
>>
>>
>> Am 16.08.2017 um 10:31 schrieb Mantas Mikulėnas:
>>
>> Just put everything in a shell script. (That way you can test it
>> directly without systemd, too.)
>>
>> With bash, you can use inline comments in arrays:
>>
>>  #!/usr/bin/env bash
>>  args=(
>>   -X POST # foo
>>   -d "fizz=systemd"   # some docs
>>   -d "some=else"  # more docs
>> https://requestb.in/foo
>>  )
>>
>>  exec curl "${args[@]}"
>>
>>
>> this is the worst recommendation one can give - really - that way
>> you easily lose all the advantages of systemd in case of error
>> handling
>>
>>
>> For example?
>>
>
> what is the MAINPID - bash or curl - in that case?
>

curl, since `exec` preserves the PID.

-- 
Mantas Mikulėnas 
___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/systemd-devel


Re: [systemd-devel] Formatting Execstart= for readability

2017-08-16 Thread Colin Guthrie
Kai Hendry wrote on 16/08/17 08:52:
> Hi there,
> 
> I maintain a service file with a lot of switches in the ExecStart
> https://github.com/kaihendry/pingprom/blob/master/prometheus%40.service#L8
> 
> I want to almost document each switch ... e.g.
> -storage.local.retention=8544h  # keep data for a year
> 
> I know inline comments do *not* work in bash IIUC:
> https://gist.github.com/kaihendry/ff751622c6454176837b1c340b5cfccb
> 
> And similarly when I try break up lines on something like
> https://s.natalian.org/2017-08-16/test.service
> 
> [Service]
> ExecStart=/usr/bin/curl -X POST 
> -d "fizz=systemd"  # some docs
> -d "some=else"  # more docs
>  https://requestb.in/19v8a0m1
> 
> 
> It also doesn't work. Am I missing a tool or way to better
> format/document process arguments like I want?
> 
> Many thanks!

Write a companion man page and/or web page and reference it in
Documentation=

Col


-- 

Colin Guthrie
colin(at)mageia.org
http://colin.guthr.ie/

Day Job:
  Tribalogic Limited http://www.tribalogic.net/
Open Source:
  Mageia Contributor http://www.mageia.org/
  PulseAudio Hacker http://www.pulseaudio.org/
  Trac Hacker http://trac.edgewall.org/
___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/systemd-devel


Re: [systemd-devel] Formatting Execstart= for readability

2017-08-16 Thread Mantas Mikulėnas
On Wed, Aug 16, 2017 at 12:09 PM, Reindl Harald 
wrote:

>
> Am 16.08.2017 um 10:31 schrieb Mantas Mikulėnas:
>
>> Just put everything in a shell script. (That way you can test it directly
>> without systemd, too.)
>>
>> With bash, you can use inline comments in arrays:
>>
>> #!/usr/bin/env bash
>> args=(
>>  -X POST # foo
>>  -d "fizz=systemd"   # some docs
>>  -d "some=else"  # more docs
>> https://requestb.in/foo
>> )
>>
>> exec curl "${args[@]}"
>>
>
> this is the worst recommendation one can give - really - that way you
> easily lose all the advantages of systemd in case of error handling


For example?

-- 
Mantas Mikulėnas 
___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/systemd-devel


Re: [systemd-devel] Formatting Execstart= for readability

2017-08-16 Thread Reindl Harald



Am 16.08.2017 um 12:04 schrieb Mantas Mikulėnas:
On Wed, Aug 16, 2017 at 12:09 PM, Reindl Harald > wrote:



Am 16.08.2017 um 10:31 schrieb Mantas Mikulėnas:

Just put everything in a shell script. (That way you can test it
directly without systemd, too.)

With bash, you can use inline comments in arrays:

 #!/usr/bin/env bash
 args=(
  -X POST # foo
  -d "fizz=systemd"   # some docs
  -d "some=else"  # more docs
https://requestb.in/foo
 )

 exec curl "${args[@]}"


this is the worst recommendation one can give - really - that way
you easily lose all the advantages of systemd in case of error handling


For example?


what is the MAINPID - bash or curl - in that case?

why inthe world should someone sacrifice the advantage of having the 
executebale directly started because of inline comments where a smart 
comments-block does the same


[Service]
ExecStart=/usr/bin/curl -X POST
-d "fizz=systemd"  # some docs
-d "some=else"  # more docs

versus

[Service]
# fizz: somedocs
# some: moredocs
ExecStart=/usr/bin/curl -X POST -d "fizz=systemd" -d "some=else"

___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/systemd-devel


Re: [systemd-devel] Formatting Execstart= for readability

2017-08-16 Thread Reindl Harald


Am 16.08.2017 um 10:31 schrieb Mantas Mikulėnas:
Just put everything in a shell script. (That way you can test it 
directly without systemd, too.)


With bash, you can use inline comments in arrays:

#!/usr/bin/env bash
args=(
 -X POST # foo
 -d "fizz=systemd"   # some docs
 -d "some=else"  # more docs
https://requestb.in/foo
)

exec curl "${args[@]}"


this is the worst recommendation one can give - really - that way you 
easily lose all the advantages of systemd in case of error handling



___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/systemd-devel


Re: [systemd-devel] Formatting Execstart= for readability

2017-08-16 Thread Jérémy Rosen



On 16/08/2017 10:31, Mantas Mikulėnas wrote:
On Wed, Aug 16, 2017 at 10:52 AM, Kai Hendry > wrote:


Hi there,

I maintain a service file with a lot of switches in the ExecStart
https://github.com/kaihendry/pingprom/blob/master/prometheus%40.service#L8


I want to almost document each switch ... e.g.
-storage.local.retention=8544h  # keep data for a year

I know inline comments do *not* work in bash IIUC:
https://gist.github.com/kaihendry/ff751622c6454176837b1c340b5cfccb


And similarly when I try break up lines on something like
https://s.natalian.org/2017-08-16/test.service


[Service]
ExecStart=/usr/bin/curl -X POST
-d "fizz=systemd"  # some docs
-d "some=else"  # more docs
https://requestb.in/19v8a0m1


It also doesn't work. Am I missing a tool or way to better
format/document process arguments like I want?


Just put everything in a shell script. (That way you can test it 
directly without systemd, too.)


Alternatively, you could documente everything in an EnvironmentFile that 
sets an environment variable with all the parameters and documents in a 
comment


Regards
Jérémy
--

With bash, you can use inline comments in arrays:

#!/usr/bin/env bash
args=(
-X POST # foo
-d "fizz=systemd"   # some docs
-d "some=else"  # more docs
https://requestb.in/foo
)

exec curl "${args[@]}"


--
Mantas Mikulėnas >



___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/systemd-devel


--
Logo 

20 rue des Jardins
92600 Asnières-sur-Seine
www.smile.fr    
*Jérémy ROSEN*
Architecte technique
Email : jeremy.ro...@smile.fr 
Tel : +33141402967

Facebook  Google%2B 
 LinkedIn 
 Twitter 




bandeaux_mail 



eco Pour la planète, n'imprimez ce mail que si c'est nécessaire
___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/systemd-devel


Re: [systemd-devel] Formatting Execstart= for readability

2017-08-16 Thread Mantas Mikulėnas
On Wed, Aug 16, 2017 at 10:52 AM, Kai Hendry 
wrote:

> Hi there,
>
> I maintain a service file with a lot of switches in the ExecStart
> https://github.com/kaihendry/pingprom/blob/master/prometheus%40.service#L8
>
> I want to almost document each switch ... e.g.
> -storage.local.retention=8544h  # keep data for a year
>
> I know inline comments do *not* work in bash IIUC:
> https://gist.github.com/kaihendry/ff751622c6454176837b1c340b5cfccb
>
> And similarly when I try break up lines on something like
> https://s.natalian.org/2017-08-16/test.service
>
> [Service]
> ExecStart=/usr/bin/curl -X POST
> -d "fizz=systemd"  # some docs
> -d "some=else"  # more docs
>  https://requestb.in/19v8a0m1
>
>
> It also doesn't work. Am I missing a tool or way to better
> format/document process arguments like I want?
>

Just put everything in a shell script. (That way you can test it directly
without systemd, too.)

With bash, you can use inline comments in arrays:

#!/usr/bin/env bash
args=(
-X POST # foo
-d "fizz=systemd"   # some docs
-d "some=else"  # more docs
https://requestb.in/foo
)

exec curl "${args[@]}"


-- 
Mantas Mikulėnas 
___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/systemd-devel