Diskussion: Function powershellcall()

The place for development of / with / for opsi.
Benutzeravatar
d.oertel
Beiträge: 3183
Registriert: 04 Jun 2008, 14:27

Diskussion: Function powershellcall()

Beitragvon d.oertel » 05 Apr 2018, 11:04

Hallo allerseits,

wie auf der opsi Konferenz besprochen wird es im opsiscript eine neue Funktion 'powershellcall geben.
Analog zur Funktion shellCall() wird es diese mit Rükgabewert String (exitcode), mit Rükgabewert Stringliste (output) und ohne Rückgabewert geben.

Dabei ist dann z.B.

Code: Alles auswählen

set $str$ = powershellcall("get-partition | select disknumber, partitionnumber, driveletter, size,type")

eine Abkürzung von

Code: Alles auswählen

Execwith_ps powershell
set $str$ = getLastExitcode
[Execwith_ps]
trap { write-output $_ ; exit 1 }
get-partition | select disknumber, partitionnumber, driveletter, size,type
exit $LASTEXITCODE


So und jetzt habe ich zwei Fragen an die PraktikerInnen:

1. Da die powershell ja per Default restricted ist, muss diese vor Aufrufzu nächst mit sowas wie nachfolgend erst freigeschaltet werden:

Code: Alles auswählen

shellCall('powershell.exe set-executionpolicy RemoteSigned')

und danach auch wieder zurückgesetzt werden.

Meine Fragen:
a) Soll es über einen zusätlichen Schalter (boolean parameter) möglich sein, das automatisch die aktuelle executionpolicy gesichert wird, die executionpolicy auf RemoteSigned gesetztwird. Dann der eigentliche Befehl ausgeführt wird und abschließend die executionpolicy wie der restored wird.
b) wenn ja - soll das der Default sein ?

2. Analog zum shellcall Aufruf wird der powershellCall per Default sysnative sein (auf einem 64bit System wird die 64bit powershell aufgerufen). Über einen zusätzlichen Parameter könnte auch das gesteuert werden.
Frage:
Ist das gewünscht oder führt das eher zur Verwirrung ?

Ich freue mich auf die Rückmeldungen.

gruß
detlef oertel
opsi support - uib gmbh

For productive opsi installations we recommend support contracts.
http://www.uib.de
http://www.opsi.org

uncle_scrooge
Beiträge: 430
Registriert: 21 Feb 2012, 12:03
Wohnort: Mainz

Re: Diskussion: Function powershellcall()

Beitragvon uncle_scrooge » 09 Apr 2018, 08:11

1.
a. Ja.
b. Ja.
M.E. die einzig saubere Implementierung. Respect the hard configuration work of others.

2. Gewünscht.
Mir fällt zwar spontan kein konkretes Anwendungsszenario ein. Aber man weiß ja nie......