Add Super Salmon release train
authorJan-Simon Moeller <jsmoeller@linuxfoundation.org>
Fri, 29 Nov 2024 14:23:04 +0000 (15:23 +0100)
committerJan-Simon Moeller <jsmoeller@linuxfoundation.org>
Fri, 29 Nov 2024 14:23:04 +0000 (15:23 +0100)
Signed-off-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
Change-Id: I999f91675c2763cbf627ba1efd07b4f2a710a521

13 files changed:
jjb/common/include-agl-header.sh
jjb/common/include-agl-set-compositor-image.sh
jjb/common/include-agl-set-flutter-demo-image.sh
jjb/common/include-agl-set-html5-image.sh
jjb/common/include-agl-set-iceg-lxc-image.sh
jjb/common/include-agl-set-ivieg-flutter-image.sh
jjb/release-jjb-salmon-release/include-release-jjb-release-move-sandbox.sh [new file with mode: 0644]
jjb/release-jjb-salmon-release/release-jjb-release.yaml [new file with mode: 0644]
jjb/release-jjb-salmon-snapshot/bitbake-html5-image-qemux86-64.sh [new file with mode: 0644]
jjb/release-jjb-salmon-snapshot/include-release-jjb-snapshot-rsync.sh [new file with mode: 0644]
jjb/release-jjb-salmon-snapshot/release-jjb-snapshot.yaml [new file with mode: 0644]
jjb/release-jjb-salmon-sources/include-release-jjb-release-sources-rsync.sh [new file with mode: 0644]
jjb/release-jjb-salmon-sources/release-jjb-sources.yaml [new file with mode: 0644]

index 90ee0ce..3a8431a 100644 (file)
@@ -33,10 +33,10 @@ export TARGETFEATURESnogfx="agl-ci-change-features-nogfx agl-ci"
 export TARGETFEATURES="agl-ci-change-features agl-ci"
 
 export TARGETQA=""
-export TARGETIMAGE="agl-ivi-demo-qt"
-export TARGETIMAGEnogfx="agl-ivi-demo-qt"
+export TARGETIMAGE="agl-ivi-demo-qt agl-ivi-demo-flutter"
+export TARGETIMAGEnogfx="agl-ivi-demo-qt agl-ivi-demo-flutter"
 
-export TARGETSDKIMAGE="agl-ivi-demo-qt-crosssdk"
+export TARGETSDKIMAGE="agl-ivi-demo-qt agl-ivi-demo-flutter"
 
 
 # apply GERRIT_*
@@ -116,8 +116,8 @@ while getopts ":b:i:p:r:dnqvx" opt; do
 done
 
 # expand
-eval TARGETIMAGE="$TARGETIMAGE"
-eval TARGETIMAGEnogfx="$TARGETIMAGEnogfx"
+#eval TARGETIMAGE="$TARGETIMAGE"
+#eval TARGETIMAGEnogfx="$TARGETIMAGEnogfx"
 
 # The 'real' machine name
 export TARGETMACHINE=${MACHINE}
index 2ecae44..0e5ec63 100644 (file)
@@ -14,8 +14,8 @@ export TARGETFEATURES="agl-demo agl-devel agl-netboot"
 export TARGETQA=""
 export TARGETIMAGE="agl-ivi-demo-platform"
 
-eval TARGETIMAGE="$TARGETIMAGE"
-eval TARGETIMAGEnogfx="$TARGETIMAGE"
+#eval TARGETIMAGE="$TARGETIMAGE"
+#eval TARGETIMAGEnogfx="$TARGETIMAGE"
 
 #if $DEBUG; then
 set | grep ^TARGET || true
index 7b97a08..20e02d9 100644 (file)
@@ -13,8 +13,8 @@ export TARGETFEATURES="agl-demo agl-devel agl-ci"
 export TARGETQA=""
 export TARGETIMAGE="agl-ivi-demo-flutter"
 
-eval TARGETIMAGE="$TARGETIMAGE"
-eval TARGETIMAGEnogfx="$TARGETIMAGE"
+#TARGETIMAGE="$TARGETIMAGE"
+TARGETIMAGEnogfx="$TARGETIMAGE"
 
 #if $DEBUG; then
 set | grep ^TARGET || true
index d33fb93..39ac935 100644 (file)
@@ -13,8 +13,8 @@ export TARGETFEATURES="agl-demo agl-devel agl-ci"
 export TARGETQA=""
 export TARGETIMAGE="agl-ivi-demo-html5"
 
