2017-10-16 4 views
0

Était juste jeter un oeil à https://github.com/jenkinsci/pipeline-plugin/blob/master/DEVGUIDE.md.Comment gérer l'espace de travail dans le plugin Jenkins pour Pipeline & Freestyle?

J'avais initialement ceci:

public boolean perform(AbstractBuild build, Launcher launcher, BuildListener listener) { 
    // The Jenkins job's workspace 
    FilePath path = new FilePath(build.getWorkspace(), "bpsSpec.yml"); 
    // ... 
} 

Après avoir lu le guide de mise à niveau je l'ai changé pour

public boolean perform(Run<?,?> build, Launcher launcher, TaskListener listener) { 
    FilePath workspace = null; 
    // The Jenkins job's workspace 
    if (build instanceof AbstractBuild) { 
    workspace = build.getWorkspace(); 
    } 

    FilePath path = new FilePath(workspace, "bpsSpec.yml"); 
    // .. 
} 

Les docs disent Use the specified workspace rather than the former build.getWorkspace() ... mais je ne suis pas sûr qui spécifie que et Comment. Aussi build.getWorkspace() provoque une erreur de compilation, probablement parce que je n'ai jamais utilisé génériques avant et il me manque quelque chose d'évident.

Répondre

2

Vous devez implémenter à la place, et il reçoit un répertoire en tant qu'argument.

+0

Merci. J'ai bien travaillé. Juste ajouté l'importation 'implements SimpleBuildStep', et fait l'en-tête de la fonction change sur' perform'. –