Build configurations for ric-app-hw-rust 12/10912/1
authorAbhijit Gadgil <gabhijit@iitbombay.org>
Fri, 28 Apr 2023 03:35:22 +0000 (09:05 +0530)
committerAbhijit Gadgil <gabhijit@iitbombay.org>
Fri, 28 Apr 2023 03:35:22 +0000 (09:05 +0530)
Added Build Job and Maven settings files for hello world Rust Xapp
(ric-app-hw-rust)

Issue-Id: RICAPP-212
Signed-off-by: Abhijit Gadgil <gabhijit@iitbombay.org>
Change-Id: I5fcff428a8429b106c658c9530ed8acd7de516c3

jenkins-config/managed-config-files/mavenSettings/ric-app-hw-rust-settings/config-params.yaml [new file with mode: 0644]
jenkins-config/managed-config-files/mavenSettings/ric-app-hw-rust-settings/content [new symlink]
jenkins-config/managed-config-files/mavenSettings/ric-app-hw-rust-settings/serverCredentialMappings.sandbox.yaml [new symlink]
jenkins-config/managed-config-files/mavenSettings/ric-app-hw-rust-settings/serverCredentialMappings.yaml [new file with mode: 0644]
jjb/ric-app-hw-rust/ric-app-hw-rust.yaml [new file with mode: 0644]

diff --git a/jenkins-config/managed-config-files/mavenSettings/ric-app-hw-rust-settings/config-params.yaml b/jenkins-config/managed-config-files/mavenSettings/ric-app-hw-rust-settings/config-params.yaml
new file mode 100644 (file)
index 0000000..6ed4e35
--- /dev/null
@@ -0,0 +1,3 @@
+---
+name: "ric-app-hw-rust-settings"
+comment: "ric-app-hw-rust-settings"
diff --git a/jenkins-config/managed-config-files/mavenSettings/ric-app-hw-rust-settings/content b/jenkins-config/managed-config-files/mavenSettings/ric-app-hw-rust-settings/content
new file mode 120000 (symlink)
index 0000000..e830ebd
--- /dev/null
@@ -0,0 +1 @@
+../../../managed-config-templates/mavenSettings-content
\ No newline at end of file
diff --git a/jenkins-config/managed-config-files/mavenSettings/ric-app-hw-rust-settings/serverCredentialMappings.sandbox.yaml b/jenkins-config/managed-config-files/mavenSettings/ric-app-hw-rust-settings/serverCredentialMappings.sandbox.yaml
new file mode 120000 (symlink)
index 0000000..d7baae2
--- /dev/null
@@ -0,0 +1 @@
+../../../managed-config-templates/serverCredentialMappings.sandbox.yaml
\ No newline at end of file
diff --git a/jenkins-config/managed-config-files/mavenSettings/ric-app-hw-rust-settings/serverCredentialMappings.yaml b/jenkins-config/managed-config-files/mavenSettings/ric-app-hw-rust-settings/serverCredentialMappings.yaml
new file mode 100644 (file)
index 0000000..19b42be
--- /dev/null
@@ -0,0 +1,18 @@
+---
+serverCredentialMappings:
+  - credentialsId: "ric-app-hw-rust"
+    serverId: "releases"
+  - credentialsId: "ric-app-hw-rust"
+    serverId: "staging"
+  - credentialsId: "ric-app-hw-rust"
+    serverId: "site"
+  - credentialsId: "ric-app-hw-rust"
+    serverId: "snapshots"
+  - credentialsId: "docker"
+    serverId: "nexus3.o-ran-sc.org:10001"
+  - credentialsId: "ric-app-hw-rust"
+    serverId: "nexus3.o-ran-sc.org:10002"
+  - credentialsId: "ric-app-hw-rust"
+    serverId: "nexus3.o-ran-sc.org:10003"
+  - credentialsId: "ric-app-hw-rust"
+    serverId: "nexus3.o-ran-sc.org:10004"
diff --git a/jjb/ric-app-hw-rust/ric-app-hw-rust.yaml b/jjb/ric-app-hw-rust/ric-app-hw-rust.yaml
new file mode 100644 (file)
index 0000000..941254a
--- /dev/null
@@ -0,0 +1,54 @@
+---
+- project:
+    name: ric-app-hw-rust-project-view
+    project-name: ric-app-hw-rust
+    views:
+      - project-view
+
+- hw-rust_common: &hw-rust_common
+    # values apply to all projects
+    name: hw-rust-common
+    # git repo
+    project: ric-app/hw-rust
+    # jenkins prefix
+    project-name: ric-app-hw-rust
+    # maven settings file has docker credentials
+    mvn-settings: ric-app-hw-rust-settings
+
+# verify INFO.yaml changes
+- project:
+    <<: *hw-rust_common
+    name: ric-app-hw-rust-info
+    build-node: centos7-builder-1c-1g
+    jobs:
+      - gerrit-info-yaml-verify
+
+# create docker image when source changes
+- project:
+    <<: *hw-rust_common
+    name: ric-app-hw-rust
+    # image name
+    docker-name: 'o-ran-sc/{name}'
+    # source of docker tag
+    container-tag-method: yaml-file
+    # use host network to clone from our gerrit
+    docker-build-args: '--network=host'
+    # trigger on any change other than a file in ./docs
+    gerrit_trigger_file_paths:
+        - compare-type: REG_EXP
+          pattern: '^((?!docs/|\/COMMIT_MSG).)*$'
+    jobs:
+      - '{project-name}-gerrit-docker-jobs'
+    stream:
+      - master:
+          branch: master
+
+# push nexus image from staging to release
+- project:
+    <<: *hw-rust_common
+    name: ric-app-hw-rust-release
+    # maven release requires sigul which requires centos
+    # container release requires docker
+    build-node: centos7-docker-2c-8g
+    jobs:
+      - '{project-name}-gerrit-release-jobs'