From patchwork Thu Nov 11 16:05:00 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Cleber Rosa X-Patchwork-Id: 12615353 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id EC275C433EF for ; Thu, 11 Nov 2021 16:17:24 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 6D00661052 for ; Thu, 11 Nov 2021 16:17:24 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org 6D00661052 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=nongnu.org Received: from localhost ([::1]:34194 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mlClP-0002ry-Iz for qemu-devel@archiver.kernel.org; Thu, 11 Nov 2021 11:17:23 -0500 Received: from eggs.gnu.org ([209.51.188.92]:51324) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mlCbq-0001Pj-GF for qemu-devel@nongnu.org; Thu, 11 Nov 2021 11:07:30 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]:22230) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mlCbn-0001iR-U0 for qemu-devel@nongnu.org; Thu, 11 Nov 2021 11:07:29 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1636646846; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Z3JQAsoo6e5Fvxxeewovz7gMHOhF88PdHyRwBZ+N2I0=; b=WJ6NK+Jxf8nY/BsFvBNNDDYBMO+6lcFWt7nONEoZhOKWrvhGIsopZysCbg4jhjXtxOAWL9 wgEj17arAtiJdtP51LwfduqaP3nH42Y2Dba9xMGxzA0LRlwSONDtbMO6p+HUT6ol8kV5Yt nuAev97ZYKYXOptiyzVLY/ZfpYYgj1E= Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-282-NjOL5uhvNhyd8YrFRG6CZA-1; Thu, 11 Nov 2021 11:06:16 -0500 X-MC-Unique: NjOL5uhvNhyd8YrFRG6CZA-1 Received: from smtp.corp.redhat.com (int-mx05.intmail.prod.int.phx2.redhat.com [10.5.11.15]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 4F3DD871814; Thu, 11 Nov 2021 16:06:15 +0000 (UTC) Received: from p50.localhost.localdomain.com (unknown [10.22.32.78]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 5FA4D5D6D7; Thu, 11 Nov 2021 16:05:06 +0000 (UTC) From: Cleber Rosa To: qemu-devel@nongnu.org Subject: [PATCH v2 0/1] Jobs based on custom runners: add CentOS Stream 8 Date: Thu, 11 Nov 2021 11:05:00 -0500 Message-Id: <20211111160501.862396-1-crosa@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.15 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=crosa@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Received-SPF: pass client-ip=170.10.129.124; envelope-from=crosa@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -34 X-Spam_score: -3.5 X-Spam_bar: --- X-Spam_report: (-3.5 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.7, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Fam Zheng , Kevin Wolf , Thomas Huth , Eduardo Habkost , qemu-block@nongnu.org, Erik Skultety , Stefan Hajnoczi , =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Wainer dos Santos Moschetta , =?utf-8?q?Philippe_Mathi?= =?utf-8?q?eu-Daud=C3=A9?= , Willian Rampazzo , Hanna Reitz , John Snow , Willian Rampazzo , Cleber Rosa , =?utf-8?q?Alex_Benn=C3=A9e?= , Beraldo Leal Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" This adds a new custom runner, showing an example of how other entities can add their own custom jobs to the GitLab CI pipeline. The runner (the machine and job) is to be managed by Red Hat, and adds, at the very least, bare metal x86_64 KVM testing capabilities to the QEMU pipeline. This brings extra coverage for some unittests, and the ability to run the Avocado tests that depend on KVM. The runner is already completely set up and registered to the https://gitlab.com/qemu-project/qemu project instance. Jobs will be triggered according to the same rules for the jobs s390x and aarch64 jobs running on QEMU project's custom runners, that is, pushes to the staging branch of the "qemu-project" project, or by setting a specific variable. Still, the job is set with mode "allow failures", so it should not disrupt the existing pipeline. Once its reliability is proved (rules and service levels are to be determined), it can be "upgraded" to a "gating" condition. Even though the formal method of tracking machine/job maintainers have not been formalized, it should be known that the contacts/admins for this machine and job are: - Willian Rampazzo willianr on #qemu - Cleber Rosa clebergnu on #qemu One example of a job introduced here, running on the host reserved for this purpose can be seen at: - https://gitlab.com/cleber.gnu/qemu/-/jobs/1773761640 Changes from v1[1]: * Replaced "--disable-fdt" for "--enable-fdt", given that according to "TARGET_NEED_FDT=y" in "configs/targets/x86_64-softmmu.mak" it is required for x86_64-softmmu. * Added libfdt-devel to list of package requirements (see previous point for reasoning). * Removed patch 1 that contained a duplicate bug fix. * Removed patches 2 and 3 that implemented a "feature probe" and "feature requirement" that would cancel tests if features were not present. That will be treated in a different patch series. * Removed --disable-jemalloc and --disabletcmalloc according to 3b4da1329. * Introduced "test-avocado" script with a list of vetted tests * Do not install meson from CentOS Stream 8 PowerTools repo, instead meson from git submodule due to minimum version requirements. * Sync with commit f68d21ab8eac56c4097a3d63a8c86689bb507911 (HEAD of c8s-stream-rhel branch) from CentOS repo at https://git.centos.org/rpms/qemu-kvm/. * Further separated distribution version and architecture specific files into separate sub directories. * Added a gitlab CI rule and variable to allow other repos/users who have a CentOS Stream 8 x86_64 runner to trigger the job. [1] https://lists.gnu.org/archive/html/qemu-devel/2021-06/msg02066.html Cleber Rosa (1): Jobs based on custom runners: add CentOS Stream 8 .gitlab-ci.d/custom-runners.yml | 29 +++ docs/devel/ci-jobs.rst.inc | 7 + .../org.centos/stream/8/build-environment.yml | 51 +++++ .../ci/org.centos/stream/8/x86_64/configure | 208 ++++++++++++++++++ .../org.centos/stream/8/x86_64/test-avocado | 70 ++++++ scripts/ci/org.centos/stream/README | 17 ++ scripts/ci/setup/build-environment.yml | 38 ++++ 7 files changed, 420 insertions(+) create mode 100644 scripts/ci/org.centos/stream/8/build-environment.yml create mode 100755 scripts/ci/org.centos/stream/8/x86_64/configure create mode 100755 scripts/ci/org.centos/stream/8/x86_64/test-avocado create mode 100644 scripts/ci/org.centos/stream/README