Eric Ball [Tue, 30 Mar 2021 22:04:45 +0000 (15:04 -0700)]
Update packer jobs with CentOS 8 & Ubuntu 18.04
The top priority is to remove all Ubuntu 16.04 jobs, as the OS is EOL.
This also includes updates to global-jjb and common-packer.
Issue: LF-Jira RELENG-3483
Change-Id: Ifd1705cb5401814231ff2cb1d5fbdce0901cd3ef
Signed-off-by: Eric Ball <eball@linuxfoundation.org>
Eric Ball [Fri, 12 Mar 2021 21:03:47 +0000 (13:03 -0800)]
Disable iec jobs
The iec jobs are hanging, and never recover or timeout. They need to
be disabled until they have been fixed by the IEC team.
Change-Id: Ib3aeebda81a009a5801e091eeaeed41bfe8ad9a7
Signed-off-by: Eric Ball <eball@linuxfoundation.org>
Eric Ball [Fri, 12 Feb 2021 18:02:20 +0000 (18:02 +0000)]
Merge "Fix broken ARM64 REC build"
Paul Carver [Thu, 4 Feb 2021 15:55:38 +0000 (15:55 +0000)]
Fix broken ARM64 REC build
The REC ARM64 build has been broken for a while, likely due to the
change of Jenkins builder nodes from Ubuntu 16.04 to 18.04. A number of
fixes are needed, not all known at this time. This change is a start at
fixing them.
1) Force installation of libvirt-daemon-system because the start of
libvirt is failing when it used to succeed.
2) Install "rename" command. This was present in Ubuntu 16.04, missing
in 18.04 and back again in 20.04. The Arm build hosts were changed
from 16.04 to 18.04 a while back and the build has been broken ever
since (due to multiple issues).
Change-Id: I1cf7ed62bd796bb20da21c9205487c0c6a079e85
Signed-off-by: Paul Carver <pcarver@att.com>
LF Jenkins CI [Fri, 5 Feb 2021 01:57:15 +0000 (01:57 +0000)]
Automation adds tami.yaml
Change-Id: I960b163805b1bbab60f1f52519fb2ace639d92ef
Signed-off-by: lf-jobbuilder <releng+lf-jobbuilder@linuxfoundation.org>
Eric Ball [Tue, 26 Jan 2021 17:56:53 +0000 (09:56 -0800)]
Update global-jjb to v0.60.5
Change-Id: I0e88feb16957619791acf213e60a6cd2ecbd624b
Signed-off-by: Eric Ball <eball@linuxfoundation.org>
Andrew Grimberg [Tue, 29 Dec 2020 21:52:46 +0000 (21:52 +0000)]
Merge "Update common-packer to v0.7.1"
Eric Ball [Tue, 29 Dec 2020 21:34:40 +0000 (13:34 -0800)]
Update common-packer to v0.7.1
This fix is needed to resume packer builds, which are currently
broken.
Issue: LF-Jira RELENG-3344
Change-Id: I490c3d0ef8c59ae981232de0edc5dcaf13238b26
Signed-off-by: Eric Ball <eball@linuxfoundation.org>
Paul Carver [Tue, 8 Dec 2020 18:31:36 +0000 (13:31 -0500)]
Replace python-decoratortools per error message
According to the error message during the ARM64 verify job,
python-decoratortools is not available but the package
python-peak.util.decorators replaces it.
See
https://jenkins.akraino.org/job/ta-infra-ansible-arm64-master-verify/47/console
for details of the error.
Additionally, there seems to be an error due to a conflict between the
Ubuntu 18.04 of the builder VM vs the CentOS packages we're trying to
build. It seems the conflict didn't occur on the older Ubuntu 16.04
builder VMs that we used to use. Since the builder VMs get thrown away
and we don't really care about them after we finish building, we'll
force overwrite the Ubuntu version of '/usr/bin/annotate-output' with
the CentOS copy that is coming from the CentOS RPM that we care about.
This change also fixes a harmlessly incorrect redirection of stderr.
Finally, the build is failing due to missing lxml and urllib3 modules
for Python. It's not clear where these were coming from before the issue
mentioned above, but they are needed so this change adds them.
Signed-off-by: Paul Carver <pcarver@att.com>
Change-Id: Ib4e446190f718ef326a02087dc88fbfd8bdd293e
Ricardo Noriega [Fri, 20 Nov 2020 13:56:11 +0000 (14:56 +0100)]
Add GCP job for KNI Industrial Edge
Signed-off-by: Ricardo Noriega <rnoriega@redhat.com>
Change-Id: Ia1211399f40233d816b7d122af7a236d4270a40a
James E. Blair [Thu, 12 Nov 2020 21:38:45 +0000 (13:38 -0800)]
Use SCM 'gerrit' choosing strategy for kni jobs
The KNI jobs appear to be building the master branch even after
fetching proposed changes to gerrit. Change the choosing strategy
from 'default' to 'gerrit' to correct this.
See https://plugins.jenkins.io/gerrit-trigger/ for docs.
Change-Id: I028cde257415b2eb297cfa100f68d109df3fac71
Signed-off-by: James E. Blair <jeblair@redhat.com>
Ricardo Noriega [Fri, 6 Nov 2020 17:39:43 +0000 (18:39 +0100)]
Add job for blueprint-management-hub
Also adapt PAE job to new script
Signed-off-by: Ricardo Noriega <rnoriega@redhat.com>
Change-Id: I71566641949b401501b6248ca466de699aa49a93
Eric Ball [Thu, 5 Nov 2020 22:24:00 +0000 (22:24 +0000)]
Merge "Don't run instance collection on deploy jobs"
James E. Blair [Mon, 19 Oct 2020 21:47:47 +0000 (14:47 -0700)]
Don't run instance collection on deploy jobs
The deploy jobs are run on dedicated hosts that don't have the
pre-requisites needed by the lf-infra-publishers (eg, facter,
xmlstarlet, click). This change adds the contents of the
lf-infra-publish macro except for these post-build scripts:
- lf-infra-sysstat
- lf-infra-package-listing
- lf-infra-capture-instance-metadata
And uses a modified log ship builder (Nexus only, not S3)
with fewer dependencies.
Signed-off-by: James E. Blair <jeblair@redhat.com>
Change-Id: Ia7603a70fbe1993d154d2bbafa50026be1627599
Eric Ball [Wed, 21 Oct 2020 00:52:45 +0000 (17:52 -0700)]
Add arm64 builder with aarch64_{build,dev} labels
Change-Id: I688c595d3d226481adb45b0e5eef5624e2d1c964
Signed-off-by: Eric Ball <eball@linuxfoundation.org>
Eric Ball [Thu, 15 Oct 2020 20:48:21 +0000 (13:48 -0700)]
Add ubuntu18.04-arm64 to packer builds
Issue: LF-Jira RELENG-3240
Change-Id: Icf980d0269d1f521c0631145aa1a56ee341b0959
Signed-off-by: Eric Ball <eball@linuxfoundation.org>
Eric Ball [Thu, 15 Oct 2020 20:46:16 +0000 (13:46 -0700)]
Update global-jjb to 0.57.4,common-packer to 0.7.0
Change-Id: Icfe153e0ed559007827788dbebd6512c1a6799bd
Signed-off-by: Eric Ball <eball@linuxfoundation.org>
James E. Blair [Wed, 14 Oct 2020 16:33:53 +0000 (09:33 -0700)]
Use kni-cloud node for cloud jobs
And kni-baremetal for baremetal jobs. The two long-lived jenkins
nodes prd-kni-baremetal-1 and -2 are different; one has cloud
credentials, the other is for bare metal deployments. Use the
more specific kni-cloud and kni-baremetal labels (already present
on the nodes) to select them for the appropriate jobs.
Signed-off-by: James E. Blair <jeblair@redhat.com>
Change-Id: I20c9601934e8e9b5bdb89c56ef168985891c4fdd
Ricardo Noriega [Tue, 13 Oct 2020 10:22:40 +0000 (12:22 +0200)]
Remove KNI job that is no longer needed
Signed-off-by: Ricardo Noriega <rnoriega@redhat.com>
Change-Id: Ib9d6e92d8df11c3b3fc02b4a382b770db3029658
Ricardo Noriega [Thu, 1 Oct 2020 11:31:26 +0000 (13:31 +0200)]
Change labels for new Jenkins slaves
Signed-off-by: Ricardo Noriega <rnoriega@redhat.com>
Change-Id: I2412be59f6150c481fa987d0bfc745b00a1c1868
Anil Belur [Thu, 10 Sep 2020 04:36:09 +0000 (14:36 +1000)]
Update global-jjb to the latest v0.57.3
Update defaults with the required inputs for the openstack-cron
job email notifications.
Change-Id: Ic9c3dc0272abdc4d817fc32bf4da45a7979ae966
Signed-off-by: Anil Belur <abelur@linuxfoundation.org>
Eric Ball [Thu, 6 Aug 2020 21:10:52 +0000 (14:10 -0700)]
Remove unused cloud builder configs & packer jobs
Since these are not being used anywhere in ci-management, they no
longer need to be maintained. This will simplify maintenance, and the
builders can always be re-added if they become necessary again.
Change-Id: I04a0dffc2672eb84958b6279081b858d4f2f8cf5
Signed-off-by: Eric Ball <eball@linuxfoundation.org>
Andrew Grimberg [Wed, 5 Aug 2020 23:50:18 +0000 (16:50 -0700)]
Fix instance volume to a size that works
Change-Id: I41093f9d84db3a9d95becf7a9d73cb2baad40ab5
Signed-off-by: Andrew Grimberg <agrimberg@linuxfoundation.org>
Andrew Grimberg [Wed, 5 Aug 2020 23:19:39 +0000 (16:19 -0700)]
Update cloud images to use a volume and v2 flavors
Change-Id: Ife2ba1f36406a39a9c60d4a13ffed125d13825c7
Signed-off-by: Andrew Grimberg <agrimberg@linuxfoundation.org>
Ciprian Barbu [Thu, 16 Jul 2020 06:20:15 +0000 (09:20 +0300)]
Clone missing iec repo if not found
Make sure iec repo is present for rec clusters.
At the same time, make sure K8S_MASTER_IP is exported in the ssh session
shell when running the install script
Signed-off-by: Ciprian Barbu <ciprian.barbu@enea.com>
Change-Id: I962359fc954198912faf589bee20c6f528b4875d
Ricardo Noriega [Thu, 2 Jul 2020 10:53:44 +0000 (12:53 +0200)]
Fix KNI CI jobs
Currently the repo is pointing to github, not gerrit
so refs are not working.
Signed-off-by: Ricardo Noriega <rnoriega@redhat.com>
Change-Id: Iedf209eb326bd643e9ebe4b3b57448ac683b92e7
Eric Ball [Wed, 24 Jun 2020 20:46:45 +0000 (20:46 +0000)]
Merge "iec: fuel: Map new UNH baremetal POD to IEC xDFs"
Alexandru Avadanii [Wed, 17 Jun 2020 12:52:01 +0000 (14:52 +0200)]
iec, rec: Abstract out common seba_on_arm usecase
- move seba_on_arm IEC usecase to its own macros/templates files;
- enable seba_on_arm install/test jobs for REC deployments running
on aarch64 baremetal nodes;
- replace dashes with underscores in jjb variables that need to be
handled by the jinja2 parser, since jinja2 does not allow dashes
in variable names;
While at it, add vim temporary files ('*.sw?') to .gitignore.
Change-Id: I62ae4ebfd4955fb484876e3a63c8f02a77e90b38
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
Alexandru Avadanii [Thu, 18 Jun 2020 16:30:46 +0000 (18:30 +0200)]
iec: fuel: Map new UNH baremetal POD to IEC xDFs
Change-Id: Ibdb345e3eb9fc12be4782414c7f5fa51c333f0d4
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
Alexandru Antone [Thu, 11 Jun 2020 13:52:48 +0000 (16:52 +0300)]
Gracefully stop the remote-installer container
Force killing the container with 'rm -f' bypasses the SIGTERM handler
defined in the container's entry point shell script which would
gracefully stop the nfs-server before exiting.
This leaves TCP port 2049 bound on some hosts and subsequent runs of
the remote-installer will fail to properly start NFS shares.
Signed-off-by: Alexandru Antone <Alexandru.Antone@enea.com>
Change-Id: I56d77ffabdb901504193c5e5d6b7d0f73d52488d
Alexandru Avadanii [Tue, 9 Jun 2020 12:25:45 +0000 (14:25 +0200)]
validation: Enable validation for REC in UNH lab
Add new jobs for running the validation jobs on the REC POD in UNH
lab, similar to running validation jobs on the IEC PODs in Enea lab.
The new job(s) will upload the logs to nexus.akraino.org in the
'unh' lab silo.
Change-Id: I99fcc4854ead367fad8d203eb448908b229d6781
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
Eric Ball [Tue, 26 May 2020 20:51:10 +0000 (20:51 +0000)]
Merge "validation:Fix jobs cleanup issue with permissions"
DANIEL STOICA [Tue, 19 May 2020 09:05:39 +0000 (12:05 +0300)]
validation:Fix jobs cleanup issue with permissions
Change the owner for the kube directory, because might be
owned by root, causing permission issues when Jenkins tries to
perform the workspace cleanup
Signed-off-by: DANIEL STOICA <daniel.stoica@enea.com>
Change-Id: I6fedecb633ab8ce78b03a9d8b9bec8ce9926bfcb
Eric Ball [Mon, 18 May 2020 23:05:47 +0000 (16:05 -0700)]
Revert "Add signing to Akraino deploy templates"
This reverts commit
0904fdd5e0e3b113ee90e77c646a7f156d878762.
We are seeing issues with signing very large objects (specifically,
the ISOs being pushed by TA). Until we find a solution for this,
the change needs to be reverted so that it does not cause any further
interruption to normal work.
Change-Id: Ib79b2bbc9aaca92eaf60a2a836bba5e84487ba89
Signed-off-by: Eric Ball <eball@linuxfoundation.org>
Eric Ball [Mon, 18 May 2020 23:04:11 +0000 (23:04 +0000)]
Merge "update 5g-mec-cloud-gaming jobs to Jenkins"
Houa Yang [Mon, 18 May 2020 21:55:01 +0000 (16:55 -0500)]
Add S3_BUCKET environment variable
Add S3_BUCKET variable to address "unrecognized macro" error.
Although the job passes, the error is confusing and unsightly.
The S3_BUCKET environment variable is needed for log shipping to s3.
Signed-off-by: Houa Yang <hyang@contractor.linuxfoundation.org>
Change-Id: I90af7149ab9f9e3e69491f8b37add6cfef54a826
feng [Wed, 13 May 2020 16:25:25 +0000 (00:25 +0800)]
update 5g-mec-cloud-gaming jobs to Jenkins
Change-Id: Ibb074147debc66f4182cf0f74a51e3db644ae90a
feng [Mon, 11 May 2020 01:16:24 +0000 (09:16 +0800)]
update 5g-mec-cloud-gaming jobs
Change-Id: I88bde4a3492c4de9ab99e71cbe0d031247a8c651
Eric Ball [Fri, 8 May 2020 21:10:09 +0000 (21:10 +0000)]
Merge "Add signing to Akraino deploy templates"
DANIEL STOICA [Fri, 8 May 2020 13:10:00 +0000 (16:10 +0300)]
validation:Fix jobs cleanup issue with permissions
Transfer only the ~/.kube/config file for k8s tests, since the rest
of contents of the "~/.kube/" directory (e.g. http-cache) might be
owned by root, causing permission issues when Jenkins tries to
perform the workspace cleanup. Since only the config file is actually
needed for running the k8s tests, skip other files/directories in
"~/.kube/"
Signed-off-by: DANIEL STOICA <daniel.stoica@enea.com>
Change-Id: Ic3d6823bd45069e66eb085a8c09383461f517d12
Eric Ball [Wed, 6 May 2020 22:44:16 +0000 (22:44 +0000)]
Merge "Support password-based ssh auth"
DANIEL STOICA [Wed, 29 Apr 2020 11:39:15 +0000 (14:39 +0300)]
Support password-based ssh auth
Add ssh password to the run_bluval.sh script command
JIRA: VAL-106
Signed-off-by: DANIEL STOICA <daniel.stoica@enea.com>
Depends-On: I04145b32621dae49485cb8640d80932345957826
Change-Id: I0f2974cd21d59e5b6ad85be37a0e71d064ec70ab
Eric Ball [Mon, 4 May 2020 22:21:46 +0000 (22:21 +0000)]
Merge "iec: Add robot parsing for SEBA tests"
Eric Ball [Mon, 4 May 2020 21:28:54 +0000 (21:28 +0000)]
Merge "Automation adds pcei.yaml"
Eric Ball [Mon, 4 May 2020 21:13:17 +0000 (14:13 -0700)]
Update authentication URI endpoint
Change at the hosting provider seems to have caused a problem with the
authentication URI. Removing the trailing '/' fixes the problem.
Change-Id: I7078d528672fb65cc1b68e735cdf25cc11c8e88b
Signed-off-by: Eric Ball <eball@linuxfoundation.org>
LF Jenkins CI [Mon, 4 May 2020 19:08:57 +0000 (19:08 +0000)]
Automation adds pcei.yaml
Change-Id: I34ca6643323313df6087de9177d3caae8c1eb6c2
Signed-off-by: lf-jobbuilder <releng+lf-jobbuilder@linuxfoundation.org>
Eric Ball [Wed, 29 Apr 2020 01:17:53 +0000 (18:17 -0700)]
Add signing to Akraino deploy templates
Since Akraino projects do not follow standard release procedures, we
will simply sign the artifacts before pushing them to Nexus, just to
provide signatures showing that all artifacts come from LF infra.
Change-Id: Ia3478900acd02d419fe49c25b1902b1a3459f73d
Issue-ID: LF-Jira RELENG-2819
Signed-off-by: Eric Ball <eball@linuxfoundation.org>
LF Jenkins CI [Wed, 29 Apr 2020 20:28:52 +0000 (20:28 +0000)]
Automation adds 5g-mec-cloud-gaming.yaml
Change-Id: I287f0d3682819fe7867bfdff22941eea7d00dc32
Signed-off-by: lf-jobbuilder <releng+lf-jobbuilder@linuxfoundation.org>
Alexandru Avadanii [Mon, 27 Apr 2020 10:37:43 +0000 (12:37 +0200)]
iec: Add robot parsing for SEBA tests
Leverage the Jenkins Robot publisher for parsing the SEBA-in-a-box
test results.
While at it, disable the IEC destroy phase for baremetal deployments,
since aarch64 baremetal PODs are not shared by multiple installers the
same way virtual PODs are, hence there's no need for the in-between jobs
cleanup.
Change-Id: I264a5e4a917ca7e97c48dec18864e48e3637ab8e
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
Srinivasan Selvam [Mon, 27 Apr 2020 07:51:52 +0000 (13:21 +0530)]
Added ealt-edge repo verify job
Signed-off-by: Srinivasan Selvam <srinivasan.s.n@huawei.com>
Change-Id: Iaaabeaa5cb1ba4213d24a84a55e5b5fb6e9bc25f
Eric Ball [Fri, 24 Apr 2020 23:40:24 +0000 (23:40 +0000)]
Merge "Remove libvirt provider jobs"
Alexandru Avadanii [Wed, 22 Apr 2020 13:56:31 +0000 (15:56 +0200)]
validation: iec: Pull docker images before run
Add a new 'PULL' job paramater for validation-<lab>-* jobs, as well
as 'bluval-*' jobs; set it to 'false' by default and 'true' for IEC
validation jobs since most IEC jobs run on static Jenkins slaves where
the validation docker images might already be present from previous
runs.
JIRA: VAL-107
Depends-on: Id4b7947a0de7abf07f69812c6deef71919b9041a
Change-Id: Ic2f690d6627f6ae284a27727f3c98fe03960cbda
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
Eric Ball [Tue, 21 Apr 2020 21:26:23 +0000 (21:26 +0000)]
Merge "iec: view: Stop filtering out the sonar job"
Alexandru Avadanii [Tue, 21 Apr 2020 16:28:42 +0000 (18:28 +0200)]
bluval: Extend job description with BP, lab, layer
bluval jobs are shared across different blueprints, labs and layers,
so display some useful information in the job history overview pane.
Change-Id: I38e7c700774765066524a99da1e5786c5fec1b58
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
Alexandru Avadanii [Tue, 21 Apr 2020 14:09:16 +0000 (16:09 +0200)]
iec: view: Stop filtering out the sonar job
The 'iec-sonar' job should be displayed under the IEC Jenkins view,
similar to 'iec-tox-verify-master'.
Change-Id: Icfcc0f516f638c59713601fa77e8088178980875
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
Alexandru Avadanii [Sat, 18 Apr 2020 18:42:56 +0000 (20:42 +0200)]
validation: Use blucon.sh if python3 not available
The Validation project supports running the test suites using nothing
more than Docker as a prerequisite (i.e. if no python3 is available),
so leverage `blucon.sh` now that it supports overriding the validation
git repository path and results dir path.
For most slaves, the new method is merely a fail-safe, since they
already have python3.
JIRA: VAL-95
Depends-on: I4d3c10881de28c64bcca05ff23aa1025f67a1f5e
Change-Id: I08e89300637862e40344131532ec40efd5f68501
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
Alexandru Avadanii [Fri, 17 Apr 2020 15:59:35 +0000 (17:59 +0200)]
validation: bluval: Use own repo logparser rules
Instead of creating the logparser rules.txt file on the fly, rely on
the project's git repository providing it.
While at it, add and configure the 'robot' publisher in order to enable
Jenkins dashboard integration and display some nice summaries directly
in the 'blueval' view (using the 'Robot Results + Duration Trend'
column), as well as on the job's overview webpage.
JIRA: VAL-104
Depends-on: I1506d84a44926e80913562f67f24885a98f94df7
Change-Id: I971ae6f8949caac8debc1aee0f35e0b35b8f65e6
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
Eric Ball [Thu, 16 Apr 2020 19:01:42 +0000 (19:01 +0000)]
Merge "iec-sonar: Disable git submodule cloning"
Eric Ball [Thu, 16 Apr 2020 18:59:54 +0000 (18:59 +0000)]
Merge "iec: seba_on_arm: fail job on error"
Alexandru Avadanii [Thu, 16 Apr 2020 14:37:27 +0000 (16:37 +0200)]
iec-sonar: Disable git submodule cloning
SonarQube should be limited to scanning the IEC repository contents
and not its (massive) collection of git submodules which include various
upstream components (including the full K8s source code, among other
large code bases).
Although we apply some inclusion/exclusion filtering as part of
SonarQube configuration, it seems that the large collection of git
submodules interferes with log collection and upload; hence disable
cloning git submodules before running SonarQube.
This is an attempt at fixing the ever-hanging iec-sonar job in CI.
Change-Id: If6b9b205d8f1924ca8180787a92415494461d5b7
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
Alexandru Avadanii [Thu, 16 Apr 2020 12:52:40 +0000 (14:52 +0200)]
iec: seba_on_arm: fail job on error
Previously, seba_on_arm install/test jobs used to always return a zero
exit code, marking the job successful even when it failed.
Add `set -e` so the job is marked as failed when errors occur.
Change-Id: Id67ac0695255e475f1e6147266ac7051d3567913
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
Alexandru Avadanii [Wed, 15 Apr 2020 19:11:34 +0000 (21:11 +0200)]
validation: Only run tagged docker build once
Previously, we used to manually change the release tag for the Docker
container image(s) built for the validation project, let the build run
once, then create another change that disabled the job to prevent
further (useless) rebuilds happening each night.
Instead of triggering the docker build job for the release (tag) using
cron, switch to triggering the job based on gerrit merge events
affecting the ci-management repository and only if the said merge event
affects the 'validation-docker.yaml' configuration file (the one where
the release tag is defined/updated).
Change-Id: Ia4493b558ee7d1319c42a04690aa1c7580eb3731
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
Alexandru Avadanii [Wed, 15 Apr 2020 16:16:07 +0000 (18:16 +0200)]
validation: Release tag 3.0.0
Add jobs that build docker container images based on [1] and tag them
accordingly.
[1] https://gerrit.akraino.org/r/gitweb?p=validation.git;h=refs/tags/3.0.0
Change-Id: Idc98e28dcb2cc99ffba5c7dafbcd86dfc761a874
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
Eric Ball [Wed, 15 Apr 2020 18:17:19 +0000 (18:17 +0000)]
Merge "iec: Stop upstream job if IEC installation fails"
Eric Ball [Wed, 15 Apr 2020 18:16:07 +0000 (18:16 +0000)]
Merge "validation, iec: Rework common parameters list"
Alexandru Avadanii [Wed, 15 Apr 2020 14:35:40 +0000 (16:35 +0200)]
validation, iec: Rework common parameters list
Instead of abusing yaml anchors, use jjb inheritance of parameter
lists.
While at it, fix IEC Compass default value of private key, which
should be empty (Compass uses user/pass auth).
Change-Id: I5528b6ce4dcf648ec416194bfcbb88bddc1c8c39
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
Alexandru Avadanii [Wed, 15 Apr 2020 13:35:29 +0000 (15:35 +0200)]
iec: Stop upstream job if IEC installation fails
Previously, we were using a single `trigger-builds` builder, which as
a consequence led to running all downstream projects even if the first
one (installing the IEC platform) failed.
Switch to using 2 different `trigger-builds` builders so:
- if IEC installation fails, no other downstream jobs are executed and
the upstream (parent) job is marked as failed;
- if any other downstream job (except SEBA install/test jobs) fails,
the upstream (parent) job is marked as failed/unstable, but all other
downstream jobs are still executed (so we can still install/test SEBA
and destroy the IEC installation at the end even if the 'validation'
job failed);
Change-Id: I946c5bc9f2cc35afcbeb64d954beb10f3281fc11
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
Alexandru Avadanii [Tue, 14 Apr 2020 13:55:55 +0000 (15:55 +0200)]
Fix SCM macro usage of refspec, branches
- fix ignored refspec SCM parameter (hardcoded to empty string):
s/refspec: ''/refspec: '$GERRIT_REFSPEC'/g
- fix IEC SCM configuration regression (broken in previous commit):
s/branches: '$GERRIT_BRANCH'/branch: 'GERRIT_BRANCH'/g
- add missing lf-infra-parameters macro to bluval job;
- use lf-infra-gerrit-scm macro in IEC templates (now that submodule
recursive cloning parametrization is supported);
- retire 'validation-job-parameters' parameters macro, which is only
an alias for 'lf-infra-parameters';
- rework validation SCM handling for refs/tags/...;
JIRA: VAL-103
Change-Id: I94957fb02afdfe8a01330e768dc5fde15f5ea05d
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
Eric Ball [Wed, 15 Apr 2020 01:46:39 +0000 (01:46 +0000)]
Merge "iec: exclude seba_on_arm from virtual PODs"
Eric Ball [Wed, 15 Apr 2020 01:46:09 +0000 (01:46 +0000)]
Merge "Fix k8s tests run in CI"
Ciprian Barbu [Fri, 10 Apr 2020 14:17:30 +0000 (17:17 +0300)]
iec: Add jobs for testing usecases
Also rework the iec-seba-on-arm.sh script to reuse the existing
facilities which deal with installer and OS specifics
JIRA: IEC-14
Signed-off-by: Ciprian Barbu <ciprian.barbu@enea.com>
Change-Id: Ida04b93030751b4dbdfc929107d0f30d644974fa
Alexandru Avadanii [Fri, 10 Apr 2020 12:47:06 +0000 (14:47 +0200)]
iec: exclude seba_on_arm from virtual PODs
Virtual PODs are slow and often cause issues with the SEBA on arm
deployments, raising misleading errors in our testing.
Since now we have a baremetal POD that will cover SEBA testing,
exclude the flaky virtual installations for SEBA.
Change-Id: I147bdd13d5d213837fefb25e8d299bb91e60ebf5
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
DANIEL STOICA [Tue, 14 Apr 2020 08:28:14 +0000 (11:28 +0300)]
Fix k8s tests run in CI
Enable k8s config file transfer if layer is empty
JIRA: IEC-41
Signed-off-by: DANIEL STOICA <daniel.stoica@enea.com>
Change-Id: Iac7772326271c811efd714bc9f66309581ff4dc1
Eric Ball [Tue, 14 Apr 2020 06:05:54 +0000 (06:05 +0000)]
Merge "iec: aarch64 baremetal POD: map name, cron trigger"
Yolanda Robla [Mon, 13 Apr 2020 14:04:25 +0000 (16:04 +0200)]
Remove libvirt provider jobs
With the addition of virtual baremetal, we do not
need to use libvirt jobs anymore, they were buggy
and faulty so let's retire them.
Signed-off-by: Yolanda Robla <yroblamo@redhat.com>
Change-Id: I5fd196c6328b86f7ca9451b1c19e0fb75fb70289
Alexandru Avadanii [Tue, 7 Apr 2020 10:34:34 +0000 (12:34 +0200)]
iec: aarch64 baremetal POD: map name, cron trigger
IEC Fuel deploy scripts need a mapping between the Jenkins node (slave)
name and its lab/pod naming scheme, i.e. for the new baremetal POD
`ubuntu1804-dev-96c-256g-1` we will use `arm-baremetal1` for PDF/IDF
filenames.
While at it, update related jobs:
- extend ci-management static slave init jobs to also generate jobs
for the new AArch64 baremetal POD label (aarch64_baremetal_dev).
- exclude Ubuntu 16.04 / CentOS from Fuel baremetal job matrix since
baremetal provisioning in Fuel only supports Ubuntu 18.04 currently;
- schedule IEC Type 2 Fuel baremetal deployment every day @ 01:00;
- fix GERRIT_REFSPEC job paramater being ignored for IEC jobs;
JIRA: IT-19425
JIRA: IT-19445
Change-Id: I1e1debb7ad61e6aac7a6304ecc2bd5fd6e9fe3ce
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
Alexandru Avadanii [Thu, 9 Apr 2020 11:23:12 +0000 (13:23 +0200)]
validation: Move docker build job to aarch64_build
Previously, validation docker build jobs used to run on 'aarch64_dev'
labeled slaves, which are also used by IEC installers (compass, fuel)
that interfere with the machine's Docker service (usually by restarting
the Docker service when the install/deploy is started; which
unfortunately overlaps quite frequently with the validation docker build
job). Of course, this is also possible due to the 'aarch64_dev' nodes
having more than 2 executors (currently 3).
To avoid this, we could add build-blockers to both IEC install jobs and
validation docker build jobs, but that would create unnecessary cross
dependencies between IEC and validation projects.
Instead, move the validation Docker build to nodes servicing the label
'aarch64_build', which only have 2 executors and currently only run TA
RPM/ISO build jobs that do not interfere in a destructive way with the
Docker service on the machine.
JIRA: VAL-101
Change-Id: Iebc57a6a710b96ee6dcb04ea5e98243af3b44fa8
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
Yolanda Robla [Wed, 8 Apr 2020 09:28:13 +0000 (11:28 +0200)]
Change tests to run in virtual baremetal
For daily tests, change the job to run in
virtual baremetal, in order to speed up and
preserve hardware.
Signed-off-by: Yolanda Robla <yroblamo@redhat.com>
Change-Id: I780544fab4e2144a1d7b3f4d1ae72f632b4e3132
DANIEL STOICA [Fri, 3 Apr 2020 13:25:06 +0000 (16:25 +0300)]
Run test for multiple layers on IEC blueprint
Initially only the k8s layer was tested for IEC.
With the introduction of more mandatory tests, allow testing
for multiple layers, by not specifying any particular layer.
Signed-off-by: DANIEL STOICA <daniel.stoica@enea.com>
Depends-On: I5c19b527ec86be0a60b7c31fcd579f0802e9874d
Change-Id: I4d36305d9ffd6fb7688002b6cb72a18baed77803
DANIEL STOICA [Tue, 24 Mar 2020 13:30:23 +0000 (15:30 +0200)]
Enable vuls and lynis tests in CI
- created the ssh_key_dir and put the ssh_key
- set host and username variable in validation/tests/variables.yaml
- set ssh_key_dir and custom_variables_file path in validatin/bluval/volumes.yaml
Signed-off-by: DANIEL STOICA <daniel.stoica@enea.com>
Depends-On: Ibb16f76405f5b43797e0d859db0681759adf5e18
Change-Id: I9e5349a0e3e3a1e7331a5f5b4b4a8d5a1b01aa51
Eric Ball [Wed, 18 Mar 2020 17:06:16 +0000 (17:06 +0000)]
Merge "Enable installation of TA in CI"
Eric Ball [Tue, 17 Mar 2020 16:29:48 +0000 (16:29 +0000)]
Merge "Fix installation bug on Ubuntu 18.04"
Cristina Pauna [Wed, 4 Mar 2020 10:00:59 +0000 (12:00 +0200)]
Enable installation of TA in CI
For each REC POD, the CD job is tied to a specific jenkins slave
that has access to the POD's lab.
For now, only UNH Ampere1 POD is added and user_config.yaml is stored
on the slave at:
file:///data/rec_pod/user_config.yaml
Also for CD deployments, admin_user_password in user_config.yaml is
required to be the hash for "admin" to be able to pull post deployment
logs from the first controller.
Jenkins slave package requirements:
- docker
- jq
Co-authored-by: Cristina Pauna <cristina.pauna@enea.com>
Co-authored-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>>
Signed-off-by: Alexandru Antone <Alexandru.Antone@enea.com>
Change-Id: Iece4330c3242385c33d8a1daa092f78ce5d46cc8
Jingzhao.Ni [Thu, 5 Mar 2020 10:03:22 +0000 (18:03 +0800)]
Fix installation bug on Ubuntu 18.04
When deploying VMs on Ubuntu 18.04, the compass can not resolve the
host ip address correctly. It will cause the compass4nfv deploying
failed.
In this patch, it gets compass4nfv code from iecedge repository.
Some modification has been done for fixing those issues on specific
branch.
Signed-off-by: Jingzhao.Ni <Jingzhao.Ni@arm.com>
Change-Id: I86faffee4473ed2f6f36594a2b14be44f7b77191
Eric Ball [Thu, 5 Mar 2020 15:31:01 +0000 (15:31 +0000)]
Merge "Increase timeout of libvirt build to 120"
Yolanda Robla [Thu, 5 Mar 2020 09:00:38 +0000 (10:00 +0100)]
Increase timeout of libvirt build to 120
Currently it had a 60 min timeout, that is not enough
for completing the whole job.
Signed-off-by: Yolanda Robla <yroblamo@redhat.com>
Change-Id: I4664a3ab2b9c3a9b68b844b593e8a0b735eb3a70
Eric Ball [Tue, 3 Mar 2020 19:34:53 +0000 (19:34 +0000)]
Merge "iec: fuel: Account for Jenkins slave rename"
Alexandru Avadanii [Thu, 27 Feb 2020 17:12:27 +0000 (18:12 +0100)]
ta: ISO upload path: drop "release-1", add arch
Previously, TA ISO build used to push artifacts to Nexus repository in
a subdirectory that included in its path the BUILD_ID (Jenkins job ID,
e.g. [1]), but no further specifics like the artifact architecture.
Since amd64 and arm64 build jobs are completely separate, the
BUILD_ID for the two jobs are not correlated in any way, so the arm64
job (since it's newer) pushes artifacts to directories that were
previously created by the amd64 job some time ago (e.g. #109 has amd64
artifacts from August 2019 and arm64 artifacts from February 2020).
This change splits the output artifacts into arch-specific directories,
while dropping the "release-1" subdir from the path, so:
TA/images/release-1/images/{<BUILD_ID>, latest}
becomes:
TA/images/<arch>/{<BUILD_ID>,latest}
e.g. instead of [1] we will have [2] and [3].
[1] https://nexus.akraino.org/content/repositories/ \
images-snapshots/TA/release-1/images/123/
[2] https://nexus.akraino.org/content/repositories/ \
images-snapshots/TA/images/amd64/56/
[3] https://nexus.akraino.org/content/repositories/ \
images-snapshots/TA/images/arm64/45/
Change-Id: Ie3e189c1ab61bb9e395663c9882ee869929e0b76
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
Alexandru Avadanii [Tue, 3 Mar 2020 12:36:43 +0000 (13:36 +0100)]
iec: fuel: Account for Jenkins slave rename
AArch64 static Jenkins slaves have been upgraded from Ubuntu 16.04 to
Ubuntu 18.04 and renamed accordingly [1].
[1] https://jira.linuxfoundation.org/servicedesk/customer/portal/2/ \
IT-19055
Change-Id: I6c30f2794be4f54d627f76a746bd90a682839313
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
Jingzhao [Mon, 2 Mar 2020 14:39:48 +0000 (22:39 +0800)]
Fix build failure issue in community CI
In compass building script, the curl command gets file as
an incorrectly format from URL which finally results in
the compass building failure.
In this patch, the script file will be download by wget.
Then it will be run as a scripts by bash.
Signed-off-by: Jingzhao <Jingzhao.Ni@arm.com>
Change-Id: I8bd49cb818a3c67a7e752a6a1e5521dc570e57b9
Eric Ball [Sat, 29 Feb 2020 00:31:28 +0000 (00:31 +0000)]
Merge "Add job for KNI blueprint on Google Cloud"
Ricardo Noriega [Thu, 27 Feb 2020 09:53:00 +0000 (10:53 +0100)]
Add job for KNI blueprint on Google Cloud
Signed-off-by: Ricardo Noriega <rnoriega@redhat.com>
Change-Id: Id5b37f86f73c27a8d25cdc0d879ad842075e2e04
Alexandru Avadanii [Tue, 25 Feb 2020 17:48:15 +0000 (18:48 +0100)]
ta: iso: Workaround kernel missing read rights
libguestfs requires read access to the current running kernel,
as described in [1].
While at it, install missing rename dependency.
[1] https://bugs.launchpad.net/fuel/+bug/
1467579
Change-Id: Ic0c9095e35dd740d48ddf83add530456a5cae92d
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
Eric Ball [Tue, 25 Feb 2020 15:25:37 +0000 (15:25 +0000)]
Merge "Move iec jenkins job in jjb/akraino-templates"
Eric Ball [Tue, 25 Feb 2020 15:23:38 +0000 (15:23 +0000)]
Merge "iec: compass: Fix log permissions, curl redirect"
Daniel Stoica [Mon, 24 Feb 2020 12:49:09 +0000 (14:49 +0200)]
Move iec jenkins job in jjb/akraino-templates
Signed-off-by: Daniel Stoica <daniel.stoica@enea.com>
Change-Id: I86539d875ccb91536f79894438bc45dca474b32b
Alexandru Avadanii [Tue, 25 Feb 2020 09:01:27 +0000 (10:01 +0100)]
iec: compass: Fix log permissions, curl redirect
- follow HTTP redirect (`curl -L`) where appropiate;
- fix workspace permissions so logs uploading can archive log files
before pushing them to Nexus (by changing the file owner to the
current user/group);
- destroy: do not break on error, in case some resources are missing,
keep trying to cleanup the rest anyway;
Change-Id: I7696b3ce7172b74f5b8977353ad27b70b264933b
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
Alexandru Avadanii [Fri, 21 Feb 2020 12:31:15 +0000 (13:31 +0100)]
static slaves: Perform global-jjb init
global-jjb was recently bumped to 0.51, which assumes
jenkins-init-scripts were already executed on the build slave
(e.g. by sourcing ~jenkins/lf-env.sh), which is always true for
Openstack instances dynamically spawned by Jenkins, but not yet
for static slaves like AArch64 dev/build/baremetal PODs.
Add a new job, triggered on ci-management gerrit merge (only if
global-jjb reference is changed) that executes the jenkins-init-scripts
similar to dynamic slaves initialization.
NOTE: Since jenkins-init-scripts are not fully idempotent, some
actions (e.g. id_rsa keypair generation) are executed even though
they are not mandatory (for the id_rsa keypair this means the
private/public keys will be forcefully regenerated each time this new
job runs).
Change-Id: I62433a45c7966aed1d1184fa60e87ee4211996e4
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
Alexandru Avadanii [Sun, 23 Feb 2020 15:26:18 +0000 (16:26 +0100)]
ta: login shell, filename expansion enabled
Recent global-jjb bumps introduced changes to python-tools-install.sh
which now disables filename expansion (globbing).
Since TA RPM merge / ISO build jobs combine python-tools-install.sh and
other sh script files into a single build step (i.e. resulting a single
sh script), this breaks globbing for the TA RPM/ISO upload handling.
Also, since python-tools-install.sh does not run as a login shell (`bash
-l`), ~/.profile is not sourced and PATH might be missing certain paths
like ~/.local/bin, where `lftools` is located, resulting in build
failures due to missing/not found `lftools`.
To mitigate the above issues:
1. split the offending build step into 2 separate steps
to allow spawning the second step under a login shell (without modifying
python-tools-install.sh);
2. Run the second step under a login shell, so PATH contains `lftools`
installed by pip;
3. Add `set +f` to enable globbing (this is not critical after splitting
the build step above, since python-tools-install.sh disabling globbing
will no longer affect the second step; but it should make it more
obvious that the script *requires* globbing);
Change-Id: I4a5e6a4a88a296cb21d68338f8e5a5b219076308
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
Eric Ball [Thu, 20 Feb 2020 20:17:51 +0000 (12:17 -0800)]
Update global-jjb to v0.51.1
This will ensure compatibility will all of the latest Jenkins
plugins.
Change-Id: Ibee61d798ad14841a8e4d929557c877fd869b854
Signed-off-by: Eric Ball <eball@linuxfoundation.org>