2017-08-31 1 views
0

Ich versuche, App zu Wolke Foundry von Jenkins zu schieben. Und es klagt über diese:Cloud Gießerei-Plugin wirft Fehler beim Drücken von Jenkins CF-AppResourcesFileModeInvalid (160003)

org.cloudfoundry.client.v2.ClientV2Exception: CF-AppResourcesFileModeInvalid(160003): The resource file mode is invalid: File mode '444' with path '.git/objects/pack/pack-af4cdbe6faac9d245253dafc1ecae06dc3fa5816.pack' is invalid. Minimum file mode is '0600' 
    at org.cloudfoundry.util.JobUtils.getError(JobUtils.java:81) 
    at reactor.core.publisher.MonoThenMap$ThenMapMain.onNext(MonoThenMap.java:120) 
    at reactor.core.publisher.FluxFilter$FilterSubscriber.onNext(FluxFilter.java:96) 

ich versucht habe:

1.Doing chmod 666 (and even 777) before the build step. 
2.Adding these in my .cfignore: 
    scripts 
.git/ 
.git/objects/pack/* 
plugins/**/* 
/.bundle 
tmp/ 
.pack 
  1. Abwischen Arbeitsplatz in jenkins und App auf cf vor einem anderen Versuch ab.

Nichts funktioniert. Eine interessante Sache ist nach einem neuen Commit zu .cfignore (Bearbeiten einer Zeile und Drücken auf Git), der erste Build in Jenkins funktioniert. Nachfolgendes Build schlägt fehl.

Irgendwelche Hilfe? Danke!

Antwort

0

Das Grundproblem ist, dass die Cloud Foundry Java Client den gesamten Inhalt des konfigurierten Pfades auf den Server schiebt. Die Cloud Foundry CLI filtert automatisch Quellcodeverwaltungsverzeichnisse (und möglicherweise alle versteckten Verzeichnisse) heraus, die die am häufigsten verwendeten Orte herausfiltern, um < 0600 zu sehen, aber das ist nirgendwo wirklich dokumentiert, daher entsprechen wir diesem Verhalten nicht. Ich habe mit der Leitung der CLI gechattet und sie dokumentieren dieses Verhalten an diesem Punkt we’ll implement what they spec.

Die Datei .cfignore funktioniert auch noch nicht im Client, aber sobald dies vom CLI-Team korrekt festgelegt wurde, würden wir auch bearbeiten.

+0

Gut zu wissen, dass es in der zukünftigen Version bereits in Betracht gezogen wird. Vielen Dank . – sang