Revert "Add signing to Akraino deploy templates"
[ci-management.git] / jjb / akraino-templates / akraino-ta-common-macros.yaml
index 14d6403..a0d578c 100644 (file)
@@ -37,7 +37,7 @@
      - ta-parameters-rpmbuilder
 
 - parameter:
-    name: ta-parameters-ci-ta-rpmbuilder
+    name: ta-parameters-ci-ta/rpmbuilder
     parameters:
      - ta-parameters-manifest
      - ta-parameters-build-tools
           choosing-strategy: '{choosing-strategy}'
           basedir: '{basedir}'
 
+- scm:
+    name: ta-lf-infra-gerrit-scm-merge
+    scm:
+      - ta-lf-infra-gerrit-scm:
+          jenkins-ssh-credential: '{jenkins-ssh-credential}'
+          git-url: '{git-url}'
+          refspec: '{refspec}'
+          branch: '{branch}'
+          submodule-recursive: '{submodule-recursive}'
+          submodule-timeout: '{submodule-timeout}'
+          basedir: '{basedir}'
+          choosing-strategy: default
+
+- scm:
+    name: ta-lf-infra-gerrit-scm-verify
+    scm:
+      - ta-lf-infra-gerrit-scm:
+          jenkins-ssh-credential: '{jenkins-ssh-credential}'
+          git-url: '{git-url}'
+          refspec: '{refspec}'
+          branch: '{branch}'
+          submodule-recursive: '{submodule-recursive}'
+          submodule-timeout: '{submodule-timeout}'
+          basedir: '{basedir}'
+          choosing-strategy: gerrit
+
 ###########
 # BUILDER #
 ###########
     builders:
         - shell: |2-
             echo "---> Node UUID:"
-            curl -s http://169.254.169.254/openstack/latest/meta_data.json | python -c 'import sys, json; data = json.load(sys.stdin); print(data["uuid"])'
+            curl -s http://169.254.169.254/openstack/latest/meta_data.json | python -c 'import sys, json; data = json.load(sys.stdin); print(data["uuid"])' || true
 
 - builder:
     name: ta-builder-tox
     builders:
-        - lf-pip-install:
-            pip-packages: tox
         - shell: |2-
             #!/bin/bash -ex
-            source /tmp/v/tox/bin/activate
+            source ~/lf-env.sh
+
+            lf-activate-venv tox
+            tox --version
             for f in $(find $GERRIT_PROJECT -name tox.ini); do
                 pushd $(dirname $f)
                 tox
             if [ -n "$(find {project-to-build} -name '*.spec')" ]
             then
                 if apt --version 2>1 >/dev/null; then
-                    sudo groupadd mock || true
-                    sudo usermod -aG mock $USER
-                    sudo apt update
-                    # Explicitly install mock dependencies
-                    sudo apt install -y createrepo alien systemd-container python-pip \
-                                        python-decoratortools yum-utils usermode pigz
                     # We need a specific version of mock (1.4.14) and devtools
                     # not available in Ubuntu/Debian repos, so fetch them from RHEL mirrors
-                    wget http://mirror.centos.org/centos/7.6.1810/os/x86_64/Packages/rpmdevtools-8.3-5.el7.noarch.rpm \
-                         https://kojipkgs.fedoraproject.org/packages/mock/1.4.14/2.el7/noarch/mock-1.4.14-2.el7.noarch.rpm
-                    sudo alien -d *.rpm
-                    sudo dpkg -i *.deb
-                    rm -rf *.rpm *.deb
-                    # RHEL tools hardcode the full path for certain distro tools
-                    sudo ln -sf /bin/tar /usr/bin/gtar
-                    sudo ln -sf /bin/machinectl /bin/df /usr/bin/
-                    # Some mock dependencies are only available via pip
-                    sudo pip install distro pyroute2
+                    if [ "$(mock --version 2>/dev/null)" != '1.4.14' ]; then
+                        sudo groupadd mock || true
+                        sudo usermod -aG mock $USER
+                        sudo apt update
+                        # Explicitly install mock dependencies
+                        sudo apt install -y createrepo alien systemd-container python-pip \
+                                            python-decoratortools yum-utils usermode pigz
+                        wget http://vault.centos.org/centos/7.6.1810/os/x86_64/Packages/rpmdevtools-8.3-5.el7.noarch.rpm \
+                             https://kojipkgs.fedoraproject.org/packages/mock/1.4.14/2.el7/noarch/mock-1.4.14-2.el7.noarch.rpm
+                        sudo alien -d *.rpm
+                        sudo dpkg -i *.deb
+                        rm -rf *.rpm *.deb
+                        # RHEL tools hardcode the full path for certain distro tools
+                        sudo ln -sf /bin/tar /usr/bin/gtar
+                        sudo ln -sf /bin/machinectl /bin/df /usr/bin/
+                        # Some mock dependencies are only available via pip
+                        sudo pip install distro pyroute2
+                    fi
                 else
                     sudo yum install -y createrepo
                 fi
           # Ensure python-tools are installed in case job template does not
           # call the lf-infra-pre-build macro.
           - ../../global-jjb/shell/python-tools-install.sh
