Page MenuHomeSoftware Heritage

jenkins-job: Declare explicitely the python_module for each swh project
ClosedPublic

Authored by ardumont on Oct 20 2020, 6:05 PM.

Details

Summary

This allows to deal with naming discrepancies in debian/python/archive naming
as the swh-icinga-plugins demonstrates.

Its current build fails because of naming discrepancy, the:

  • repository is named swh-icinga-plugins
  • debian package is named python3-swh.icingaplugin
  • python module is named swh.icinga-plugins
  • archive pushed for the python module is name swh.icinga_plugins

So this defines an explicit extra entry name python_module used to start the
debian package build (out of the pypi module artifact holding that name).

This fixes the build [1]

[1] https://jenkins.softwareheritage.org/job/debian/job/packages/job/DICP/job/update-for-release/3

Related to T2726

[1]

commit df174ce493d155929c70c657809d548ffc27557b (origin/pristine-tar, pristine-tar)
Author: Antoine R. Dumont (@ardumont) <antoine.romain.dumont@gmail.com>
Date:   Mon Jan 20 18:41:24 2020 +0100

    pristine-tar data for swh.icingaplugins_0.0.2.orig.tar.gz

[2] https://jenkins.softwareheritage.org/job/debian/job/packages/job/DICP/job/update-for-release/3/console

[3] https://jenkins.softwareheritage.org/job/debian/job/packages/job/DICP/job/update-for-release/6/console

Test Plan

tox is happy

$ tox | grep "def python_module ="
def python_module = 'swh.indexer'
def python_module = 'swh.core'
def python_module = 'swh.deposit'
def python_module = 'swh.fuse'
def python_module = 'swh.graph'
def python_module = 'swh.icinga_plugins'
def python_module = 'swh.journal'
def python_module = 'swh.loader.core'
def python_module = 'swh.loader.git'
def python_module = 'swh.loader.mercurial'
def python_module = 'swh.loader.svn'
def python_module = 'swh.lister'
def python_module = 'swh.model'
def python_module = 'swh.objstorage'
def python_module = 'swh.objstorage.replayer'
def python_module = 'swh.scheduler'
def python_module = 'swh.search'
def python_module = 'swh.storage'
def python_module = 'swh.scanner'
def python_module = 'swh.vault'
def python_module = 'swh.web'
def python_module = 'swh.web.client'

Diff Detail

Repository
rCJSWH Jenkins jobs
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

ardumont edited the summary of this revision. (Show Details)

Rework commit message and fix the python_module entry

ardumont planned changes to this revision.EditedOct 21 2020, 9:58 AM
ardumont added a subscriber: vsellier.

mmm, tox is no longer happy with my latest change, it appears [1]

stand-bye for now (the build is still ok though, as long as no new commit installs new stuff that is ¯\_(ツ)_/¯)

Note:
the analysis about the name mess remains though... so feel free to laugh ;)

[1] P829 (thanks @vsellier)

ardumont edited the summary of this revision. (Show Details)
  • This now declares each python_module which can be different from the rest.
  • This fixes the build
ardumont retitled this revision from Work around the naming issue on swh-icinga-plugin repository to jenkins-job: Declare explicitely the python_module for each swh project.
ardumont edited the summary of this revision. (Show Details)
anlambert added a subscriber: anlambert.

Looks good to me.

This revision is now accepted and ready to land.Oct 21 2020, 2:15 PM