Página 1 de 1

[Script] Batchs para auto deploy do Spark

Enviado: 28 Mai 2015 11:59
por marceloleaes
Bom dia,

Segue dois scripts para automatizar o deploy do Spark em seus computadores do domínio. O primeiro executa na GPO do tipo Computers, instalando o Spark e o segundo executa no tipo Users coletando o usuário logado e inserindo as informações de conexão no arquivo de configuração do Spark restando apenas o usuário informar a sua senha para começar a utilizar.

Bastante atenção aos caminhos, altere conforme seu ambiente e depois é só adicionar na GPO de inicialização de usuários e computadores  ;)

** No arquivo Spark_GPOUsers.cmd é possível personalizar diversos campos incluindo autenticação SSO, teste a vontade !

Spark_GPOComputers.bat

Código: Selecionar todos

@ECHO OFF

set "spark_installer=\\seuservidor\compartilhamento\spark270.exe"
set "spark_exe=%ProgramFiles%\Spark\Spark.exe"

if exist "%spark_exe%" (
goto END
) else (
goto INSTALL )

:INSTALL

start /wait "Instalando o Spark..." "%spark_installer%" -q -console -dir "%ProgramFiles%\Spark"

:END

Spark_GPOUsers.cmd

Código: Selecionar todos

@ECHO OFF

setlocal EnableDelayedExpansion
set hostAndPort=true
set xmppHost=chat.seudominio.local
set xmppPort=5222
set ssoMethod=dns
set ssoEnabled=false
set server=chat.seudominio.local
set autoLoginEnabled=false
set username=%username%
set showEmptyGroups=true
set showOfflineUsers=true
set offlineGroupVisible=false
set "propfile=%appdata%\spark\spark.properties"
set "tempfile=%appdata%\spark\spark.properties.temp"
set "spark_exe=%ProgramFiles%\Spark\Spark.exe"

if not exist "%appdata%\spark\nul" mkdir "%appdata%\spark"
if exist "%propfile%" (
find "username=" "%propfile%"
if %errorlevel% equ 1 tskill spark & del /q "%propfile%" & set SparkWasKilled=True
)

if not exist "%propfile%" (
echo #Spark Settings > "%propfile%"
echo hostAndPort= >> "%propfile%"
echo xmppHost= >> "%propfile%"
echo xmppPort= >> "%propfile%"
echo ssoEnabled= >> "%propfile%"
echo ssoMethod= >> "%propfile%"
echo server= >> "%propfile%"
echo autoLoginEnabled= >> "%propfile%"
echo username= >> "%propfile%"
echo showEmptyGroups= >> "%propfile%"
echo showOfflineUsers= >> "%propfile%"
echo offlineGroupVisible= >> "%propfile%"
)

set "modifiedByGPO=Modificado pela GPO em %date% às %time%"

echo #Spark Settings > "%tempfile%"

for /f "usebackq eol=# tokens=1,2 delims==" %%i in ("%propfile%") do if defined %%i (echo %%i=!%%i!>> "%tempfile%") else echo %%i=%%j>> "%tempfile%"

findstr /b /i /c:"modifiedByGPO=" "%tempfile%"
if %errorlevel% equ 1 echo modifiedByGPO=%modifiedByGPO% >> "%tempfile%"

move /y "%tempfile%" "%propfile%"

if defined SparkWasKilled start "Run Spark" "%spark_exe%"

Re:[Script] Batchs para auto deploy do Spark

Enviado: 08 Jun 2015 17:43
por Jrm
Marcelo,

Fiz um teste com o Spark_GPOComputers.bat, em algumas máquinas ele instala o spark certinho, porém em outras máquinas ele não funciona, mesmo eu dando um gpupdate /force, ele diz que já possui a diretiva ativa na máquina, mas não consegue rodar o setup, só consegue executar o Spark_GPOUsers.cmd, que carrega as configurações do spark tudo certinho.

Tem alguma ideia do que pode estar acontecendo? o usuário precisa ter admin para poder executar esse script?

Re:[Script] Batchs para auto deploy do Spark

Enviado: 08 Jun 2015 17:54
por marceloleaes
Verifique se os updates de .net framework estão em dia nas estações. Problemas com gpo 90% é isto.
Windows 32 bits podem apresentar problemas com as variavéis de ambiente que usei se já existir uma versão antiga do spark instalada.