Add nightly sec test
This commit is contained in:
parent
2e66664586
commit
74463ce70e
@ -1,5 +1,8 @@
|
|||||||
package buildjob;
|
package buildjob;
|
||||||
|
|
||||||
|
import java.time.DayOfWeek;
|
||||||
|
import java.time.LocalTime;
|
||||||
|
|
||||||
import com.atlassian.bamboo.specs.api.BambooSpec;
|
import com.atlassian.bamboo.specs.api.BambooSpec;
|
||||||
import com.atlassian.bamboo.specs.api.builders.BambooKey;
|
import com.atlassian.bamboo.specs.api.builders.BambooKey;
|
||||||
import com.atlassian.bamboo.specs.api.builders.docker.DockerConfiguration;
|
import com.atlassian.bamboo.specs.api.builders.docker.DockerConfiguration;
|
||||||
@ -16,6 +19,8 @@ import com.atlassian.bamboo.specs.api.builders.plan.configuration.ConcurrentBuil
|
|||||||
import com.atlassian.bamboo.specs.api.builders.project.Project;
|
import com.atlassian.bamboo.specs.api.builders.project.Project;
|
||||||
import com.atlassian.bamboo.specs.builders.task.*;
|
import com.atlassian.bamboo.specs.builders.task.*;
|
||||||
import com.atlassian.bamboo.specs.builders.trigger.BitbucketServerTrigger;
|
import com.atlassian.bamboo.specs.builders.trigger.BitbucketServerTrigger;
|
||||||
|
import com.atlassian.bamboo.specs.builders.trigger.RepositoryPollingTrigger;
|
||||||
|
import com.atlassian.bamboo.specs.builders.trigger.ScheduledTrigger;
|
||||||
import com.atlassian.bamboo.specs.model.task.InjectVariablesScope;
|
import com.atlassian.bamboo.specs.model.task.InjectVariablesScope;
|
||||||
import com.atlassian.bamboo.specs.model.task.ScriptTaskProperties.Location;
|
import com.atlassian.bamboo.specs.model.task.ScriptTaskProperties.Location;
|
||||||
import com.atlassian.bamboo.specs.util.BambooServer;
|
import com.atlassian.bamboo.specs.util.BambooServer;
|
||||||
@ -40,10 +45,15 @@ public class PlanSpec {
|
|||||||
//By default, credentials are read from the '.credentials' file.
|
//By default, credentials are read from the '.credentials' file.
|
||||||
BambooServer bambooServer = new BambooServer("http://localhost:8085");
|
BambooServer bambooServer = new BambooServer("http://localhost:8085");
|
||||||
|
|
||||||
Plan plan = new PlanSpec().createPlan();
|
Plan buildPlan = new PlanSpec().createPlanBuild();
|
||||||
bambooServer.publish(plan);
|
bambooServer.publish(buildPlan);
|
||||||
PlanPermissions planPermission = new PlanSpec().createPlanPermission(plan.getIdentifier());
|
PlanPermissions buildPlanPermission = new PlanSpec().createPlanPermission(buildPlan.getIdentifier());
|
||||||
bambooServer.publish(planPermission);
|
bambooServer.publish(buildPlanPermission);
|
||||||
|
|
||||||
|
Plan secPlan = new PlanSpec().createSecBuild();
|
||||||
|
bambooServer.publish(secPlan);
|
||||||
|
PlanPermissions secPlanPermission = new PlanSpec().createPlanPermission(secPlan.getIdentifier());
|
||||||
|
bambooServer.publish(secPlanPermission);
|
||||||
}
|
}
|
||||||
|
|
||||||
private PlanPermissions createPlanPermission(PlanIdentifier planIdentifier) {
|
private PlanPermissions createPlanPermission(PlanIdentifier planIdentifier) {
|
||||||
@ -64,11 +74,11 @@ public class PlanSpec {
|
|||||||
.key(new BambooKey("RED"));
|
.key(new BambooKey("RED"));
|
||||||
}
|
}
|
||||||
|
|
||||||
public Plan createPlan() {
|
public Plan createPlanBuild() {
|
||||||
return new Plan(
|
return new Plan(
|
||||||
project(),
|
project(),
|
||||||
SERVICE_NAME, new BambooKey(SERVICE_KEY))
|
SERVICE_NAME, new BambooKey(SERVICE_KEY))
|
||||||
.description("Plan created from (enter repository url of your plan)")
|
.description("Build Plan for Persitence Service")
|
||||||
.stages(new Stage("Default Stage")
|
.stages(new Stage("Default Stage")
|
||||||
.jobs(new Job("Default Job",
|
.jobs(new Job("Default Job",
|
||||||
new BambooKey("JOB1"))
|
new BambooKey("JOB1"))
|
||||||
@ -90,11 +100,6 @@ public class PlanSpec {
|
|||||||
.description("Resultparser")
|
.description("Resultparser")
|
||||||
.resultDirectories("**/test-reports/*.xml, **/target/surefire-reports/*.xml, **/target/failsafe-reports/*.xml")
|
.resultDirectories("**/test-reports/*.xml, **/target/surefire-reports/*.xml, **/target/failsafe-reports/*.xml")
|
||||||
.enabled(true),
|
.enabled(true),
|
||||||
new ScriptTask()
|
|
||||||
.description("Sonar")
|
|
||||||
.location(Location.FILE)
|
|
||||||
.fileFromPath("bamboo-specs/src/main/resources/scripts/sonar-java.sh")
|
|
||||||
.argument(SERVICE_NAME),
|
|
||||||
new InjectVariablesTask()
|
new InjectVariablesTask()
|
||||||
.description("Inject git Tag")
|
.description("Inject git Tag")
|
||||||
.path("git.tag")
|
.path("git.tag")
|
||||||
@ -121,4 +126,44 @@ public class PlanSpec {
|
|||||||
.whenInactiveInRepositoryAfterDays(14))
|
.whenInactiveInRepositoryAfterDays(14))
|
||||||
.notificationForCommitters());
|
.notificationForCommitters());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public Plan createSecBuild() {
|
||||||
|
return new Plan(
|
||||||
|
project(),
|
||||||
|
SERVICE_NAME + "Sec", new BambooKey(SERVICE_KEY + "SEC"))
|
||||||
|
.description("Security Analysis Plan")
|
||||||
|
.stages(new Stage("Default Stage")
|
||||||
|
.jobs(new Job("Default Job",
|
||||||
|
new BambooKey("JOB1"))
|
||||||
|
.tasks(
|
||||||
|
new ScriptTask()
|
||||||
|
.description("Clean")
|
||||||
|
.inlineBody("#!/bin/bash\n" +
|
||||||
|
"set -e\n" +
|
||||||
|
"rm -rf ./*"),
|
||||||
|
new VcsCheckoutTask()
|
||||||
|
.description("Checkout Default Repository")
|
||||||
|
.checkoutItems(new CheckoutItem().defaultRepository()),
|
||||||
|
new ScriptTask()
|
||||||
|
.description("Sonar")
|
||||||
|
.location(Location.FILE)
|
||||||
|
.fileFromPath("bamboo-specs/src/main/resources/scripts/sonar-java.sh")
|
||||||
|
.argument(SERVICE_NAME))
|
||||||
|
.dockerConfiguration(
|
||||||
|
new DockerConfiguration()
|
||||||
|
.image("nexus.iqser.com:5001/infra/maven:3.6.2-jdk-13-3.0.0")
|
||||||
|
.dockerRunArguments("--net=host")
|
||||||
|
.volume("/etc/maven/settings.xml", "/usr/share/maven/ref/settings.xml")
|
||||||
|
.volume("/var/run/docker.sock", "/var/run/docker.sock")
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
.linkedRepositories("RED / " + SERVICE_NAME)
|
||||||
|
.triggers(
|
||||||
|
new ScheduledTrigger()
|
||||||
|
.scheduleOnceDaily(LocalTime.of(12, 00)),
|
||||||
|
new BitbucketServerTrigger())
|
||||||
|
.planBranchManagement(new PlanBranchManagement()
|
||||||
|
.notificationForCommitters());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -10,8 +10,10 @@ import com.atlassian.bamboo.specs.api.util.EntityPropertiesBuilders;
|
|||||||
public class PlanSpecTest {
|
public class PlanSpecTest {
|
||||||
@Test
|
@Test
|
||||||
public void checkYourPlanOffline() throws PropertiesValidationException {
|
public void checkYourPlanOffline() throws PropertiesValidationException {
|
||||||
Plan plan = new PlanSpec().createPlan();
|
Plan buildPlan = new PlanSpec().createPlanBuild();
|
||||||
|
EntityPropertiesBuilders.build(buildPlan);
|
||||||
|
|
||||||
EntityPropertiesBuilders.build(plan);
|
Plan secPlan = new PlanSpec().createSecBuild();
|
||||||
|
EntityPropertiesBuilders.build(secPlan);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Loading…
x
Reference in New Issue
Block a user