@Override public void run() { try { ACL.impersonate(ACL.SYSTEM); reload(); } catch (Exception e) { LOGGER.log(SEVERE,"Failed to reload Jenkins config",e); new JenkinsReloadFailed(e).publish(servletContext,root); } } }.start();
@Override public void run() { try { ACL.impersonate(ACL.SYSTEM); reload(); } catch (Exception e) { LOGGER.log(SEVERE,"Failed to reload Jenkins config",e); new JenkinsReloadFailed(e).publish(servletContext,root); } } }.start();
private void reloadJenkins() throws Exception { j.jenkins.reload(); project = (FreeStyleProject) j.jenkins.getItem("junit"); }
@Override public Void call() throws Exception { job.delete(); try { Jenkins jenkins = Jenkins.getInstance(); if (jenkins != null) { jenkins.reload(); } } catch (ReactorException e) { logger.log(Level.SEVERE, "Failed to reload jenkins job after deleting " + job.getName() + " from BuildConfig " + NamespaceName.create(buildConfig)); } return null; } });
@Override public void evaluate() throws Throwable { TopLevelItem i = r.j.jenkins.getItem("instance"); assertThat("Item loaded from disk", i, instanceOf(ComputedFolderImpl.class)); ComputedFolderImpl instance = (ComputedFolderImpl) i; checkComputedFolder(instance, 0); r.j.jenkins.reload(); i = r.j.jenkins.getItem("instance"); assertThat("Item loaded from disk", i, instanceOf(ComputedFolderImpl.class)); instance = (ComputedFolderImpl) i; checkComputedFolder(instance, 0); instance.doReload(); checkComputedFolder(instance, 0); } });
@Override public void evaluate() throws Throwable { TopLevelItem i = r.j.jenkins.getItem("instance"); assertThat("Item loaded from disk", i, instanceOf(ComputedFolderImpl.class)); ComputedFolderImpl instance = (ComputedFolderImpl) i; checkComputedFolder(instance, 0); r.j.jenkins.reload(); i = r.j.jenkins.getItem("instance"); assertThat("Item loaded from disk", i, instanceOf(ComputedFolderImpl.class)); instance = (ComputedFolderImpl) i; checkComputedFolder(instance, 0); instance.doReload(); checkComputedFolder(instance, 0); } });
@Override public void evaluate() throws Throwable { TopLevelItem i = r.j.jenkins.getItem("instance"); assertThat("Item loaded from disk", i, instanceOf(ComputedFolderImpl.class)); ComputedFolderImpl instance = (ComputedFolderImpl) i; checkComputedFolder(instance, 0, ChildNameGeneratorTest.this.inferNormalizerForm()); r.j.jenkins.reload(); i = r.j.jenkins.getItem("instance"); assertThat("Item loaded from disk", i, instanceOf(ComputedFolderImpl.class)); instance = (ComputedFolderImpl) i; checkComputedFolder(instance, 0, ChildNameGeneratorTest.this.inferNormalizerForm()); instance.doReload(); checkComputedFolder(instance, 0, ChildNameGeneratorTest.this.inferNormalizerForm()); } });
@Override public void evaluate() throws Throwable { TopLevelItem i = r.j.jenkins.getItem("instance"); assertThat("Item loaded from disk", i, instanceOf(ComputedFolderImpl.class)); ComputedFolderImpl instance = (ComputedFolderImpl) i; checkComputedFolder(instance, 0, ChildNameGeneratorTest.this.inferNormalizerForm()); r.j.jenkins.reload(); i = r.j.jenkins.getItem("instance"); assertThat("Item loaded from disk", i, instanceOf(ComputedFolderImpl.class)); instance = (ComputedFolderImpl) i; checkComputedFolder(instance, 0, ChildNameGeneratorTest.this.inferNormalizerForm()); instance.doReload(); checkComputedFolder(instance, 0, ChildNameGeneratorTest.this.inferNormalizerForm()); } });
@Override public void evaluate() throws Throwable { TopLevelItem i = r.j.jenkins.getItem("instance"); assertThat("Item loaded from disk", i, instanceOf(ComputedFolderImpl.class)); ComputedFolderImpl instance = (ComputedFolderImpl) i; checkComputedFolder(instance, 0); r.j.jenkins.reload(); i = r.j.jenkins.getItem("instance"); assertThat("Item loaded from disk", i, instanceOf(ComputedFolderImpl.class)); instance = (ComputedFolderImpl) i; checkComputedFolder(instance, 0); instance.doReload(); checkComputedFolder(instance, 0); } });
@Override public void evaluate() throws Throwable { TopLevelItem i = r.j.jenkins.getItem("instance"); assertThat("Item loaded from disk", i, instanceOf(ComputedFolderImpl.class)); ComputedFolderImpl instance = (ComputedFolderImpl) i; checkComputedFolder(instance, 0); r.j.jenkins.reload(); i = r.j.jenkins.getItem("instance"); assertThat("Item loaded from disk", i, instanceOf(ComputedFolderImpl.class)); instance = (ComputedFolderImpl) i; checkComputedFolder(instance, 0); instance.doReload(); checkComputedFolder(instance, 0); } });
@Override public void evaluate() throws Throwable { TopLevelItem i = r.j.jenkins.getItem("instance"); assertThat("Item loaded from disk", i, instanceOf(ComputedFolderImpl.class)); ComputedFolderImpl instance = (ComputedFolderImpl) i; checkComputedFolder(instance, 0, Normalizer.Form.NFC); r.j.jenkins.reload(); i = r.j.jenkins.getItem("instance"); assertThat("Item loaded from disk", i, instanceOf(ComputedFolderImpl.class)); instance = (ComputedFolderImpl) i; checkComputedFolder(instance, 0, Normalizer.Form.NFC); instance.doReload(); checkComputedFolder(instance, 0, Normalizer.Form.NFC); } });
@Issue("JENKINS-32487") @Test public void shouldAssignPropertyOwnerOnCreationAndReload() throws Exception { Folder folder = r.jenkins.createProject(Folder.class, "myFolder"); ProjectMatrixAuthorizationStrategy as = new ProjectMatrixAuthorizationStrategy(); // Need to do this to avoid JENKINS-9774 as.add(Jenkins.ADMINISTER, "alice"); r.jenkins.setAuthorizationStrategy(as); // We add a stub property to generate the persisted list // Then we ensure owner is being assigned properly. folder.addProperty(new FolderCredentialsProvider.FolderCredentialsProperty(new DomainCredentials[0])); assertPropertyOwner("After property add", folder, FolderCredentialsProvider.FolderCredentialsProperty.class); // Reload and ensure that the property owner is set r.jenkins.reload(); Folder reloadedFolder = r.jenkins.getItemByFullName("myFolder", Folder.class); assertPropertyOwner("After reload", reloadedFolder, FolderCredentialsProvider.FolderCredentialsProperty.class); }
@Test public void reloadJenkinsAndFindBuildInProgress() throws Exception { Folder f1 = r.jenkins.createProject(Folder.class, "f"); FreeStyleProject p1 = f1.createProject(FreeStyleProject.class, "test1"); FreeStyleBuild p1b1 = p1.scheduleBuild2(0).get(); // one completed build p1.getBuildersList().add(new SleepBuilder(99999999)); p1.save(); FreeStyleBuild p1b2 = p1.scheduleBuild2(0).waitForStart(); // another build in progress // trigger the full Jenkins reload r.jenkins.reload(); Folder f2 = (Folder) r.jenkins.getItem("f"); assertNotSame(f1,f2); FreeStyleProject p2 = (FreeStyleProject) f2.getItem("test1"); /* Fails now. Why was this here? assertNotSame(p1,p2); */ FreeStyleBuild p2b1 = p2.getBuildByNumber(1); FreeStyleBuild p2b2 = p2.getBuildByNumber(2); assertTrue(p2b2.isBuilding()); assertSame(p2b2,p1b2); assertNotSame(p1b1,p2b1); p1b2.getExecutor().interrupt(); // kill the executor }