+      - shell: !include-raw:
           - ../shell/ta-rpm-deploy.sh
       - shell: !include-raw:
           - ../../global-jjb/shell/logs-clear-credentials.sh
           # Ensure python-tools are installed in case job template does not
           # call the lf-infra-pre-build macro.
           - ../../global-jjb/shell/python-tools-install.sh
+      - shell: !include-raw:
           - ../shell/ta-iso-deploy.sh
       - shell: !include-raw:
           - ../../global-jjb/shell/logs-clear-credentials.sh
               project-to-build: '$GERRIT_PROJECT'
 
 - builder:
-    name: ta-builder-job-verify-ta-rpmbuilder
+    name: ta-builder-job-verify-ta/rpmbuilder
     builders:
         - ta-builder-scm:
               git-url: '{git-url}'
       - shell: |2-
           #!/bin/bash -ex
           if apt --version 2>1 >/dev/null; then
-              sudo apt update
-              sudo apt install -y apt-transport-https ca-certificates curl software-properties-common
-              curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
-              sudo add-apt-repository -y "deb http://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
-              sudo apt update
-              sudo apt install -y docker-ce
+              sudo chmod +r /boot/vmlinuz*
+              if ! docker --version 2>1 >/dev/null; then
+                  sudo apt update
+                  sudo apt install -y apt-transport-https ca-certificates curl software-properties-common rename
+                  curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
+                  sudo add-apt-repository -y "deb http://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
+                  sudo apt update
+                  sudo apt install -y docker-ce
+              fi
           else
               sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
               sudo yum -y install docker-ce docker-ce-cli containerd.io
       - shell: |2-
           #!/bin/bash -ex
           if apt --version 2>1 >/dev/null; then
-              sudo apt update
-              sudo apt install -y createrepo libguestfs-tools jq
+              if ! createrepo --version 2>1 >/dev/null; then
+                  sudo apt update
+                  sudo apt install -y createrepo libguestfs-tools jq
+              fi
           else
               sudo yum -y install createrepo libguestfs-tools-c jq
           fi
                 - branch-compare-type: 'ANT'
                   branch-pattern: '**/{branch}'
           readable-message: true
+          skip-vote:
+            successful: '{gerrit-skip-vote}'
+            failed: '{gerrit-skip-vote}'
+            unstable: '{gerrit-skip-vote}'
+            notbuilt: '{gerrit-skip-vote}'
 
 - trigger:
     name: ta-trigger-job-merge
 - publisher:
     name: ta-publisher-job-merge
     publishers:
-      - lf-infra-publish
+      - ta-publisher-ci-build:
+          arch: '{arch}'
       - trigger-parameterized-builds:
           - project: 'ta-ci-build-{arch}'
             condition: UNSTABLE_OR_BETTER
             trigger-with-no-params: true
+
+- publisher:
+    name: ta-publisher-ci-build
+    publishers:
+      - lf-infra-publish
+      - email:
+          recipients: !j2: |
+            {%- if 'arm64' in arch -%}
+            armband@enea.com
+            {%- endif -%}