[OpenStack-Infra] binary package install - plan of attack
Paul Belanger
pabelanger at redhat.com
Mon May 2 18:36:01 UTC 2016
On Fri, Apr 29, 2016 at 04:00:31PM -0500, Andreas Jaeger wrote:
> Paul and myself discussed this morning how to move forward with binary
> package installation - the bindep-fallback.txt/other-requirements.txt story.
>
> I wrote up what we discussed and hope I didn't forgot anything here. Please
> review and comment - and sign up if you want to help.
>
> Andreas - who will board his plane to Washington in a few minutes
>
> Goals:
> 1. bindep-fallback.txt should be minimal and handle packages that the
> majority of projects need.
> 2. Projects can use other-requirements to document their binary
> requirements.
> 3. There are no apt-get/yum install commands in jenkins/jobs/
>
> Proposal:
>
> 1. Resolve with lifeless how the other-requirements.txt file should
> look like, see:
> nova: https://review.openstack.org/#/c/200672/
> swift: https://review.openstack.org/#/c/298313/
>
> 2. Document how to use other-requirements.txt.
>
> 3. Review list of packages in bindep-fallback.txt and write up
> packages that are not in the minimal set. Review apt-get/yum
> install lists.
>
> First iteration for apt-get/yum install (just jobs/macros):
> * npm-install
> * xvfb-install
> * firefox-install
> * chrome-install
> * diskimage-builder-install
> * puppet-prepare-node - this might be tricky since it removes
> packages as well, so might be the only exception.
> * chef-bundler-prep
> * elasticsearch-install
> * gate-anvil-rpms-dsvm-{node}
> * periodic-package-afs-centos7 - might need to stay as is.
>
> First iteration of extra packages to remove for
> bindep-fallback.txt (let's not discuss specific packages here yet
> but instead the broader principle (see goal 1 and how to refine that
> one using this first proposal):
> * asciidoc
> * docbook-style-xsl [platform:rpm]
> * docbook-xml [platform:dpkg]
> * docbook-xsl [platform:dpkg]
> * docbook5-schemas [platform:rpm]
> * docbook5-style-xsl [platform:rpm]
> * docbook5-xml [platform:dpkg]
> * firefox [!platform:debian]
> * fonts-nanum [platform:dpkg]
> * fonts-takao [platform:dpkg]
> * iceweasel [platform:debian]
> * liberasurecode-dev [platform:dpkg]
> * liberasurecode-devel [platform:rpm]
> * libevent-dev [platform:dpkg]
> * libevent-devel [platform:rpm]
> * libffi-dev [platform:dpkg]
> * libffi-devel [platform:rpm]
> * libjerasure-dev [platform:ubuntu-trusty]
> * libjpeg-dev [platform:dpkg]
> * libjpeg-turbo-devel [platform:rpm]
> * libldap2-dev [platform:dpkg]
> * libpcap-dev [platform:dpkg]
> * libpcap-devel [platform:rpm]
> * libpq-dev [platform:dpkg]
> * librrd-dev [platform:dpkg]
> * libvirt-dev [platform:dpkg]
> * libvirt-devel [platform:rpm]
> * libvirt-python [platform:rpm]
> * libxml2-dev [platform:dpkg]
> * libxml2-devel [platform:rpm]
> * libxml2-utils [platform:dpkg]
> * libxslt-devel [platform:rpm]
> * libxslt1-dev [platform:dpkg]
> * mariadb [platform:rpm]
> * mariadb-devel [platform:rpm]
> * mariadb-server [platform:rpm]
> * memcached
> * mongodb [platform:dpkg]
> * mongodb-server [platform:rpm]
> * mysql-server [platform:dpkg]
> * php-cli [platform:rpm]
> * php5-cli [platform:dpkg]
> * php5-mcrypt [platform:dpkg]
> * postgresql
> * postgresql-devel [platform:rpm]
> * postgresql-server [platform:rpm]
> * python-zmq
> * redis [platform:rpm]
> * redis-server [platform:dpkg]
> * rrdtool-devel [platform:rpm]
> * swig
> * xorg-x11-server-Xvfb [platform:rpm]
> * xsltproc [platform:dpkg]
> * xvfb [platform:dpkg]
> * zookeeperd [platform:dpkg]
>
>
> 4. Send email to openstack-dev to inform projects that
> other-requirements.txt can be used - and in which cases it has to
> be used. Explain:
> * that we will remove all apt-get/yum install usage from
> jenkins/jobs by specific date X.
> * infra will send other-requirements.txt files to projects with
> current default package list to projects that currently use
> apt-get/yum install. Projects should merge these and then remove
> packages that they do not need. If this is not merged by day X,
> the projects will break.
> * which packages will be removed from bindep-fallback.txt
>
> 5. Review extra package installs. Send other-requirements.txt changes
> for projects who's jobs are affected.
>
> 6. Review how integration jobs can be done. For example
> gate-bandit-integration-{target-project} in jenkins/jobs/bandit.yaml
> could be changed to:
> 1) checkout bandit and the integration repository
> 2) Install other-requirements/bindep-fallback for *both*
> repositories. In this case installing packages for bandit is
> enough since tox is run from bandit. But for others it might be
> different.
> 3) Run tests
>
> 7. By day X: Remove all extra package installs from jenkins/ and
> remove these packages from bindep-fallback.txt.
>
> 8. Party!
>
++ I think this is a great plan for moving forward. Once we address #1 in the
list, I think we can start making good progress on our bindep migration for all
projects.
> --
> Andreas Jaeger aj@{suse.com,opensuse.org} Twitter: jaegerandi
> SUSE LINUX GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
> GF: Felix Imendörffer, Jane Smithard, Graham Norton,
> HRB 21284 (AG Nürnberg)
> GPG fingerprint = 93A3 365E CE47 B889 DF7F FED1 389A 563C C272 A126
>
>
> _______________________________________________
> OpenStack-Infra mailing list
> OpenStack-Infra at lists.openstack.org
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-infra
More information about the OpenStack-Infra
mailing list