From d36245e1a02e0ab7c0a6490eb9f5485ad2337ab4 Mon Sep 17 00:00:00 2001 From: cdietrich Date: Thu, 17 Feb 2022 16:07:21 +0100 Subject: [PATCH 01/17] add bamboo-specs --- bamboo-specs/pom.xml | 40 ++++ .../src/main/java/buildjob/PlanSpec.java | 181 ++++++++++++++++++ .../main/resources/scripts/create-licence.sh | 19 ++ .../main/resources/scripts/docker-build.sh | 19 ++ .../src/main/resources/scripts/git-tag.sh | 9 + .../src/main/resources/scripts/sonar-scan.sh | 62 ++++++ .../src/test/java/buildjob/PlanSpecTest.java | 16 ++ 7 files changed, 346 insertions(+) create mode 100644 bamboo-specs/pom.xml create mode 100644 bamboo-specs/src/main/java/buildjob/PlanSpec.java create mode 100755 bamboo-specs/src/main/resources/scripts/create-licence.sh create mode 100755 bamboo-specs/src/main/resources/scripts/docker-build.sh create mode 100755 bamboo-specs/src/main/resources/scripts/git-tag.sh create mode 100755 bamboo-specs/src/main/resources/scripts/sonar-scan.sh create mode 100644 bamboo-specs/src/test/java/buildjob/PlanSpecTest.java diff --git a/bamboo-specs/pom.xml b/bamboo-specs/pom.xml new file mode 100644 index 0000000..40bc09e --- /dev/null +++ b/bamboo-specs/pom.xml @@ -0,0 +1,40 @@ + + 4.0.0 + + + com.atlassian.bamboo + bamboo-specs-parent + 7.1.2 + + + + bamboo-specs + 1.0.0-SNAPSHOT + jar + + + true + + + + + com.atlassian.bamboo + bamboo-specs-api + + + com.atlassian.bamboo + bamboo-specs + + + + + junit + junit + test + + + + + + \ No newline at end of file diff --git a/bamboo-specs/src/main/java/buildjob/PlanSpec.java b/bamboo-specs/src/main/java/buildjob/PlanSpec.java new file mode 100644 index 0000000..dbbbf7e --- /dev/null +++ b/bamboo-specs/src/main/java/buildjob/PlanSpec.java @@ -0,0 +1,181 @@ +package buildjob; + +import com.atlassian.bamboo.specs.api.BambooSpec; +import com.atlassian.bamboo.specs.api.builders.BambooKey; +import com.atlassian.bamboo.specs.api.builders.docker.DockerConfiguration; +import com.atlassian.bamboo.specs.api.builders.permission.PermissionType; +import com.atlassian.bamboo.specs.api.builders.permission.Permissions; +import com.atlassian.bamboo.specs.api.builders.permission.PlanPermissions; +import com.atlassian.bamboo.specs.api.builders.plan.Job; +import com.atlassian.bamboo.specs.api.builders.plan.Plan; +import com.atlassian.bamboo.specs.api.builders.plan.PlanIdentifier; +import com.atlassian.bamboo.specs.api.builders.plan.Stage; +import com.atlassian.bamboo.specs.api.builders.plan.branches.BranchCleanup; +import com.atlassian.bamboo.specs.api.builders.plan.branches.PlanBranchManagement; +import com.atlassian.bamboo.specs.api.builders.project.Project; +import com.atlassian.bamboo.specs.builders.task.CheckoutItem; +import com.atlassian.bamboo.specs.builders.task.InjectVariablesTask; +import com.atlassian.bamboo.specs.builders.task.ScriptTask; +import com.atlassian.bamboo.specs.builders.task.VcsCheckoutTask; +import com.atlassian.bamboo.specs.builders.task.CleanWorkingDirectoryTask; +import com.atlassian.bamboo.specs.builders.task.VcsTagTask; +import com.atlassian.bamboo.specs.builders.trigger.BitbucketServerTrigger; +import com.atlassian.bamboo.specs.model.task.InjectVariablesScope; +import com.atlassian.bamboo.specs.api.builders.Variable; +import com.atlassian.bamboo.specs.util.BambooServer; +import com.atlassian.bamboo.specs.builders.task.ScriptTask; +import com.atlassian.bamboo.specs.model.task.ScriptTaskProperties.Location; + +/** + * Plan configuration for Bamboo. + * Learn more on: https://confluence.atlassian.com/display/BAMBOO/Bamboo+Specs + */ +@BambooSpec +public class PlanSpec { + + private static final String SERVICE_NAME = "fb-detr-service"; + private static final String SERVICE_NAME_BASE = "fb-detr-service-base"; + + private static final String SERVICE_KEY = SERVICE_NAME.toUpperCase().replaceAll("-",""); + + /** + * Run main to publish plan on Bamboo + */ + public static void main(final String[] args) throws Exception { + //By default credentials are read from the '.credentials' file. + BambooServer bambooServer = new BambooServer("http://localhost:8085"); + + Plan plan = new PlanSpec().createDockerBuildPlan(); + bambooServer.publish(plan); + PlanPermissions planPermission = new PlanSpec().createPlanPermission(plan.getIdentifier()); + bambooServer.publish(planPermission); + } + + private PlanPermissions createPlanPermission(PlanIdentifier planIdentifier) { + Permissions permission = new Permissions() + .userPermissions("atlbamboo", PermissionType.EDIT, PermissionType.VIEW, PermissionType.ADMIN, PermissionType.CLONE, PermissionType.BUILD) + .groupPermissions("research", PermissionType.EDIT, PermissionType.VIEW, PermissionType.CLONE, PermissionType.BUILD) + .groupPermissions("Development", PermissionType.EDIT, PermissionType.VIEW, PermissionType.CLONE, PermissionType.BUILD) + .groupPermissions("QA", PermissionType.EDIT, PermissionType.VIEW, PermissionType.CLONE, PermissionType.BUILD) + .loggedInUserPermissions(PermissionType.VIEW) + .anonymousUserPermissionView(); + return new PlanPermissions(planIdentifier.getProjectKey(), planIdentifier.getPlanKey()).permissions(permission); + } + + private Project project() { + return new Project() + .name("RED") + .key(new BambooKey("RED")); + } + + public Plan createDockerBuildPlan() { + return new Plan( + project(), + SERVICE_NAME, new BambooKey(SERVICE_KEY)) + .description("Docker build for image-service.") + // .variables() + .stages(new Stage("Build Stage") + .jobs( + new Job("Build Job", new BambooKey("BUILD")) + .tasks( + new CleanWorkingDirectoryTask() + .description("Clean working directory.") + .enabled(true), + new VcsCheckoutTask() + .description("Checkout default repository.") + .checkoutItems(new CheckoutItem().defaultRepository()), + new ScriptTask() + .description("Set config and keys.") + .inlineBody("mkdir -p ~/.ssh\n" + + "echo \"${bamboo.bamboo_agent_ssh}\" | base64 -d >> ~/.ssh/id_rsa\n" + + "echo \"host vector.iqser.com\" > ~/.ssh/config\n" + + "echo \" user bamboo-agent\" >> ~/.ssh/config\n" + + "chmod 600 ~/.ssh/config ~/.ssh/id_rsa"), + new ScriptTask() + .description("Build Docker container.") + .location(Location.FILE) + .fileFromPath("bamboo-specs/src/main/resources/scripts/docker-build.sh") + .argument(SERVICE_NAME + " " + SERVICE_NAME_BASE)) + .dockerConfiguration( + new DockerConfiguration() + .image("nexus.iqser.com:5001/infra/release_build:4.2.0") + .volume("/var/run/docker.sock", "/var/run/docker.sock")), + new Job("Sonar Job", new BambooKey("SONAR")) + .tasks( + new CleanWorkingDirectoryTask() + .description("Clean working directory.") + .enabled(true), + new VcsCheckoutTask() + .description("Checkout default repository.") + .checkoutItems(new CheckoutItem().defaultRepository()), + new ScriptTask() + .description("Set config and keys.") + .inlineBody("mkdir -p ~/.ssh\n" + + "echo \"${bamboo.bamboo_agent_ssh}\" | base64 -d >> ~/.ssh/id_rsa\n" + + "echo \"host vector.iqser.com\" > ~/.ssh/config\n" + + "echo \" user bamboo-agent\" >> ~/.ssh/config\n" + + "chmod 600 ~/.ssh/config ~/.ssh/id_rsa"), + new ScriptTask() + .description("Run Sonarqube scan.") + .location(Location.FILE) + .fileFromPath("bamboo-specs/src/main/resources/scripts/sonar-scan.sh") + .argument(SERVICE_NAME), + new ScriptTask() + .description("Shut down any running docker containers.") + .location(Location.FILE) + .inlineBody("pip install docker-compose\n" + + "docker-compose down")) + .dockerConfiguration( + new DockerConfiguration() + .image("nexus.iqser.com:5001/infra/release_build:4.2.0") + .volume("/var/run/docker.sock", "/var/run/docker.sock"))), + new Stage("Licence Stage") + .jobs( + new Job("Git Tag Job", new BambooKey("GITTAG")) + .tasks( + new VcsCheckoutTask() + .description("Checkout default repository.") + .checkoutItems(new CheckoutItem().defaultRepository()), + new ScriptTask() + .description("Build git tag.") + .location(Location.FILE) + .fileFromPath("bamboo-specs/src/main/resources/scripts/git-tag.sh"), + new InjectVariablesTask() + .description("Inject git tag.") + .path("git.tag") + .namespace("g") + .scope(InjectVariablesScope.LOCAL), + new VcsTagTask() + .description("${bamboo.g.gitTag}") + .tagName("${bamboo.g.gitTag}") + .defaultRepository()) + .dockerConfiguration( + new DockerConfiguration() + .image("nexus.iqser.com:5001/infra/release_build:2.7.0")), + new Job("Licence Job", new BambooKey("LICENCE")) + .enabled(false) + .tasks( + new VcsCheckoutTask() + .description("Checkout default repository.") + .checkoutItems(new CheckoutItem().defaultRepository()), + new ScriptTask() + .description("Build licence.") + .location(Location.FILE) + .fileFromPath("bamboo-specs/src/main/resources/scripts/create-licence.sh")) + .dockerConfiguration( + new DockerConfiguration() + .image("nexus.iqser.com:5001/infra/maven:3.6.2-jdk-13-3.0.0") + .volume("/etc/maven/settings.xml", "/usr/share/maven/ref/settings.xml") + .volume("/var/run/docker.sock", "/var/run/docker.sock")))) + .linkedRepositories("RED / " + SERVICE_NAME) + .linkedRepositories("RR / redai_image") + .triggers(new BitbucketServerTrigger()) + .planBranchManagement(new PlanBranchManagement() + .createForVcsBranch() + .delete(new BranchCleanup() + .whenInactiveInRepositoryAfterDays(14)) + .notificationForCommitters()); + } + + +} diff --git a/bamboo-specs/src/main/resources/scripts/create-licence.sh b/bamboo-specs/src/main/resources/scripts/create-licence.sh new file mode 100755 index 0000000..a9054cd --- /dev/null +++ b/bamboo-specs/src/main/resources/scripts/create-licence.sh @@ -0,0 +1,19 @@ +#!/bin/bash +set -e + +if [[ \"${bamboo_version_tag}\" != \"dev\" ]] +then + ${bamboo_capability_system_builder_mvn3_Maven_3}/bin/mvn \ + -f ${bamboo_build_working_directory}/pom.xml \ + versions:set \ + -DnewVersion=${bamboo_version_tag} + + ${bamboo_capability_system_builder_mvn3_Maven_3}/bin/mvn \ + -f ${bamboo_build_working_directory}/pom.xml \ + -B clean deploy \ + -e -DdeployAtEnd=true \ + -Dmaven.wagon.http.ssl.insecure=true \ + -Dmaven.wagon.http.ssl.allowall=true \ + -Dmaven.wagon.http.ssl.ignore.validity.dates=true \ + -DaltDeploymentRepository=iqser_release::default::https://nexus.iqser.com/repository/gin4-platform-releases +fi \ No newline at end of file diff --git a/bamboo-specs/src/main/resources/scripts/docker-build.sh b/bamboo-specs/src/main/resources/scripts/docker-build.sh new file mode 100755 index 0000000..f17638f --- /dev/null +++ b/bamboo-specs/src/main/resources/scripts/docker-build.sh @@ -0,0 +1,19 @@ +#!/bin/bash +set -e + +SERVICE_NAME=$1 +SERVICE_NAME_BASE=$2 + +python3 -m venv build_venv +source build_venv/bin/activate +python3 -m pip install --upgrade pip + +pip install dvc +pip install 'dvc[ssh]' +dvc pull + +echo "index-url = https://${bamboo_nexus_user}:${bamboo_nexus_password}@nexus.iqser.com/repository/python-combind/simple" >> pip.conf +docker build -f Dockerfile_base -t nexus.iqser.com:5001/red/$SERVICE_NAME_BASE:${bamboo_version_tag} . +docker build -f Dockerfile -t nexus.iqser.com:5001/red/$SERVICE_NAME:${bamboo_version_tag} --build-arg VERSION_TAG=${bamboo_version_tag} . +echo "${bamboo_nexus_password}" | docker login --username "${bamboo_nexus_user}" --password-stdin nexus.iqser.com:5001 +docker push nexus.iqser.com:5001/red/$SERVICE_NAME:${bamboo_version_tag} diff --git a/bamboo-specs/src/main/resources/scripts/git-tag.sh b/bamboo-specs/src/main/resources/scripts/git-tag.sh new file mode 100755 index 0000000..2005666 --- /dev/null +++ b/bamboo-specs/src/main/resources/scripts/git-tag.sh @@ -0,0 +1,9 @@ +#!/bin/bash +set -e + +if [[ "${bamboo_version_tag}" = "dev" ]] +then + echo "gitTag=${bamboo_planRepository_1_branch}_${bamboo_buildNumber}" > git.tag +else + echo "gitTag=${bamboo_version_tag}" > git.tag +fi \ No newline at end of file diff --git a/bamboo-specs/src/main/resources/scripts/sonar-scan.sh b/bamboo-specs/src/main/resources/scripts/sonar-scan.sh new file mode 100755 index 0000000..ca8c1f5 --- /dev/null +++ b/bamboo-specs/src/main/resources/scripts/sonar-scan.sh @@ -0,0 +1,62 @@ +#!/bin/bash +set -e + +export JAVA_HOME=/usr/bin/sonar-scanner/jre + +python3 -m venv build_venv +source build_venv/bin/activate +python3 -m pip install --upgrade pip + +echo "dev setup for unit test and coverage" + +pip install -e incl/detr/ + +pip install -r requirements.txt + + +echo "DVC pull step" +dvc pull + +#echo "coverage calculation" +#coverage run -m pytest -s --disable-warnings incl/image_service +#echo "coverage report generation" +#coverage report -m +#coverage xml + +SERVICE_NAME=$1 + +echo "dependency-check:aggregate" +mkdir -p reports +dependency-check --enableExperimental -f JSON -f HTML -f XML \ + --disableAssembly -s . -o reports --project $SERVICE_NAME --exclude ".git/**" --exclude "venv/**" \ + --exclude "build_venv/**" --exclude "**/__pycache__/**" + +if [[ -z "${bamboo_repository_pr_key}" ]] +then + echo "Sonar Scan for branch: ${bamboo_planRepository_1_branch}" + /usr/bin/sonar-scanner/bin/sonar-scanner \ + -Dsonar.projectKey=RED_$SERVICE_NAME \ + -Dsonar.sources=incl/image_service/image_service,incl/redai_image/redai/redai/backend,incl/redai_image/redai/redai/utils,src,incl/redai_image/redai/redai/model/efficientnetb0mod.py \ + -Dsonar.host.url=https://sonarqube.iqser.com \ + -Dsonar.login=${bamboo_sonarqube_api_token_secret} \ + -Dsonar.branch.name=${bamboo_planRepository_1_branch} \ + -Dsonar.dependencyCheck.jsonReportPath=reports/dependency-check-report.json \ + -Dsonar.dependencyCheck.xmlReportPath=reports/dependency-check-report.xml \ + -Dsonar.dependencyCheck.htmlReportPath=reports/dependency-check-report.html \ + -Dsonar.python.coverage.reportPaths=reports/coverage.xml + +else + echo "Sonar Scan for PR with key1: ${bamboo_repository_pr_key}" + /usr/bin/sonar-scanner/bin/sonar-scanner \ + -Dsonar.projectKey=RED_$SERVICE_NAME \ + -Dsonar.sources=incl/image_service/image_service,incl/redai_image/redai/redai/backend,incl/redai_image/redai/redai/utils,src,incl/redai_image/redai/redai/model/efficientnetb0mod.py \ + -Dsonar.host.url=https://sonarqube.iqser.com \ + -Dsonar.login=${bamboo_sonarqube_api_token_secret} \ + -Dsonar.pullrequest.key=${bamboo_repository_pr_key} \ + -Dsonar.pullrequest.branch=${bamboo_repository_pr_sourceBranch} \ + -Dsonar.pullrequest.base=${bamboo_repository_pr_targetBranch} \ + -Dsonar.dependencyCheck.jsonReportPath=reports/dependency-check-report.json \ + -Dsonar.dependencyCheck.xmlReportPath=reports/dependency-check-report.xml \ + -Dsonar.dependencyCheck.htmlReportPath=reports/dependency-check-report.html \ + -Dsonar.python.coverage.reportPaths=reports/coverage.xml +fi diff --git a/bamboo-specs/src/test/java/buildjob/PlanSpecTest.java b/bamboo-specs/src/test/java/buildjob/PlanSpecTest.java new file mode 100644 index 0000000..fada379 --- /dev/null +++ b/bamboo-specs/src/test/java/buildjob/PlanSpecTest.java @@ -0,0 +1,16 @@ +package buildjob; + + +import com.atlassian.bamboo.specs.api.builders.plan.Plan; +import com.atlassian.bamboo.specs.api.exceptions.PropertiesValidationException; +import com.atlassian.bamboo.specs.api.util.EntityPropertiesBuilders; +import org.junit.Test; + +public class PlanSpecTest { + @Test + public void checkYourPlanOffline() throws PropertiesValidationException { + Plan plan = new PlanSpec().createDockerBuildPlan(); + + EntityPropertiesBuilders.build(plan); + } +} \ No newline at end of file From 07cb72a5725d5335600f1c30d9442c4aa2fe5d8f Mon Sep 17 00:00:00 2001 From: cdietrich Date: Thu, 17 Feb 2022 16:16:43 +0100 Subject: [PATCH 02/17] add live and ready probes --- src/run_service.py | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/run_service.py b/src/run_service.py index 17f7492..81ac972 100644 --- a/src/run_service.py +++ b/src/run_service.py @@ -57,6 +57,18 @@ def run_server(resume): app = Flask(__name__) + @app.route("/ready", methods=["GET"]) + def ready(): + resp = jsonify("OK") + resp.status_code = 200 + return resp + + @app.route("/health", methods=["GET"]) + def healthy(): + resp = jsonify("OK") + resp.status_code = 200 + return resp + @app.route("/", methods=["POST"]) def predict_request(): From 63fbeba1a54b62bcab913161a2c4e104dce95cbc Mon Sep 17 00:00:00 2001 From: cdietrich Date: Thu, 17 Feb 2022 16:25:40 +0100 Subject: [PATCH 03/17] change service name to repo name --- Dockerfile | 2 +- bamboo-specs/src/main/java/buildjob/PlanSpec.java | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/Dockerfile b/Dockerfile index ce41849..c7d3c41 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,7 +1,7 @@ ARG BASE_ROOT="nexus.iqser.com:5001/red/" ARG VERSION_TAG=latest -FROM ${BASE_ROOT}detr-server-base:${VERSION_TAG} +FROM ${BASE_ROOT}fb_detr_prediction_container-base:${VERSION_TAG} WORKDIR /app/service diff --git a/bamboo-specs/src/main/java/buildjob/PlanSpec.java b/bamboo-specs/src/main/java/buildjob/PlanSpec.java index dbbbf7e..405fc96 100644 --- a/bamboo-specs/src/main/java/buildjob/PlanSpec.java +++ b/bamboo-specs/src/main/java/buildjob/PlanSpec.java @@ -33,8 +33,8 @@ import com.atlassian.bamboo.specs.model.task.ScriptTaskProperties.Location; @BambooSpec public class PlanSpec { - private static final String SERVICE_NAME = "fb-detr-service"; - private static final String SERVICE_NAME_BASE = "fb-detr-service-base"; + private static final String SERVICE_NAME = "fb_detr_prediction_container"; + private static final String SERVICE_NAME_BASE = "fb_detr_prediction_container-base"; private static final String SERVICE_KEY = SERVICE_NAME.toUpperCase().replaceAll("-",""); @@ -72,7 +72,7 @@ public class PlanSpec { return new Plan( project(), SERVICE_NAME, new BambooKey(SERVICE_KEY)) - .description("Docker build for image-service.") + .description("Docker build for fb_detr_prediction_container.") // .variables() .stages(new Stage("Build Stage") .jobs( From 0aacca09820491b0a63ded52104e5337386de95b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Christoph=20=C2=A0Schabert?= Date: Thu, 17 Feb 2022 16:31:58 +0100 Subject: [PATCH 04/17] PlanSpec.java edited online with Bitbucket --- bamboo-specs/src/main/java/buildjob/PlanSpec.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bamboo-specs/src/main/java/buildjob/PlanSpec.java b/bamboo-specs/src/main/java/buildjob/PlanSpec.java index 405fc96..2012903 100644 --- a/bamboo-specs/src/main/java/buildjob/PlanSpec.java +++ b/bamboo-specs/src/main/java/buildjob/PlanSpec.java @@ -36,7 +36,7 @@ public class PlanSpec { private static final String SERVICE_NAME = "fb_detr_prediction_container"; private static final String SERVICE_NAME_BASE = "fb_detr_prediction_container-base"; - private static final String SERVICE_KEY = SERVICE_NAME.toUpperCase().replaceAll("-",""); + private static final String SERVICE_KEY = SERVICE_NAME.toUpperCase().replaceAll("-","").replaceAll("_",""); /** * Run main to publish plan on Bamboo From 24c5ca051a64e9528afcba5ca0521eb14c694f61 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Christoph=20=C2=A0Schabert?= Date: Thu, 17 Feb 2022 16:33:36 +0100 Subject: [PATCH 05/17] PlanSpec.java edited online with Bitbucket --- bamboo-specs/src/main/java/buildjob/PlanSpec.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bamboo-specs/src/main/java/buildjob/PlanSpec.java b/bamboo-specs/src/main/java/buildjob/PlanSpec.java index 2012903..c838cb3 100644 --- a/bamboo-specs/src/main/java/buildjob/PlanSpec.java +++ b/bamboo-specs/src/main/java/buildjob/PlanSpec.java @@ -167,7 +167,7 @@ public class PlanSpec { .image("nexus.iqser.com:5001/infra/maven:3.6.2-jdk-13-3.0.0") .volume("/etc/maven/settings.xml", "/usr/share/maven/ref/settings.xml") .volume("/var/run/docker.sock", "/var/run/docker.sock")))) - .linkedRepositories("RED / " + SERVICE_NAME) + .linkedRepositories("RR / " + SERVICE_NAME) .linkedRepositories("RR / redai_image") .triggers(new BitbucketServerTrigger()) .planBranchManagement(new PlanBranchManagement() From 02893cc91b819a9dde17d25ae9e33b8584f5b653 Mon Sep 17 00:00:00 2001 From: cdietrich Date: Thu, 17 Feb 2022 16:38:14 +0100 Subject: [PATCH 06/17] rename docker file base --- Dockerfile-base => Dockerfile_base | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename Dockerfile-base => Dockerfile_base (100%) diff --git a/Dockerfile-base b/Dockerfile_base similarity index 100% rename from Dockerfile-base rename to Dockerfile_base From bf710dec7a44677bb7a3c6fd463e612caf36686b Mon Sep 17 00:00:00 2001 From: cdietrich Date: Thu, 17 Feb 2022 16:41:18 +0100 Subject: [PATCH 07/17] fix bug --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index c7d3c41..ce41849 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,7 +1,7 @@ ARG BASE_ROOT="nexus.iqser.com:5001/red/" ARG VERSION_TAG=latest -FROM ${BASE_ROOT}fb_detr_prediction_container-base:${VERSION_TAG} +FROM ${BASE_ROOT}detr-server-base:${VERSION_TAG} WORKDIR /app/service From 0acccb7c27189ff7d35b2f67c1a493c7bda1995f Mon Sep 17 00:00:00 2001 From: cdietrich Date: Fri, 18 Feb 2022 08:07:52 +0100 Subject: [PATCH 08/17] fix bug --- bamboo-specs/src/main/java/buildjob/PlanSpec.java | 1 - 1 file changed, 1 deletion(-) diff --git a/bamboo-specs/src/main/java/buildjob/PlanSpec.java b/bamboo-specs/src/main/java/buildjob/PlanSpec.java index c838cb3..271b115 100644 --- a/bamboo-specs/src/main/java/buildjob/PlanSpec.java +++ b/bamboo-specs/src/main/java/buildjob/PlanSpec.java @@ -168,7 +168,6 @@ public class PlanSpec { .volume("/etc/maven/settings.xml", "/usr/share/maven/ref/settings.xml") .volume("/var/run/docker.sock", "/var/run/docker.sock")))) .linkedRepositories("RR / " + SERVICE_NAME) - .linkedRepositories("RR / redai_image") .triggers(new BitbucketServerTrigger()) .planBranchManagement(new PlanBranchManagement() .createForVcsBranch() From ac9c48fc320956ab55c0ba29903770982b079852 Mon Sep 17 00:00:00 2001 From: cdietrich Date: Fri, 18 Feb 2022 08:10:38 +0100 Subject: [PATCH 09/17] adapt sonar settings --- bamboo-specs/src/main/resources/scripts/sonar-scan.sh | 10 +++------- sonar-project.properties | 4 ++++ 2 files changed, 7 insertions(+), 7 deletions(-) create mode 100644 sonar-project.properties diff --git a/bamboo-specs/src/main/resources/scripts/sonar-scan.sh b/bamboo-specs/src/main/resources/scripts/sonar-scan.sh index ca8c1f5..311a575 100755 --- a/bamboo-specs/src/main/resources/scripts/sonar-scan.sh +++ b/bamboo-specs/src/main/resources/scripts/sonar-scan.sh @@ -9,19 +9,15 @@ python3 -m pip install --upgrade pip echo "dev setup for unit test and coverage" -pip install -e incl/detr/ - pip install -r requirements.txt echo "DVC pull step" dvc pull -#echo "coverage calculation" -#coverage run -m pytest -s --disable-warnings incl/image_service -#echo "coverage report generation" -#coverage report -m -#coverage xml +echo "coverage report generation" +coverage report -m +coverage xml SERVICE_NAME=$1 diff --git a/sonar-project.properties b/sonar-project.properties new file mode 100644 index 0000000..4eb136e --- /dev/null +++ b/sonar-project.properties @@ -0,0 +1,4 @@ +sonar.exclusions=bamboo-specs/**, **/test_data/** +sonar.c.file.suffixes=- +sonar.cpp.file.suffixes=- +sonar.objc.file.suffixes=- From b26bf8f25051b15ecdc2abf5ace9457cb3e55e15 Mon Sep 17 00:00:00 2001 From: cdietrich Date: Fri, 18 Feb 2022 08:13:15 +0100 Subject: [PATCH 10/17] adapt sonar settings --- sonar-project.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sonar-project.properties b/sonar-project.properties index 4eb136e..deefee9 100644 --- a/sonar-project.properties +++ b/sonar-project.properties @@ -1,4 +1,4 @@ -sonar.exclusions=bamboo-specs/**, **/test_data/** +sonar.exclusions=bamboo-specs/**, **/test_data/**, **/detr/** sonar.c.file.suffixes=- sonar.cpp.file.suffixes=- sonar.objc.file.suffixes=- From eff1fe42944c474f0aa4e759c6507bebb422545d Mon Sep 17 00:00:00 2001 From: cdietrich Date: Fri, 18 Feb 2022 08:30:28 +0100 Subject: [PATCH 11/17] change dockerfile --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index ce41849..e4ed8f7 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,5 +1,5 @@ ARG BASE_ROOT="nexus.iqser.com:5001/red/" -ARG VERSION_TAG=latest +ARG VERSION_TAG="latest" FROM ${BASE_ROOT}detr-server-base:${VERSION_TAG} From 6a9c996820081d092dd4d76e114a099d3c1177e3 Mon Sep 17 00:00:00 2001 From: cdietrich Date: Fri, 18 Feb 2022 08:37:00 +0100 Subject: [PATCH 12/17] change dockerfile --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index e4ed8f7..d2f70a5 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,7 +1,7 @@ ARG BASE_ROOT="nexus.iqser.com:5001/red/" ARG VERSION_TAG="latest" -FROM ${BASE_ROOT}detr-server-base:${VERSION_TAG} +FROM ${BASE_ROOT}fb_detr_prediction_container-base:${VERSION_TAG} WORKDIR /app/service From 199e98b786a9bbd7c24b9b368775d4e112a31f9a Mon Sep 17 00:00:00 2001 From: cdietrich Date: Fri, 18 Feb 2022 08:46:08 +0100 Subject: [PATCH 13/17] change dockerfile --- bamboo-specs/src/main/java/buildjob/PlanSpec.java | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/bamboo-specs/src/main/java/buildjob/PlanSpec.java b/bamboo-specs/src/main/java/buildjob/PlanSpec.java index 271b115..3ffc0aa 100644 --- a/bamboo-specs/src/main/java/buildjob/PlanSpec.java +++ b/bamboo-specs/src/main/java/buildjob/PlanSpec.java @@ -84,6 +84,9 @@ public class PlanSpec { new VcsCheckoutTask() .description("Checkout default repository.") .checkoutItems(new CheckoutItem().defaultRepository()), + new VcsCheckoutTask() + .description("Checkout detr research repository.") + .checkoutItems(new CheckoutItem().repository("RR / DETR").path("DETR")), new ScriptTask() .description("Set config and keys.") .inlineBody("mkdir -p ~/.ssh\n" + @@ -108,6 +111,9 @@ public class PlanSpec { new VcsCheckoutTask() .description("Checkout default repository.") .checkoutItems(new CheckoutItem().defaultRepository()), + new VcsCheckoutTask() + .description("Checkout detr research repository.") + .checkoutItems(new CheckoutItem().repository("RR / DETR").path("DETR")), new ScriptTask() .description("Set config and keys.") .inlineBody("mkdir -p ~/.ssh\n" + @@ -168,6 +174,7 @@ public class PlanSpec { .volume("/etc/maven/settings.xml", "/usr/share/maven/ref/settings.xml") .volume("/var/run/docker.sock", "/var/run/docker.sock")))) .linkedRepositories("RR / " + SERVICE_NAME) + .linkedRepositories("RR / DETR") .triggers(new BitbucketServerTrigger()) .planBranchManagement(new PlanBranchManagement() .createForVcsBranch() From e86385f796ec75054b2c6bf4e18dc43a804cdd55 Mon Sep 17 00:00:00 2001 From: cdietrich Date: Fri, 18 Feb 2022 08:58:54 +0100 Subject: [PATCH 14/17] change dockerfile --- bamboo-specs/src/main/java/buildjob/PlanSpec.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bamboo-specs/src/main/java/buildjob/PlanSpec.java b/bamboo-specs/src/main/java/buildjob/PlanSpec.java index 3ffc0aa..0857db7 100644 --- a/bamboo-specs/src/main/java/buildjob/PlanSpec.java +++ b/bamboo-specs/src/main/java/buildjob/PlanSpec.java @@ -157,7 +157,7 @@ public class PlanSpec { .defaultRepository()) .dockerConfiguration( new DockerConfiguration() - .image("nexus.iqser.com:5001/infra/release_build:2.7.0")), + .image("nexus.iqser.com:5001/infra/release_build:4.4.1")), new Job("Licence Job", new BambooKey("LICENCE")) .enabled(false) .tasks( From e9b39597858747e431457a8ee6ce9bb335a8af31 Mon Sep 17 00:00:00 2001 From: cdietrich Date: Fri, 18 Feb 2022 09:19:31 +0100 Subject: [PATCH 15/17] adjusted subdir --- incl/detr | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/incl/detr b/incl/detr index 0d2808c..ad13cae 160000 --- a/incl/detr +++ b/incl/detr @@ -1 +1 @@ -Subproject commit 0d2808c70737fb9fed665334c4cdec7fd39b2e4b +Subproject commit ad13caea7faf7f0285290d20a58097ae273e4c24 From 03274d4372d4d90a28b6e67be216d2f421c36e5c Mon Sep 17 00:00:00 2001 From: cdietrich Date: Fri, 18 Feb 2022 09:47:15 +0100 Subject: [PATCH 16/17] change dockerfile --- Dockerfile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Dockerfile b/Dockerfile index d2f70a5..db6055b 100644 --- a/Dockerfile +++ b/Dockerfile @@ -11,9 +11,9 @@ COPY ./fb_detr ./fb_detr RUN python3 -m pip install -e . -WORKDIR /app/service/incl/detr -RUN python3 -m pip install -e . -WORKDIR /app/service +#WORKDIR /app/service/incl/detr +#RUN python3 -m pip install -e . +#WORKDIR /app/service EXPOSE 5000 EXPOSE 8080 From b7ca7cb4475c88bc0380e3f35ce10d28972866fd Mon Sep 17 00:00:00 2001 From: cdietrich Date: Fri, 18 Feb 2022 09:56:47 +0100 Subject: [PATCH 17/17] change dockerfile --- Dockerfile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Dockerfile b/Dockerfile index db6055b..d2f70a5 100644 --- a/Dockerfile +++ b/Dockerfile @@ -11,9 +11,9 @@ COPY ./fb_detr ./fb_detr RUN python3 -m pip install -e . -#WORKDIR /app/service/incl/detr -#RUN python3 -m pip install -e . -#WORKDIR /app/service +WORKDIR /app/service/incl/detr +RUN python3 -m pip install -e . +WORKDIR /app/service EXPOSE 5000 EXPOSE 8080