-eval TARGETIMAGE="$TARGETIMAGE"
-eval TARGETIMAGEnogfx="$TARGETIMAGE"
+#TARGETIMAGE="$TARGETIMAGE"
+TARGETIMAGEnogfx="$TARGETIMAGE"
 
 #if $DEBUG; then
 set | grep ^TARGET || true
index 33b4839..052b4c4 100644 (file)
@@ -13,8 +13,8 @@ export TARGETFEATURES="agl-ic-container agl-devel agl-ci"
 export TARGETQA=""
 export TARGETIMAGE="agl-cluster-demo-lxc-host"
 
-eval TARGETIMAGE="$TARGETIMAGE"
-eval TARGETIMAGEnogfx="$TARGETIMAGE"
+#TARGETIMAGE="$TARGETIMAGE"
+TARGETIMAGEnogfx="$TARGETIMAGE"
 
 #if $DEBUG; then
 set | grep ^TARGET || true
index 4e654cd..956a64d 100644 (file)
@@ -16,8 +16,8 @@ export TARGETFEATURES="agl-flutter agl-devel agl-ci"
 export TARGETQA=""
 export TARGETIMAGE="agl-image-flutter-debug"
 
-eval TARGETIMAGE="$TARGETIMAGE"
-eval TARGETIMAGEnogfx="$TARGETIMAGE"
+#TARGETIMAGE="$TARGETIMAGE"
+TARGETIMAGEnogfx="$TARGETIMAGE"
 
 #if $DEBUG; then
 set | grep ^TARGET || true
