Skip to content
Jürgen Hermann edited this page Sep 1, 2014 · 8 revisions

Using "devpi" in Jenkins

Introduction

TODO

  • handling multiple concurrent jobs with different active indexes

Helper Definitions

Add the following to your default Jenkins environment, e.g. in your slave startup script:

export DEVPI_URL="http://devpi.example.com:31415/"

devpi_use() {
    local index="${1:?You MUST provide an index name to devpi_use}"
    local devpi_cfgdir="${WORKSPACE:?Envvar WORKSPACE is undefined, not in a Jenkins job?}/.devpi"

    test -d "$devpi_cfgdir" || mkdir "$devpi_cfgdir"
    alias devpi="$(which devpi) --clientdir "\'"$devpi_cfgdir"\'
    export devpi
    export PIP_INDEX_URL=$(devpi use --urls "${DEVPI_URL%/}/$index" | grep simpleindex | tr -d ' ' | cut -f2- -d:)
    devpi use # dump status
}
Clone this wiki locally