Allow pinning of infrastructure package versions

Bug #1412898 reported by Jesse Pretorius
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OpenStack-Ansible
Icehouse
Fix Released
High
Jesse Pretorius
Juno
Fix Released
High
Kevin Carter

Bug Description

In order to assist with providing a supportable and predictable infrastructure, it would be useful to be able to pin infrastructure (eg: mariadb, rabbitmq, lxc, libvirt, elasticsearch, logstash) packages to specific versions.

Revision history for this message
Jesse Pretorius (jesse-pretorius) wrote :
description: updated
Changed in openstack-ansible:
status: New → In Progress
description: updated
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to os-ansible-deployment (master)

Fix proposed to branch: master
Review: https://review.openstack.org/151259

description: updated
Revision history for this message
OpenStack Infra (hudson-openstack) wrote :

Fix proposed to branch: master
Review: https://review.openstack.org/151390

description: updated
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to os-ansible-deployment (master)

Reviewed: https://review.openstack.org/151259
Committed: https://git.openstack.org/cgit/stackforge/os-ansible-deployment/commit/?id=7fcf6026b783ca079c760d3ac6ce29fbfcc8d6ad
Submitter: Jenkins
Branch: master

commit 7fcf6026b783ca079c760d3ac6ce29fbfcc8d6ad
Author: Jesse Pretorius <email address hidden>
Date: Thu Jan 29 14:15:15 2015 +0000

    Pin rabbitmq package version

    This patch implements a pinned RabbitMQ package version which is
    downloaded (by default) from the official RabbitMQ package download
    location.

    The user has the ability to use the following variables in order to
    override where the package downloads from and what version is
    downloaded:
     - rabbitmq_version: the package version
     - rabbitmq_repo_url: the base url to download from
     - rabbitmq_package_url: the full url including the base, the path and
       the package file name

    Partial-Bug: #1412898
    Change-Id: I206daf4df18aa90d975f979a656de60a06e7c8f3

Revision history for this message
OpenStack Infra (hudson-openstack) wrote :

Reviewed: https://review.openstack.org/151390
Committed: https://git.openstack.org/cgit/stackforge/os-ansible-deployment/commit/?id=f2ef204f97f0811c23169baf131546699b7a1a1b
Submitter: Jenkins
Branch: master

commit f2ef204f97f0811c23169baf131546699b7a1a1b
Author: Jesse Pretorius <email address hidden>
Date: Thu Jan 29 21:30:38 2015 +0000

    Allow the pinning of apt package versions

    This patch implements the capability to pin package versions using apt
    preferences. This prevents the unwitting upgrading of packages when
    doing general packages deployment and maintenance.

    The list of packages and versions can be overridden using user
    variables.

    For each item in 'apt_pinned_packages'
     - package: package name
     - version: package version to pin
     - priority: pin priority (default is 900, over 1000 will make apt force
       a downgrade)

    The patch also removes the usage of the LXC PPA - it was only deployed
    if the operating system was < 14.04 and the reality is that the entire
    project has not been tested on a platform < 14.04. The removal of the
    PPA is thus to reduce confusion.

    It also includes a known set of packages which are important to pin for
    a stable OpenStack deployment. The packages pinned use sources and
    version which should be available for a typical 'Long Term Support'
    time-frame.

    Closes-Bug: #1412898
    Change-Id: I747e233a2c2d7e2c30e4d653cbeaca2e3cbe249a

Changed in openstack-ansible:
status: In Progress → Fix Committed
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to os-ansible-deployment (juno)

Fix proposed to branch: juno
Review: https://review.openstack.org/152239

Revision history for this message
OpenStack Infra (hudson-openstack) wrote :

Fix proposed to branch: juno
Review: https://review.openstack.org/152250

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to os-ansible-deployment (juno)

Reviewed: https://review.openstack.org/152239
Committed: https://git.openstack.org/cgit/stackforge/os-ansible-deployment/commit/?id=2c4b464be395dd9d3d485d87d7af576f04c436ab
Submitter: Jenkins
Branch: juno

commit 2c4b464be395dd9d3d485d87d7af576f04c436ab
Author: Jesse Pretorius <email address hidden>
Date: Thu Jan 29 14:15:15 2015 +0000

    Pin rabbitmq package version

    This patch implements a pinned RabbitMQ package version which is
    downloaded (by default) from the official RabbitMQ package download
    location.

    The user has the ability to use the following variables in order to
    override where the package downloads from and what version is
    downloaded:
     - rabbitmq_version: the package version
     - rabbitmq_repo_url: the base url to download from
     - rabbitmq_package_url: the full url including the base, the path and
       the package file name

    Partial-Bug: #1412898
    Change-Id: I206daf4df18aa90d975f979a656de60a06e7c8f3
    (cherry picked from commit 7fcf6026b783ca079c760d3ac6ce29fbfcc8d6ad)

Revision history for this message
OpenStack Infra (hudson-openstack) wrote :

