URL: https://github.com/SSSD/sssd/pull/919 Author: pbrezina Title: #919: ci: improvements for on-demand builds Action: synchronized
To pull the PR as Git branch: git remote add ghsssd https://github.com/SSSD/sssd git fetch ghsssd pull/919/head:pr919 git checkout pr919
From 78411a79034e89bd1e761c3059178c94fff6a35c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pavel=20B=C5=99ezina?= <pbrez...@redhat.com> Date: Tue, 29 Oct 2019 10:17:16 +0100 Subject: [PATCH 1/5] ci: store artifacts in jenkins for on-demand runs --- Jenkinsfile | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/Jenkinsfile b/Jenkinsfile index c139b241fa..44a7e9728a 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -104,6 +104,9 @@ class Test { this.artifactsdir = "${this.pipeline.env.WORKSPACE}/artifacts/${this.system}" this.codedir = "${this.pipeline.env.WORKSPACE}/sssd" + /* Clean-up previous artifacts just to be sure there are no leftovers. */ + this.pipeline.sh "rm -fr ${this.artifactsdir} || :" + try { this.pipeline.echo "Running on ${this.pipeline.env.NODE_NAME}" this.notify('PENDING', 'Build is in progress.') @@ -244,6 +247,12 @@ class OnDemandTest extends Test { def archive() { this.pipeline.echo 'On demand run. Artifacts are not stored in the cloud.' + this.pipeline.echo 'They are accessible only from Jenkins.' + this.pipeline.echo "${this.pipeline.env.BUILD_URL}/artifact/artifacts/${this.system}" + this.pipeline.archiveArtifacts artifacts: "artifacts/**", + allowEmptyArchive: true + + this.pipeline.sh "rm -fr ${this.artifactsdir}" } } From d851ff39cde6134117b9311b996f6472ce07ebb4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pavel=20B=C5=99ezina?= <pbrez...@redhat.com> Date: Tue, 29 Oct 2019 10:55:07 +0100 Subject: [PATCH 2/5] ci: allow to specify systems where tests should be run for on-demand tests --- Jenkinsfile | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Jenkinsfile b/Jenkinsfile index 44a7e9728a..9bd427e3b8 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -264,6 +264,12 @@ def notification = new Notification( on_demand ) +if (params.SYSTEMS) { + if (params.SYSTEMS != 'all') { + systems = params.SYSTEMS.split() + } +} + try { /* Setup nice build description so pull request are easy to find. */ stage('Setup description') { From dbaa247eae63cc18ef47078c6427eec5c39370f2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pavel=20B=C5=99ezina?= <pbrez...@redhat.com> Date: Mon, 4 Nov 2019 12:27:10 +0100 Subject: [PATCH 3/5] ci: add Fedora 31 --- Jenkinsfile | 1 + 1 file changed, 1 insertion(+) diff --git a/Jenkinsfile b/Jenkinsfile index 9bd427e3b8..fc43db1ae2 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -8,6 +8,7 @@ def systems = [ 'fedora28', 'fedora29', 'fedora30', + 'fedora31', 'fedora-rawhide', 'debian10', ] From dba42b32f5de05743cf76fc946a4b005ffee0334 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pavel=20B=C5=99ezina?= <pbrez...@redhat.com> Date: Wed, 6 Nov 2019 13:21:42 +0100 Subject: [PATCH 4/5] ci: install python2 on Fedora 31 and RHEL 8 so python2 bindings can be built Python2 is no longer installed by default on these systems and SSSD is not built there with python2 bindings. But we should still keep testing it. --- contrib/ci/deps.sh | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/contrib/ci/deps.sh b/contrib/ci/deps.sh index 1585dca230..c9c9fa2ea3 100644 --- a/contrib/ci/deps.sh +++ b/contrib/ci/deps.sh @@ -49,6 +49,15 @@ if [[ "$DISTRO_BRANCH" == -redhat-* ]]; then krb5-workstation ) + if [[ "$DISTRO_BRANCH" == -redhat-fedora-31* || + "$DISTRO_BRANCH" == -redhat-redhatenterprise*-8.*- || + "$DISTRO_BRANCH" == -redhat-centos-8.*- ]]; then + DEPS_LIST+=( + python2 + python2-devel + ) + fi + if [[ "$DISTRO_BRANCH" == -redhat-fedora-3[1-9]* || "$DISTRO_BRANCH" == -redhat-redhatenterprise*-8.*- || "$DISTRO_BRANCH" == -redhat-centos-8.*- ]]; then From 46daa47a674a9df66b8a414e35d6fcffad278bcc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pavel=20B=C5=99ezina?= <pbrez...@redhat.com> Date: Wed, 6 Nov 2019 13:23:01 +0100 Subject: [PATCH 5/5] ci: disable python2 bindings on Fedora 32+ Python2 is removed from Fedora 32+, see: https://fedoraproject.org/wiki/Changes/RetirePython2 --- contrib/ci/configure.sh | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/contrib/ci/configure.sh b/contrib/ci/configure.sh index e4fb92c9cf..810e82a1f5 100644 --- a/contrib/ci/configure.sh +++ b/contrib/ci/configure.sh @@ -75,6 +75,12 @@ if [[ "$DISTRO_BRANCH" == -redhat-fedora-29* || ) fi +if [[ "$DISTRO_BRANCH" == -redhat-fedora-3[2-9]* ]]; then + CONFIGURE_ARG_LIST+=( + "--without-python2-bindings" + ) +fi + declare -r -a CONFIGURE_ARG_LIST fi # _CONFIGURE_SH
_______________________________________________ sssd-devel mailing list -- sssd-devel@lists.fedorahosted.org To unsubscribe send an email to sssd-devel-le...@lists.fedorahosted.org Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedorahosted.org/archives/list/sssd-devel@lists.fedorahosted.org