- 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://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
+ 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
- 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
- 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 -%}