Reviewed: https://review.openstack.org/152250
Committed: https://git.openstack.org/cgit/stackforge/os-ansible-deployment/commit/?id=164ddb2b9a5848c237b52c218522fdaa283b7e5c
Submitter: Jenkins
Branch: juno

commit 164ddb2b9a5848c237b52c218522fdaa283b7e5c
Author: Jesse Pretorius <email address hidden>
Date: Thu Jan 29 21:30:38 2015 +0000

    Allow the pinning of apt package versions

    This patch implements the capability to pin package versions using apt
    preferences. This prevents the unwitting upgrading of packages when
    doing general packages deployment and maintenance.

    The list of packages and versions can be overridden using user
    variables.

    For each item in 'apt_pinned_packages'
     - package: package name
     - version: package version to pin
     - priority: pin priority (default is 900, over 1000 will make apt force
       a downgrade)

    The patch also removes the usage of the LXC PPA - it was only deployed
    if the operating system was < 14.04 and the reality is that the entire
    project has not been tested on a platform < 14.04. The removal of the
    PPA is thus to reduce confusion.

    It also includes a known set of packages which are important to pin for
    a stable OpenStack deployment. The packages pinned use sources and
    version which should be available for a typical 'Long Term Support'
    time-frame.

    Closes-Bug: #1412898
    Change-Id: I747e233a2c2d7e2c30e4d653cbeaca2e3cbe249a
    (cherry picked from commit f2ef204f97f0811c23169baf131546699b7a1a1b)

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to os-ansible-deployment (icehouse)

Fix proposed to branch: icehouse
Review: https://review.openstack.org/157094

Revision history for this message
OpenStack Infra (hudson-openstack) wrote :

Fix proposed to branch: icehouse
Review: https://review.openstack.org/157095

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to os-ansible-deployment (icehouse)

Reviewed: https://review.openstack.org/157094
Committed: https://git.openstack.org/cgit/stackforge/os-ansible-deployment/commit/?id=d0a60198932a7414cc3fe723581cdd07a565f0b9
Submitter: Jenkins
Branch: icehouse

commit d0a60198932a7414cc3fe723581cdd07a565f0b9
Author: Jesse Pretorius <email address hidden>
Date: Thu Jan 29 14:15:15 2015 +0000

    Pin rabbitmq package version

    This patch implements a pinned RabbitMQ package version which is
    downloaded (by default) from the official RabbitMQ package download
    location.

    The user has the ability to use the following variables in order to
    override where the package downloads from and what version is
    downloaded:
     - rabbitmq_version: the package version
     - rabbitmq_repo_url: the base url to download from
     - rabbitmq_package_url: the full url including the base, the path and
       the package file name

    Conflicts:
            rpc_deployment/inventory/group_vars/rabbit.yml
            rpc_deployment/roles/rabbit_common/tasks/main.yml

    Partial-Bug: #1412898
    Change-Id: I206daf4df18aa90d975f979a656de60a06e7c8f3
    (cherry picked from commit 7fcf6026b783ca079c760d3ac6ce29fbfcc8d6ad)

Revision history for this message
OpenStack Infra (hudson-openstack) wrote :

Reviewed: https://review.openstack.org/157095
Committed: https://git.openstack.org/cgit/stackforge/os-ansible-deployment/commit/?id=58875bfc8855b11fa20ba387e9c119673fe27528
Submitter: Jenkins
Branch: icehouse

commit 58875bfc8855b11fa20ba387e9c119673fe27528
Author: Jesse Pretorius <email address hidden>
Date: Thu Jan 29 21:30:38 2015 +0000

    Allow the pinning of apt package versions

    This patch implements the capability to pin package versions using apt
    preferences. This prevents the unwitting upgrading of packages when
    doing general packages deployment and maintenance.

    The list of packages and versions can be overridden using user
    variables.

    For each item in 'apt_pinned_packages'
     - package: package name
     - version: package version to pin
     - priority: pin priority (default is 900, over 1000 will make apt force
       a downgrade)

    The patch also removes the usage of the LXC PPA - it was only deployed
    if the operating system was < 14.04 and the reality is that the entire
    project has not been tested on a platform < 14.04. The removal of the
    PPA is thus to reduce confusion.

    It also includes a known set of packages which are important to pin for
    a stable OpenStack deployment. The packages pinned use sources and
    version which should be available for a typical 'Long Term Support'
    time-frame.

    Closes-Bug: #1412898
    Change-Id: I747e233a2c2d7e2c30e4d653cbeaca2e3cbe249a
    (cherry picked from commit f2ef204f97f0811c23169baf131546699b7a1a1b)

Revision history for this message
Jesse Pretorius (jesse-pretorius) wrote :

Patch https://review.openstack.org/152753 has removed this capability in master, we it needs to be developed for master again.

no longer affects: openstack-ansible/trunk
no longer affects: openstack-ansible
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Related blueprints

Remote bug watches

Bug watches keep track of this bug in other bug trackers.