system-config/modules/openstack_project/manifests/pypi_slave.pp
Jeremy Stanley b6c833b82a Determine wheel names for PyPI uploading
* .../files/slave_scripts/pypi-extract-name.py: Add --tarball and
--wheel switches to return the proper corresponding name versions,
since they differ in some cases in the presence of non-alphanumeric
characters. Make --tarball the default for backward-compatibility.
This adds a dependency on the wheel module.

* .../files/slave_scripts/pypi-extract-universal.py: Use the correct
py2 indicator for non-universal wheel types rather than the old py27
fallback.

* .../files/slave_scripts/pypi-tarball-upload.sh: Request the
tarball version of the package name prefix.

* .../files/slave_scripts/pypi-wheel-upload.sh: Request the wheel
version of the package name prefix, and also correct the
version/type separator character.

* .../manifests/pypi_slave.pp: Always install the latest versions of
the wheel and twine packages.

Change-Id: I2ae724f1f4d0a88b602e3581a0b06b999fb4833c
2014-06-06 14:48:32 +00:00

73 lines
1.9 KiB
Puppet

# Copyright 2012 Hewlett-Packard Development Company, L.P.
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
# Class to install dependencies for uploading python packages to pypi and
# maven repositories
#
class openstack_project::pypi_slave (
$pypi_password,
$jenkins_ssh_public_key,
$pypi_username = 'openstackci',
$jenkinsci_username,
$jenkinsci_password,
$mavencentral_username,
$mavencentral_password
) {
class { 'openstack_project::slave':
ssh_key => $jenkins_ssh_public_key,
}
include pip
package { 'twine':
ensure => latest,
provider => pip,
require => Class['pip'],
}
package { 'wheel':
ensure => latest,
provider => pip,
require => Class['pip'],
}
file { '/home/jenkins/.pypirc':
ensure => present,
owner => 'jenkins',
group => 'jenkins',
mode => '0600',
content => template('openstack_project/pypirc.erb'),
require => File['/home/jenkins'],
}
file { '/home/jenkins/.jenkinsci-curl':
ensure => present,
owner => 'jenkins',
group => 'jenkins',
mode => '0600',
content => template('openstack_project/jenkinsci-curl.erb'),
require => File['/home/jenkins'],
}
file { '/home/jenkins/.mavencentral-curl':
ensure => present,
owner => 'jenkins',
group => 'jenkins',
mode => '0600',
content => template('openstack_project/mavencentral-curl.erb'),
require => File['/home/jenkins'],
}
}