diff --git a/jjb/release-jjb-salmon-release/include-release-jjb-release-move-sandbox.sh b/jjb/release-jjb-salmon-release/include-release-jjb-release-move-sandbox.sh
new file mode 100644 (file)
index 0000000..2f85a3e
--- /dev/null
@@ -0,0 +1,27 @@
+#!/bin/bash
+
+#set -x
+set -e
+
+if test x"" = x"${RELEASE_BRANCH}"; then
+    echo "RELEASE_BRANCH invalid"
+    exit 1
+fi
+
+if test x"" = x"${RELEASE_VERSION}"; then
+    echo "RELEASE_VERSION invalid"
+    exit 1
+fi
+
+
+export REMOTESRC="/srv/download/AGL/upload/ci/${RELEASE_BRANCH}/${RELEASE_VERSION}/"
+export REMOTEDST="/srv/download/AGL/release/${RELEASE_BRANCH}/${RELEASE_VERSION}/"
+
+if test x"yes" = x"$UPLOAD" ; then
+   ssh -o StrictHostKeyChecking=no jenkins-slave@10.30.72.8 mkdir -p ${REMOTEDST}
+   ssh -o StrictHostKeyChecking=no jenkins-slave@10.30.72.8 mv ${REMOTESRC}/* ${REMOTEDST}/
+   ssh -o StrictHostKeyChecking=no jenkins-slave@10.30.72.8 rm -r ${REMOTESRC}
+   ssh -o StrictHostKeyChecking=no jenkins-slave@10.30.72.8 sh -c "cd /srv/download/AGL/release/${RELEASE_BRANCH}/ ; rm latest ; ln -sf ${RELEASE_VERSION} latest ; echo ${RELEASE_VERSION} > latest.txt"
+fi
+
+exit 0
\ No newline at end of file
diff --git a/jjb/release-jjb-salmon-release/release-jjb-release.yaml b/jjb/release-jjb-salmon-release/release-jjb-release.yaml
new file mode 100644 (file)
index 0000000..acf2480
--- /dev/null
@@ -0,0 +1,49 @@
+---
+- project:
+    name: release-jjb-salmon-release-from-snapshot
+    jobs:
+      - release-jjb-salmon-release-from-snapshot
+
+- job-template:
+    name: 'release-jjb-salmon-release-from-snapshot'
+    project-type: freestyle
+    concurrent: false
+    node: agl-test-slave
+
+    parameters:
+      - string:
+          name: GERRIT_BRANCH
+          default: master
+          description: "branch to build"
+      - string:
+          name: RELEASE_BRANCH
+          default: salmon
+          description: "release branch to build"
+      - string:
+          name: RELEASE_VERSION
+          default: 19.0.0
+          description: "release version number for build"
+      - string:
+          name: UPLOAD
+          default: yes_or_no
+          description: "Upload?"
+
+    build-discarder:
+      days-to-keep: 30
+      num-to-keep: 40
+      artifact-days-to-keep: -1
+      artifact-num-to-keep: 5
+
+    wrappers:
+      - agl-infra-wrappers:
+          build-timeout: '{build-timeout}'
+
+    builders:
+      - shell:
+          !include-raw-escape:
+          - include-release-jjb-release-move-sandbox.sh
+      - trigger-builds:
+        - project: "release-jjb-salmon-sources"
+          current-parameters: true
+          block: true
+
diff --git a/jjb/release-jjb-salmon-snapshot/bitbake-html5-image-qemux86-64.sh b/jjb/release-jjb-salmon-snapshot/bitbake-html5-image-qemux86-64.sh
new file mode 100644 (file)
index 0000000..78af747
--- /dev/null
@@ -0,0 +1,21 @@
+# (c) 2016 Jan-Simon Moeller dl9pf(at)gmx.de
+# License GPLv2
+
+################################################################################
+## bitbake the sdk
+################################################################################
+#if ! test x"${GERRIT_BRANCH}" = x"dab" ; then
+#bitbake wic-tools
+#fi
+
+if test x"qemux86-64" = x"${TARGETMACHINE}" ; then
+
+# finally, build the agl-demo-platform (we retry to catch the tar-native bug)
+#( ( bitbake -c $TARGETSDK $TARGETIMAGE ) || ( echo '## Failed once, retry ..  ##' ; sync ; sleep 2 ; bitbake -c $TARGETSDK $TARGETIMAGE ) ) || ( echo '## Failed again, bail out ... ##' ; exit 1 ) 
+echo 'AGL_DEFAULT_IMAGE_FSTYPES_forcevariable = "wic.vmdk.xz wic.xz ext4.xz"' >> conf/local.conf
+echo 'AGL_EXTRA_IMAGE_FSTYPES_forcevariable = ""' >> conf/local.conf
+( ( bitbake agl-demo-platform-html5 ) || ( echo '## Failed once, retry ..  ##' ; sync ; sleep 2 ; bitbake agl-demo-platform-html5 ) ) || ( echo '## Failed again, bail out ... ##' ; exit 1 ) 
+
+du -hs tmp/deploy/*
+
+fi
\ No newline at end of file
diff --git a/jjb/release-jjb-salmon-snapshot/include-release-jjb-snapshot-rsync.sh b/jjb/release-jjb-salmon-snapshot/include-release-jjb-snapshot-rsync.sh
new file mode 100644 (file)
index 0000000..9be7c6f
--- /dev/null
@@ -0,0 +1,57 @@
+#!/bin/bash
+
+#set -x
+set -e
+echo "#######################################"
+echo "#######################################"
+ls -alh
+echo "#######################################"
+echo "#######################################"
+tree -L 2
+echo "#######################################"
+echo "#######################################"
+set | grep MACHINE
+echo "#######################################"
+echo "#######################################"
+set
+echo "#######################################"
+echo "#######################################"
+
+cd repoclone/output
+
+export REMOTEDST="/srv/download/AGL/upload/ci/${RELEASE_BRANCH}/${RELEASE_VERSION}/${MACHINE}/"
+export RSYNCDST="jenkins-slave@10.30.72.8:${REMOTEDST}"
+export RSYNCSRC=$(pwd)/UPLOAD/${MACHINE}
+
+# construct upload folder
+mv UPLOAD UPLOAD2 || true
+rm -rf UPLOAD2 || true
+mkdir -p UPLOAD/${MACHINE}
+export DEST=$(pwd)/UPLOAD/${MACHINE}
+
+# save space ... remove the rpms
+rm -rf tmp/deploy/rpm || true
+
+rsync -avr --progress --delete tmp/deploy $DEST/
+rsync -avr --progress --delete tmp/log $DEST/
+
+cp ../../current_default.xml $DEST/${MACHINE}_repo_default.xml
+cp conf/local.conf $DEST/local.conf
+cp conf/auto.conf $DEST/auto.conf
+echo "$BUILD_URL" > $DEST/jenkins.build.url
+
+tree $DEST
+
+ls -alhR $DEST
+
+
+
+echo "would do rsync -avr -e \"ssh -o StrictHostKeyChecking=no\" $RSYNCSRC $RSYNCDST "
+
+if test x"yes" = x"$UPLOAD" ; then
+   ssh -o StrictHostKeyChecking=no jenkins-slave@10.30.72.8 rm -rf ${REMOTEDST}
+   ssh -o StrictHostKeyChecking=no jenkins-slave@10.30.72.8 mkdir -p ${REMOTEDST}
+   rsync --delete -avr -e "ssh -o StrictHostKeyChecking=no" $RSYNCSRC/* $RSYNCDST
+fi
+
+exit 0
\ No newline at end of file
diff --git a/jjb/release-jjb-salmon-snapshot/release-jjb-snapshot.yaml b/jjb/release-jjb-salmon-snapshot/release-jjb-snapshot.yaml
new file mode 100644 (file)
index 0000000..27658e2
--- /dev/null
@@ -0,0 +1,124 @@
+---
+- project:
+    name: release-jjb-salmon-snapshot
+    jobs:
+      - release-jjb-salmon-snapshot
+
+- job-template:
+    name: 'release-jjb-salmon-snapshot'
+    project-type: matrix
+    concurrent: false
+    node: control-slave
+
+    parameters:
+      - string:
+          name: GERRIT_PROJECT
+          default: AGL/AGL-repo
+          description: "Project to build"
+      - string:
+          name: GERRIT_BRANCH
+          default: master
+          description: "branch to build"
+      - string:
+          name: GERRIT_REFSPEC
+          default: refs/tags/salmon_19.0.0
+          description: "refspec to build"
+      - string:
+          name: RELEASE_VERSION
+          default: 19.0.0
+          description: "release version number for build"
+      - string:
+          name: RELEASE_BRANCH
+          default: salmon
+          description: "release branch to build"
+      - string:
+          name: UPLOAD
+          default: yes_or_no
+          description: "Upload?"
+      - string:
+          name: BUILDONLY
+          default: ignore
+          description: "build only specified machine"
+      - string:
+          name: DISABLE_SSTATE_MIRROR
+          default: ignore
+          description: "Set to YES to disable sstate-mirror"
+    axes:
+      - axis:
+          type: user-defined
+          name: MACHINE
+          values:
+            - qemux86-64
+            - qemuarm
+            - qemuarm64
+            - raspberrypi4
+            - raspberrypi5
+            - h3ulcb-nogfx
+            # for aarch64
+      - axis:
+          type: slave
+          name: label
+          values:
+            - agl-test-slave
+
+    build-discarder:
+      days-to-keep: 30
+      num-to-keep: 40
+      artifact-days-to-keep: -1
+      artifact-num-to-keep: 5
+
+    triggers:
+      - gerrit-trigger-patch-submitted-silent:
+          name: 'AGL/AGL-repo'
+          branch: 'regs/tags/salmon/**'
+
+    wrappers:
+      - agl-infra-wrappers:
+          build-timeout: '{build-timeout}'
+      - credentials-binding:
+          - username-password-separated:
+              credential-id: agl_main_lava_instance
+              username: AGLLAVAUSER
+              password: AGLLAVATOKEN
+          - username-password-separated:
+              credential-id: agl_main_lava_instance
+              username: LAB_AGL_USER
+              password: LAB_AGL_TOKEN
+          - username-password-separated:
+              credential-id: lab_baylibre_lava_instance
+              username: LAB_BAYLIBRE_USER
+              password: LAB_BAYLIBRE_TOKEN
+          - username-password-separated:
+              credential-id: lab_baylibre_seattle_lava_instance
+              username: LAB_BAYLIBRE_SEATTLE_USER
+              password: LAB_BAYLIBRE_SEATTLE_TOKEN
+
+    builders:
+      - shell:
+          !include-raw-escape:
+          - ../common/include-agl-header.sh
+          - ../common/include-agl-repo.sh
+          - ../common/include-agl-select.sh
+          - ../common/include-agl-export-eula.sh
+          - ../common/include-agl-source-aglsetup.sh
+          - ../common/include-agl-auto-conf.sh
+          - ../common/include-agl-limit-parallelism.sh
+          - ../common/include-agl-cat-auto-conf.sh
+          - ../common/include-agl-local-conf-archiver.sh
+          - ../common/include-agl-local-conf-include-ptest.sh
+          - ../common/include-agl-local-conf-DISTROFEATURES-AGLCI.sh
+          - ../common/include-agl-local-conf-vmdk.sh
+          #- ../common/include-agl-local-conf-rpi3-imagetype.sh
+          #- ../common/include-agl-bitbake-image.sh
+          - ../common/include-agl-bitbake-sdk.sh
+          #- bitbake-html5-image-qemux86-64.sh
+      - shell:
+          !include-raw-escape: include-release-jjb-snapshot-rsync.sh
+      - shell:
+          !include-raw-escape:
+          - ../common/include-agl-header.sh
+          - ../common/include-agl-run-test-prepare.sh
+          #- ../common/include-agl-run-test-rsync-release.sh
+          - ../common/include-agl-lava-labs-prepare.sh
+          - ../common/include-agl-run-test-short-releaseit.sh
+          - ../common/include-agl-lava-jobs-submit-only.sh
diff --git a/jjb/release-jjb-salmon-sources/include-release-jjb-release-sources-rsync.sh b/jjb/release-jjb-salmon-sources/include-release-jjb-release-sources-rsync.sh
new file mode 100644 (file)
index 0000000..b0947b8
--- /dev/null
@@ -0,0 +1,67 @@
+#!/bin/bash
+
+#set -x
+set -e
+
+mkdir -p ~/bin/ || true
+curl https://storage.googleapis.com/git-repo-downloads/repo-1 > ~/bin/repo
+chmod a+x ~/bin/repo
+export PATH=$PATH:~/bin/
+
+# construct upload folder
+
+
+BRANCH=${RELEASE_BRANCH}
+REVISION=${RELEASE_VERSION}
+
+
+rm -rf AGLRELEASE || true
+
+mkdir agl-${BRANCH}-${REVISION}
+pushd agl-${BRANCH}-${REVISION}
+
+repo init  --repo-branch=repo-1 --reference=/opt/AGL/preclone -q -b ${GERRIT_BRANCH} -u https://gerrit.automotivelinux.org/gerrit/AGL/AGL-repo -m ${BRANCH}_${REVISION}.xml
+
+repo sync --force-sync
+
+repo manifest -r > ../${BRANCH}_${REVISION}.tar.xml
+
+rm -rf .repo
+find . -name *.git | xargs rm -rf
+
+ln -sf meta-agl/README-AGL.md
+
+cat <<EOF > aglsetup.sh
+#!/bin/bash
+
+source ./meta-agl/scripts/aglsetup.sh \$@
+EOF
+
+chmod a+x aglsetup.sh
+
+popd
+
+tar -cjvf agl-${BRANCH}-${REVISION}.tar.bz2 agl-${BRANCH}-${REVISION}
+
+md5sum agl-${BRANCH}-${REVISION}.tar.bz2 > agl-${BRANCH}-${REVISION}.tar.bz2.md5sum
+sha256sum agl-${BRANCH}-${REVISION}.tar.bz2 > agl-${BRANCH}-${REVISION}.tar.bz2.sha256sum
+
+
+
+rm -rf UPLOAD || true
+mkdir -p UPLOAD/
+
+cp -ar agl-${RELEASE_BRANCH}-${RELEASE_VERSION}.* UPLOAD/
+
+export RSYNCSRC=$(pwd)/UPLOAD
+export RSYNCDST="/srv/download/AGL/release/${RELEASE_BRANCH}/"
+
+ls -alh UPLOAD/
+
+if test x"yes" = x"${UPLOAD}" ; then
+   set +x
+   ssh -o StrictHostKeyChecking=no jenkins-slave@10.30.72.8 "mkdir -p ${RSYNCDST}"
+   rsync -avr -e "ssh -o StrictHostKeyChecking=no" ${RSYNCSRC}/* jenkins-slave@10.30.72.8:${RSYNCDST}
+   ssh -o StrictHostKeyChecking=no jenkins-slave@10.30.72.8 "rm -rf ${RSYNCDST}/latest" 
+   ssh -o StrictHostKeyChecking=no jenkins-slave@10.30.72.8 "ln -sf ${RELEASE_VERSION} ${RSYNCDST}/latest"
+fi
diff --git a/jjb/release-jjb-salmon-sources/release-jjb-sources.yaml b/jjb/release-jjb-salmon-sources/release-jjb-sources.yaml
new file mode 100644 (file)
index 0000000..ca63662
--- /dev/null
@@ -0,0 +1,44 @@
+---
+- project:
+    name: release-jjb-salmon-sources
+    jobs:
+      - release-jjb-salmon-sources
+
+- job-template:
+    name: 'release-jjb-salmon-sources'
+    project-type: freestyle
+    concurrent: false
+    node: agl-test-slave
+
+    parameters:
+      - string:
+          name: GERRIT_BRANCH
+          default: master
+          description: "release version number for build"
+      - string:
+          name: RELEASE_VERSION
+          default: 19.0.0
+          description: "release version number for build"
+      - string:
+          name: RELEASE_BRANCH
+          default: salmon
+          description: "release branch to build"
+      - string:
+          name: UPLOAD
+          default: yes_or_no
+          description: "Upload?"
+
+    build-discarder:
+      days-to-keep: 30
+      num-to-keep: 40
+      artifact-days-to-keep: -1
+      artifact-num-to-keep: 5
+
+    wrappers:
+      - agl-infra-wrappers:
+          build-timeout: '{build-timeout}'
+
+    builders:
+      - shell:
+          !include-raw-escape:
+          - include-release-jjb-release-sources-rsync.sh