Esempio n. 1
0
 @SuppressWarnings("deprecation")
 @Override
 public void onLoaded() {
   for (AbstractProject<?, ?> p : Jenkins.getInstance().getAllItems(AbstractProject.class)) {
     try {
       ArtifactArchiver aa = p.getPublishersList().get(ArtifactArchiver.class);
       if (aa != null && aa.latestOnly != null) {
         if (aa.latestOnly) {
           BuildDiscarder bd = p.getBuildDiscarder();
           if (bd instanceof LogRotator) {
             LogRotator lr = (LogRotator) bd;
             if (lr.getArtifactNumToKeep() == -1) {
               p.setBuildDiscarder(
                   new LogRotator(
                       lr.getDaysToKeep(), lr.getNumToKeep(), lr.getArtifactDaysToKeep(), 1));
             } else {
               LOG.log(
                   Level.WARNING,
                   "will not clobber artifactNumToKeep={0} in {1}",
                   new Object[] {lr.getArtifactNumToKeep(), p});
             }
           } else if (bd == null) {
             p.setBuildDiscarder(new LogRotator(-1, -1, -1, 1));
           } else {
             LOG.log(
                 Level.WARNING, "unrecognized BuildDiscarder {0} in {1}", new Object[] {bd, p});
           }
         }
         aa.latestOnly = null;
         p.save();
       }
       Fingerprinter f = p.getPublishersList().get(Fingerprinter.class);
       if (f != null && f.getRecordBuildArtifacts()) {
         f.recordBuildArtifacts = null;
         if (aa != null) {
           aa.setFingerprint(true);
         }
         if (f.getTargets().isEmpty()) { // no other reason to be here
           p.getPublishersList().remove(f);
         }
         p.save();
       }
     } catch (IOException x) {
       LOG.log(Level.WARNING, "could not migrate " + p, x);
     }
   }
 }