2016-04-06 24 views
7

Próbuję zgłosić plik .html z wtyczką wydawcy HTML w Jenkins , ponieważ wydawca HTML jest aktualizowany do wersji 1.10, nie może publikować HTML.Jenkins HTML Publisher Plugin: pozwól na problem ze skryptem

Komunikat o błędzie Dostaję:

Blocked script execution in '{mydomain}' because the document's frame is sandboxed and the 'allow-scripts' permission is not set. 

Uncaught SecurityError: Failed to read the 'localStorage' property from 'Window': The document is sandboxed and lacks the 'allow-same-origin' flag. 

znalazłem ten dokument: https://wiki.jenkins-ci.org/display/JENKINS/Configuring+Content+Security+Policy

Opowiada o CSP.

biegnę Jenkins z arg:

/usr/bin/java -Djava.awt.headless=true -Dhudson.model.DirectoryBrowserSupport.CSP=sandbox allow-scripts; style-src 'unsafe-inline' *;script-src 'unsafe-inline' *; -jar /usr/share/jenkins/jenkins.war --webroot=/var/cache/jenkins/war --httpPort=8080 --ajp13Port=-1 

ale wciąż mam ten sam błąd powyżej.

co próbowałem args:

1. -Dhudson.model.DirectoryBrowserSupport.CSP="sandbox; default-src 'self';" 
2. -Dhudson.model.DirectoryBrowserSupport.CSP= 
3. -Dhudson.model.DirectoryBrowserSupport.CSP="sandbox; default-src *;" 
4. -Dhudson.model.DirectoryBrowserSupport.CSP="sandbox allow-scripts; default-src *;"  

.html znajduje się w:

{mydomain}/job/{job_name}/Doc/index.html 

Odpowiedz

6

Może trzeba spróbować z pustej opcji CSP?

/usr/bin/java -Djava.awt.headless=true -Dhudson.model.DirectoryBrowserSupport.CSP= -jar /usr/share/jenkins/jenkins.war --webroot=/var/cache/jenkins/war --httpPort=8080 --ajp13Port=-1 

W mojej instancji Jenkins rozwiązał on moje problemy z raportowaniem.

wiem, że to nie jest bezpiecznym rozwiązaniem, ale nie mogę znaleźć innego rozwiązania :(

+0

Próbowałem już z pustą opcją CSP, ale otrzymałem ten sam błąd :( –

+2

Rozwiązuję ten problem, twoja odpowiedź jest właściwa, ale powinna również usunąć pamięć podręczną przeglądarki, dziękuję –

+0

Miło to słyszeć, dziękuję za aktualizację :) –

2

I w obliczu podobnego problemu znalazłem i zastosowano następujące rozwiązania.

  1. Przejdź do strony administracyjnej Jenkins (zalogować się jako admin).
  2. Przejść do "script Console".
  3. Następnie w paście kopiowania konsola skrypt po to sprawiło, że działa.

    System.setProperty ("hudson.model.DirectoryBrowserSupport.CSP", "sandbox allow-scripts; default-src *; style-src * http: // * "niebezpieczne-inline" "unsafe-eval"; Script-src „ja” http: // * „niebezpieczne-inline” „niebezpieczne-eval” ");

Ten link zawiera więcej szczegółów na temat każdego z parametrów, które zostały ustawione w powyższej linii kodu