diff --git a/.gitreview b/.gitreview index c81ce3690d..9f08a686fe 100644 --- a/.gitreview +++ b/.gitreview @@ -1,4 +1,4 @@ [gerrit] host=review.openstack.org port=29418 -project=openstack/openstack-ci-puppet.git +project=openstack-infra/config.git diff --git a/README.md b/README.md index 2e84183db6..1225b9f14c 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@ These are a set of puppet manifests and modules that are currently being -used to manage the OpenStack CI infrastructure. +used to manage the OpenStack Project infrastructure. The main entry point is in manifests/site.py. diff --git a/doc/source/conf.py b/doc/source/conf.py index f5662cbf29..f64aa49a73 100644 --- a/doc/source/conf.py +++ b/doc/source/conf.py @@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # -# OpenStack CI documentation build configuration file, created by -# sphinx-quickstart on Mon Jul 18 13:42:23 2011. +# OpenStack Project Infrastructure documentation build configuration file, +# created by sphinx-quickstart on Mon Jul 18 13:42:23 2011. # # This file is execfile()d with the current directory set to its containing # dir. @@ -41,8 +41,8 @@ source_suffix = '.rst' master_doc = 'index' # General information about the project. -project = u'OpenStack CI' -copyright = u'2011, Monty Taylor, James Blair and Andrew Hutchings' +project = u'OpenStack Project Infrastructure' +copyright = u'2012, OpenStack Infastructure Team - see git repo for details' # The version info for the project you're documenting, acts as replacement for # |version| and |release|, also used in various other places throughout the @@ -169,7 +169,7 @@ html_static_path = ['_static'] #html_file_suffix = None # Output file base name for HTML help builder. -htmlhelp_basename = 'OpenStackCIdoc' +htmlhelp_basename = 'OpenStackInfradoc' # -- Options for LaTeX output ------------------------------------------------- @@ -184,8 +184,8 @@ htmlhelp_basename = 'OpenStackCIdoc' # (source start file, target name, title, author, documentclass # [howto/manual]). latex_documents = [ - ('index', 'OpenStackCI.tex', u'OpenStack CI Documentation', - u'Monty Taylor and James Blair', 'manual'), + ('index', 'OpenStackInfra.tex', u'OpenStack Infrastructure Documentation', + u'OpenStack Infrastructure Team', 'manual'), ] # The name of an image file (relative to this directory) to place at the top of @@ -217,6 +217,6 @@ latex_documents = [ # One entry per manual page. List of tuples # (source start file, name, description, authors, manual section). man_pages = [ - ('index', 'openstackci', u'OpenStack CI Documentation', - [u'Monty Taylor, James Blair and Andrew Hutchings'], 1) + ('index', 'openstackinfra', u'OpenStack Infrastructure Documentation', + [u'OpenStack Infrastructure Team'], 1) ] diff --git a/doc/source/gerrit.rst b/doc/source/gerrit.rst index e2fa99fe50..b4f6a23d77 100644 --- a/doc/source/gerrit.rst +++ b/doc/source/gerrit.rst @@ -41,8 +41,8 @@ host for use by the OpenStack project. .. code-block:: bash sudo apt-get install puppet git openjdk-6-jre-headless mysql-server - git clone git://github.com/openstack/openstack-ci-puppet.git - cd openstack-ci-puppet/ + git clone git://github.com/openstack-infra/config.git + cd config/ sudo bash run_puppet.sh Install MySQL @@ -462,59 +462,18 @@ onto the gerrit servers. This script follows two rules: If your review gets touched by either of these rules it is possible to unabandon a review on the gerrit web interface. -Launchpad Sync -============== - -The launchpad user sync process consists of two scripts which are in -openstack/openstack-ci on github: sync_launchpad_gerrit.py and -insert_gerrit.py. - -Both scripts should be run as gerrit2 on review.openstack.org - -sync_launchpad_users.py runs and creates a python pickle file, users.pickle, -with all of the user and group information. This is a long process. (12 -minutes) - -insert_gerrit.py reads the pickle file and applies it to the MySQL database. -The gerrit caches must then be flushed. - -Depends -------- -:: - - apt-get install python-mysqldb python-openid python-launchpadlib - -Keys ----- - -The key for the launchpad sync user is in ~/.ssh/launchpad_rsa. Connecting -to Launchpad requires oauth authentication - so the first time -sync_launchpad_gerrit.py is run, it will display a URL. Open this URL in a -browser and log in to launchpad as the hudson-openstack user. Subsequent -runs will run with cached credentials. - -Running -------- -:: - - cd openstack-ci - git pull - python sync_launchpad_gerrit.py - python insert_gerrit.py - ssh -i /home/gerrit2/.ssh/launchpadsync_rsa -p29418 review.openstack.org gerrit flush-caches - Gerrit IRC Bot ============== Installation ------------ -Ensure there is an up-to-date checkout of openstack-ci in ~gerrit2. +Ensure there is an up-to-date checkout of openstack-infra/config in ~gerrit2. :: apt-get install python-irclib python-daemon python-yaml - cp ~gerrit2/openstack-ci/gerritbot.init /etc/init.d + cp ~gerrit2/openstack-infra/config/gerritbot.init /etc/init.d chmod a+x /etc/init.d/gerritbot update-rc.d gerritbot defaults su - gerrit2 @@ -560,7 +519,7 @@ them are applied. Installation ------------ -Ensure an up-to-date checkout of openstack-ci is in ~gerrit2. +Ensure an up-to-date checkout of openstack-infra/config is in ~gerrit2. :: @@ -650,7 +609,7 @@ Creating a new Gerrit Project with Puppet ========================================= Gerrit project creation is now managed through changes to the -openstack-ci-puppet repository. The old manual processes are documented +openstack-infra/config repository. The old manual processes are documented below as the processes are still valid and documentation of them may still be useful when dealing with corner cases. That said, you should use this method whenever possible. @@ -665,7 +624,7 @@ also want to configure Zuul and Jenkins to run tests on the new project. The details for that process are in the next section. Gerrit projects are configured in the -``openstack-ci-puppet/modules/openstack_project/templates/review.projects.yaml.erb``. +``openstack-infra/config:modules/openstack_project/templates/review.projects.yaml.erb``. file. This file contains two sections, the first is a set of default config values that each project can override, and the second is a list of projects (each may contain their own overrides). @@ -734,7 +693,7 @@ a single project you will want to do the following: mergeContent = true #. Add a project entry for the project in - ``openstack-ci-puppet/modules/openstack_project/templates/review.projects.yaml.erb``.:: + ``openstack-infra/config:modules/openstack_project/templates/review.projects.yaml.erb``.:: - project: openstack/project-name acl_config: /home/gerrit2/acls/project-name.config @@ -756,7 +715,7 @@ Have Zuul Monitor a Gerrit Project ===================================== Define the required jenkins jobs for this project using the Jenkins Job -Builder. Edit openstack/openstack-ci-puppet:modules/openstack_project/files/jenkins_jobs/config/projects.yaml +Builder. Edit openstack-infra/config:modules/openstack_project/files/jenkins_jobs/config/projects.yaml and add the desired jobs. Most projects will use the python jobs template. A minimum config:: @@ -787,7 +746,7 @@ Full example config for nova:: - openstack-publish-jobs - gate-{name}-pylint -Edit openstack/openstack-ci-puppet:modules/openstack_project/files/zuul/layout.yaml +Edit openstack-infra/config:modules/openstack_project/files/zuul/layout.yaml and add the required jenkins jobs to this project. At a minimum you will probably need the gate-PROJECT-merge test in the check and gate queues. @@ -867,7 +826,7 @@ Pull requests can not be disabled for a project in Github, so instead we have a script that runs from cron to close any open pull requests with instructions to use Gerrit. -* Edit openstack/openstack-ci-puppet:modules/openstack_project/templates/review.projects.yaml.erb +* Edit openstack-infra/config:modules/openstack_project/templates/review.projects.yaml.erb and add the project to the list of projects in the yaml file @@ -911,14 +870,8 @@ inside of git in gerrit. Check out the branch from git:: There will be two interesting files, `groups` and `project.config`. `groups` contains UUIDs and names of groups that will be referenced in -`project.config`. There is a helper script in the openstack-ci repo called -`get_group_uuid.py` which will fetch the UUID for a given group. For -$PROJECT-core and $PROJECT-drivers:: - - openstack-ci/gerrit/get_group_uuid.py $GROUP_NAME - -And make entries in `groups` for each one of them. Next, edit -`project.config` to look like:: +`project.config`. UUIDs can be found on the group page in gerrit. +Next, edit `project.config` to look like:: [access "refs/*"] owner = group Administrators diff --git a/doc/source/index.rst b/doc/source/index.rst index 0b4f811b67..5fb59da68f 100644 --- a/doc/source/index.rst +++ b/doc/source/index.rst @@ -1,17 +1,17 @@ -.. OpenStack CI documentation master file, created by +.. OpenStack Infrastructure documentation master file, created by sphinx-quickstart on Mon Jul 18 13:42:23 2011. You can adapt this file completely to your liking, but it should at least contain the root `toctree` directive. -OpenStack Continuous Integration +OpenStack Project Infrastructure ================================ This documentation covers the installation and maintenance of the -Continuous Integration (CI) infrastructure used by OpenStack. It +project infrastructure used by OpenStack. It may be of interest to people who may want to help develop this infrastructure or integrate their tools into it. Some instructions -may be useful to other projects that want to set up similar CI -systems. +may be useful to other projects that want to set up similar infrastrucutre +systems for their developers. OpenStack developers or users do not need to read this documentation. Instead, see http://wiki.openstack.org/ to learn how contribute to or diff --git a/doc/source/jenkins.rst b/doc/source/jenkins.rst index d0f9599fe9..1e24889290 100644 --- a/doc/source/jenkins.rst +++ b/doc/source/jenkins.rst @@ -53,305 +53,7 @@ Currently OpenStack integration testing is performed by the devstack gate test framework. This framework runs the devstack exercises and Tempest smoketests against a devstack install on single use cloud servers. The devstack gate source can be found on -`Github `_ and the -`Readme `_ +`Github `_ and the +`Readme `_ describes the process of using devstack gate to run your own devstack based tests. - -Rackspace Bare-Metal Testing Cluster -==================================== - -The Rackspace Bare-Metal Testing Cluster is no longer in place and is -not used for OpenStack integration testing. The following documentation -is retained as it is potentially useful should you want to do something -similar and it is historically significant. - -The CI team mantains a cluster of machines supplied by Rackspace to -perform bare-metal deployment and testing of OpenStack as a whole. -This installation is intended as a reference implementation of just -one of many possible testing platforms, all of which can be integrated -with the OpenStack Jenkins system. This is a cluster of several -physical machines meaning the test environment has access to all of -the native processor features, and real-world networking, including -tagged VLANs. - -Each time the trunk repo is updated, a Jenkins job will deploy an -OpenStack cluster using devstack and then run the openstack-test-rax -test suite against the cluster. - -Deployment and Testing Process ------------------------------- - -The cluster deployment is divided into two phases: base operating -system installation, and OpenStack installation. Because the -operating system install takes considerable time (15 to 30 minutes), -has external network resource dependencies (the distribution mirror), -and has no bearing on the outcome of the OpenStack tests themselves, -the process used here effectively snapshots the machines immediately -after the base OS install and before OpenStack is installed. LVM -snapshots and kexec are used to immediately return the cluster to a -newly installed state without incurring the additional time it would -take to install from scratch. The Jenkins testing job invokes the -process starting at :ref:`rax_openstack_install`. - -Installation Server Configuration -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -The CI team runs the Ubuntu Orchestra server (based on cobbler) on our -Jenkins slave node to manage the OS installation on the test machines. -The configuration for the Orchestra server is kept in the CI team's -puppet modules. If you want to set up your own system, Orchestra is -not required, any system capable of performing the following steps is -suitable. However, if you want to stand up a test system as quickly -and simply as possible, you may find it easiest to base your system on -the one the CI team uses. You may use the puppet modules yourself, or -follow the instructions below. - -The CI team's Orchestra configuration module is at: - -https://github.com/openstack/openstack-ci-puppet/tree/master/modules/orchestra - -Install Orchestra -""""""""""""""""" - -Install Ubuntu 11.10 (Oneiric) and Orchestra:: - - sudo apt-get install ubuntu-orchestra-server ipmitool - -The install process will prompt you to enter a password for Cobbler. -Have one ready and keep it in a safe place. The procedure here will -not use it, but if you later want to use the Cobbler web interface, -you will need it. - -Configure Orchestra -""""""""""""""""""" - -Install the following files on the Orchestra server so that it deploys -machines with our LVM/kexec test framework. - -We update the dnsmasq.conf cobbler template to add -"dhcp-ignore=tag:!known", and some site-specific network -configuration:: - - wget https://raw.github.com/openstack/openstack-ci-puppet/master/modules/orchestra/files/dnsmasq.template \ - -O /etc/cobbler/dnsmasq.template - -Our servers need a kernel module blacklisted in order to boot -correctly. If you don't need to blacklist any modules, you should -either create an empty file here, or remove the reference to this file -from the preseed file later:: - - wget https://raw.github.com/openstack/openstack-ci-puppet/master/modules/orchestra/files/openstack_module_blacklist \ - -O /var/lib/cobbler/snippets/openstack_module_blacklist - -This cobbler snippet uses cloud-init to set up the LVM/kexec -environment and configures TCP syslogging to the installation -server/Jenkins slave:: - - wget https://raw.github.com/openstack/openstack-ci-puppet/master/modules/orchestra/files/openstack_cloud_init \ - -O /var/lib/cobbler/snippets/openstack_cloud_init - -This snippet holds the mysql root password that will be configured at -install time. It's currently a static string, but you could -dynamically write this file, or simply replace it with something more -secure:: - - wget https://raw.github.com/openstack/openstack-ci-puppet/master/modules/orchestra/files/openstack_mysql_password \ - -O /var/lib/cobbler/snippets/openstack_mysql_password - -This preseed file manages the OS install on the test nodes. It -includes the snippets installed above:: - - wget https://raw.github.com/openstack/openstack-ci-puppet/master/modules/orchestra/files/openstack-test.preseed \ - -O /var/lib/cobbler/kickstarts/openstack-test.preseed - -The following sudoers configuration is needed to allow Jenkins to -control cobbler, remove syslog files from the test hosts before -starting new tests, and restart rsyslog:: - - wget https://raw.github.com/openstack/openstack-ci-puppet/master/modules/orchestra/files/orchestra-jenkins-sudoers -O /etc/sudoers.d/orchestra-jenkins - -Replace the Orchestra rsyslog config file with a simpler one that logs -all information from remote hosts in one file per host:: - - wget https://raw.github.com/openstack/openstack-ci-puppet/master/modules/orchestra/files/99-orchestra.conf -O /etc/rsyslog.d/99-orchestra.conf - -Make sure the syslog directories exist and restart rsyslog:: - - mkdir -p /var/log/orchestra/rsyslog/ - chown -R syslog.syslog /var/log/orchestra/ - restart rsyslog - -Add an "OpenStack Test" system profile to cobbler that uses the -preseed file above:: - - cobbler profile add \ - --name=natty-x86_64-ostest \ - --parent=natty-x86_64 \ - --kickstart=/var/lib/cobbler/kickstarts/openstack-test.preseed \ - --kopts="priority=critical locale=en_US" - -Add each of your systems to cobbler with a command similar to this -(you may need different kernel options):: - - cobbler system add \ - --name=baremetal1 \ - --hostname=baremetal1 \ - --profile=natty-x86_64-ostest \ - --mac=00:11:22:33:44:55 \ - --power-type=ipmitool \ - --power-user=IPMI_USERNAME \ - --power-pass=IPMI_PASS \ - --power-address=IPMI_IP_ADDR \ - --ip-address=SYSTEM_IP_ADDRESS \ - --subnet=SYSTEM_SUBNET \ - --kopts="netcfg/choose_interface=auto netcfg/dhcp_timeout=60 auto=true priority=critical" - -When complete, have cobbler write out its configuration files:: - - cobbler sync - -Set Up Jenkins Jobs -""""""""""""""""""" - -We have Jenkins jobs to handle all of the tasks after the initial -Orchestra configuration so that we can easily run them at any time. -This includes the OS installation on the test nodes, even though we -don't run that often because the state is preserved in an LVM -snapshot, we may want to change the configuration used and make a new -snapshot. In that case we just need to trigger the Jenkins job again. - -The Jenkins job that kicks off the operating system installation calls -the "baremetal-os-install.sh" script from the openstack-ci repo: - - https://github.com/openstack/openstack-ci/blob/master/slave_scripts/baremetal-os-install.sh - -That script instructs cobbler to install the OS on each of the test -nodes. - -To speed up the devstack installation and avoid excessive traffic to -the pypi server, we build a PIP package cache on the installation -server. That is also an infrequent task that we configure as a -jenkins job. That calls: - - https://github.com/openstack/openstack-ci/blob/master/slave_scripts/update-pip-cache.sh - -That builds a PIP package cache that the test script later copies to -the test servers for use by devstack. - -Run those two jobs, and once complete, the test nodes are ready to go. - -This is the end of the operating system installation, and the system -is currently in the pristine state that will be used by the test -procedure (which is stored in the LVM volume "orig_root"). - -.. _rax_openstack_install: - -OpenStack Installation -~~~~~~~~~~~~~~~~~~~~~~ - -When the deployment and integration test job runs, it does the -following, each time starting from the pristine state arrived at the -end of the previous section. - -Reset the Test Nodes -"""""""""""""""""""" - -The Jenkins deployment and test job first runs the deployment script: - - https://github.com/openstack/openstack-ci/blob/master/slave_scripts/baremetal-deploy.sh - -Which invokes the following script on each host to reset it to the -pristine state: - - https://github.com/openstack/openstack-ci/blob/master/slave_scripts/lvm-kexec-reset.sh - -Because kexec is in use, resetting the environment and rebooting into -the pristine state takes only about 3 seconds. - -The deployment script then removes the syslog files from the previous -run and restarts rsyslog to re-open them. Once the first test host -finishes booting and brings up its network, OpenStack installation -starts. - -Run devstack on the Test Nodes -"""""""""""""""""""""""""""""" - -Devstack's build_bm_multi script is run, which invokes devstack on -each of the test nodes. First on the "head" node which runs all of -the OpenStack services for the remaining "compute" nodes. - -Run Test Suite -"""""""""""""" - -Once devstack is complete, the test suite is run. All logs from the -test nodes should be sent via syslog to the Jenkins slave, and at the -end of the test, the logs are archived with the Job for developers to -inspect in case of problems. - -Cluster Configuration ---------------------- - -Here are the configuration parameters of the CI team's test cluster. -The cluster is currently divided into three mini-clusters so that -independent Jenkins jobs can run in parallel on the different -clusters. - -VLANs -~~~~~ - -+----+--------------------------------+ -|VLAN| Description | -+====+================================+ -|90 | Native VLAN | -+----+--------------------------------+ -|91 | Internal cluster communication | -| | network: 192.168.91.0/24 | -+----+--------------------------------+ -|92 | Public Internet (fake) | -| | network: 192.168.92.0/24 | -+----+--------------------------------+ - -Servers -~~~~~~~ -The servers are located on the Rackspace network, only accessible via -VPN. - -+-----------+--------------+---------------+ -| Server | Primary IP | Management IP | -+===========+==============+===============+ -|deploy-rax | 10.14.247.36 | 10.14.247.46 | -+-----------+--------------+---------------+ -|baremetal1 | 10.14.247.37 | 10.14.247.47 | -+-----------+--------------+---------------+ -|baremetal2 | 10.14.247.38 | 10.14.247.48 | -+-----------+--------------+---------------+ -|baremetal3 | 10.14.247.39 | 10.14.247.49 | -+-----------+--------------+---------------+ -|baremetal4 | 10.14.247.40 | 10.14.247.50 | -+-----------+--------------+---------------+ -|baremetal5 | 10.14.247.41 | 10.14.247.51 | -+-----------+--------------+---------------+ -|baremetal6 | 10.14.247.42 | 10.14.247.52 | -+-----------+--------------+---------------+ -|baremetal7 | 10.14.247.43 | 10.14.247.53 | -+-----------+--------------+---------------+ -|baremetal8 | 10.14.247.44 | 10.14.247.54 | -+-----------+--------------+---------------+ -|baremetal9 | 10.14.247.45 | 10.14.247.55 | -+-----------+--------------+---------------+ - -deploy-rax - The deployment server and Jenkins slave. It deploys the servers - using Orchestra and Devstack, and runs the test framework. It - should not run any OpenStack components, but we can install - libraries or anything else needed to run tests. - -baremetal1, baremetal4, baremetal7 - Configured as "head" nodes to run nova, mysql, and glance. Each one - is the head node of a three node cluster including the two compute - nodes following it - -baremetal2-3, baremtal5-6, baremetal8-9 - Configured as compute nodes for each of the three mini-clusters. - diff --git a/doc/source/jenkins_jobs.rst b/doc/source/jenkins_jobs.rst index 0064a12303..3b127ba693 100644 --- a/doc/source/jenkins_jobs.rst +++ b/doc/source/jenkins_jobs.rst @@ -7,17 +7,17 @@ Overview In order to make the process of managing hundreds of Jenkins Jobs easier a Python based utility was designed to take YAML based configurations and convert those into jobs that are injected into Jenkins. The source for this utility can -be found on `github `_ and +be found on `github `_ and it comes with its own `documentation `_. -The documentation below describes how the OpenStack CI team uses the Jenkins -Job Builder in their environment. +The documentation below describes how the OpenStack Infrastructure team uses +the Jenkins Job Builder in their environment. Configuring Projects -------------------- -The YAML scripts to make this work are stored in the ``openstack-ci-puppet`` +The YAML scripts to make this work are stored in the ``openstack-infra/config`` repository in the ``modules/openstack_project/files/jenkins_job_builder/config/`` directory. In this directory you can have four different types of yaml config files: @@ -49,8 +49,8 @@ Example defaults config:

If you would like to make changes to this job, please see: - - https://github.com/openstack/openstack-ci-puppet + + https://github.com/openstack-infra/config In modules/openstack_project/files/jenkins_jobs @@ -252,7 +252,7 @@ The contents of this erb are: url=<%= url %> The values for user and url are hardcoded in the Puppet repo in -`modules/openstack_project/manifests/jenkins.pp `_, +`modules/openstack_project/manifests/jenkins.pp `_, but the password is stored in hiera. Make sure you have it defined as ``jenkins_jobs_password`` in the hiera DB. diff --git a/doc/source/meetbot.rst b/doc/source/meetbot.rst index 9322a5581b..59b3110efb 100644 --- a/doc/source/meetbot.rst +++ b/doc/source/meetbot.rst @@ -4,7 +4,7 @@ Meetbot Overview -------- -The OpenStack CI team run a slightly modified +The OpenStack Infrastructure team run a slightly modified `Meetbot `_ to log IRC channel activity and meeting minutes. Meetbot is a plugin for `Supybot `_ which adds meeting @@ -21,8 +21,8 @@ get you going, but there are other goodies in ``doc/``. Once you have Supybot installed you will need to configure a bot. The ``supybot-wizard`` command can get you started with a basic config, or you can -have Puppet do the heavy lifting. The OpenStack CI Meetbot Puppet module creates -a configuration and documentation for that module is at +have Puppet do the heavy lifting. The OpenStack Infrastructure Meetbot Puppet +module creates a configuration and documentation for that module is at :ref:`Meetbot_Puppet_Module`. One important config setting is ``supybot.reply.whenAddressedBy.chars``, which @@ -33,20 +33,21 @@ if you don't want a prefix character). Meetbot ------- -The OpenStack CI Meetbot fork can be found at -https://github.com/openstack-ci/meetbot. Manual installation of the Meetbot +The OpenStack Infrastructure Meetbot fork can be found at +https://github.com/openstack-infra/meetbot. Manual installation of the Meetbot plugin is straightforward and documented in that repository's README. -OpenStack CI installs and configures Meetbot through Puppet. Documentation for -the Puppet module that does that can be found at :ref:`Meetbot_Puppet_Module`. +OpenStack Infrastructure installs and configures Meetbot through Puppet. +Documentation for the Puppet module that does that can be found at +:ref:`Meetbot_Puppet_Module`. Voting ^^^^^^ -The OpenStack CI Meetbot fork adds simple voting features. After a meeting has -been started a meeting chair can begin a voting block with the ``#startvote`` -command. The command takes two arguments, a question posed to voters (ending -with a ``?``), and the valid voting options. If the second argument is missing -the default options are "Yes" and "No". For example: +The OpenStack Infrastructure Meetbot fork adds simple voting features. After +a meeting has been started a meeting chair can begin a voting block with the +``#startvote`` command. The command takes two arguments, a question posed to +voters (ending with a ``?``), and the valid voting options. If the second +argument is missing the default options are "Yes" and "No". For example: ``#startvote Should we vote now? Yes, No, Maybe`` diff --git a/doc/source/puppet.rst b/doc/source/puppet.rst index 1f2c3f179c..3c4ebadc8b 100644 --- a/doc/source/puppet.rst +++ b/doc/source/puppet.rst @@ -20,12 +20,12 @@ ship the data to the clients. To install this: sudo apt-get install puppet puppetmaster-passenger Files for puppet master are stored in a git repo clone at -``/opt/openstack-ci-puppet``. We have a ``root`` cron job that +``/opt/openstack-infra/config``. We have a ``root`` cron job that automatically populates these from our puppet git repository as follows: .. code-block:: bash - \*/15 * * * * sleep $((RANDOM\%600)) && cd /opt/openstack-ci-puppet && /usr/bin/git pull -q + \*/15 * * * * sleep $((RANDOM\%600)) && cd /opt/openstack-infra/config && /usr/bin/git pull -q The ``/etc/puppet/puppet.conf`` file then needs updating to point to the manifest and modules as follows: @@ -37,8 +37,8 @@ manifest and modules as follows: # and can safely be removed if webrick is used. ssl_client_header = SSL_CLIENT_S_DN ssl_client_verify_header = SSL_CLIENT_VERIFY - manifestdir=/opt/openstack-ci-puppet/manifests - modulepath=/opt/openstack-ci-puppet/modules + manifestdir=/opt/openstack-infra/config/manifests + modulepath=/opt/openstack-infra/config/modules manifest=$manifestdir/site.pp Hiera @@ -72,9 +72,9 @@ which tells is where to find subsequent configuration files. :datadir: '/etc/puppet/hieradata/%{environment}' This setup supports multiple configuration. The two sets of environments -that OpenStack CI users are ``production`` and ``development``. ``production`` -is the default is and the environment used when nothing else is specified. -Then the configuration needs to be placed into common.yaml in +that OpenStack Infrastructure uses are ``production`` and ``development``. +``production`` is the default is and the environment used when nothing else +is specified. Then the configuration needs to be placed into common.yaml in ``/etc/puppet/hieradata/production`` and ``/etc/puppet/hieradata/development``. The values are simple key-value pairs in yaml format. diff --git a/doc/source/puppet_modules.rst b/doc/source/puppet_modules.rst index ad2ba6e107..efad3a7eca 100644 --- a/doc/source/puppet_modules.rst +++ b/doc/source/puppet_modules.rst @@ -6,13 +6,13 @@ Overview Much of the OpenStack project infrastructure is deployed and managed using puppet. -The OpenStack CI team manage a number of custom puppet modules outlined in this -document. +The OpenStack Infrastructure team manages a number of custom puppet modules +outlined in this document. Doc Server ---------- -The doc_server module configures nginx [3]_ to serve the documentation for +The doc_server module configures apache to serve the documentation for several specified OpenStack projects. At the moment to add a site to this you need to edit ``modules/doc_server/manifests/init.pp`` and add a line as follows: @@ -31,13 +31,13 @@ Lodgeit The lodgeit module installs and configures lodgeit [1]_ on required servers to be used as paste installations. For OpenStack we use -`a fork `_ of this which is based on +`a fork `_ of this which is based on one with bugfixes maintained by `dcolish `_ but adds back missing anti-spam features required by Openstack. Puppet will configure lodgeit to use drizzle [2]_ as a database backend, -nginx [3]_ as a front-end proxy and upstart scripts to run the lodgeit +apache as a front-end proxy and upstart scripts to run the lodgeit instances. It will store and maintain local branch of the the mercurial repository for lodgeit in ``/tmp/lodgeit-main``. @@ -92,7 +92,7 @@ The planet module installs Planet Venus [4]_ along with required dependancies on a server. It also configures specified planets based on options given. Planet Venus works by having a cron job which creates static files. In this -module the static files are served using nginx [3]_. +module the static files are served using apache. To use this module you need to add something similar to the following into the main ``site.pp`` manifest: @@ -125,9 +125,10 @@ Meetbot The meetbot module installs and configures meetbot [5]_ on a server. The meetbot version installed by this module is pulled from the -`Openstack CI fork `_ of the project. +`OpenStack Infrastructure fork `_ +of the project. -It also configures nginix [3]_ to be used for accessing the public IRC logs of +It also configures apache to be used for accessing the public IRC logs of the meetings. To use this module simply add a section to the site manifest as follows: @@ -271,7 +272,7 @@ in the ``JS`` box enter Etherpad Lite ------------- -This Puppet module installs Etherpad Lite [6]_ and its dependencies (including +This Puppet module installs Etherpad Lite [3]_ and its dependencies (including node.js). This Puppet module also configures Etherpad Lite to be started at boot with Nginx running in front of it as a reverse proxy and MySQL running as the database backend. @@ -381,7 +382,6 @@ the ``etherpad-lite`` DB daily and keep a rotation of 30 days of backups. .. rubric:: Footnotes .. [1] `Lodgeit homepage `_ .. [2] `Drizzle homepage `_ -.. [3] `nginx homepage `_ +.. [3] `Etherpad Lite homepage `_ .. [4] `Planet Venus homepage `_ .. [5] `Meetbot homepage `_ -.. [6] `Etherpad Lite homepage `_ diff --git a/doc/source/stackforge.rst b/doc/source/stackforge.rst index 3341464740..f06eda9bc8 100644 --- a/doc/source/stackforge.rst +++ b/doc/source/stackforge.rst @@ -40,13 +40,13 @@ Create a new StackForge Project with Puppet =========================================== OpenStack uses Puppet and a management script to create Gerrit projects -with simple changes to the openstack-ci-puppet repository. To start make -sure you have cloned the openstack-ci-puppet repository -``git clone https://github.com/openstack/openstack-ci-puppet``. +with simple changes to the openstack-infra/config repository. To start make +sure you have cloned the openstack-infra/config repository +``git clone https://github.com/openstack-infra/config``. First you need to add your StackForge project to the master project list. Edit -``openstack-ci-puppet/modules/openstack_project/templates/review.projects.yaml.erb`` +``openstack-infra/config/modules/openstack_project/templates/review.projects.yaml.erb`` and add a new section for your project at the end of the file. It should look something like:: @@ -62,7 +62,7 @@ are optional, but you must have an acl_config. Note that the current tools assume that the upstream repo will have a master branch. The next step is to add a Gerrit ACL config file. Edit -``openstack-ci-puppet/modules/openstack_project/files/gerrit/acls/stackforge/project-name.config`` +``openstack-infra/config/modules/openstack_project/files/gerrit/acls/stackforge/project-name.config`` and make it look like:: [access "refs/heads/*"] @@ -85,12 +85,12 @@ these additional tools. Add Jenkins Jobs to StackForge Projects ======================================= -In the same openstack-ci-puppet repository (and in the same change if +In the same openstack-infra/config repository (and in the same change if you like) we need to edit two additional files to setup Jenkins jobs and Zuul for the new StackForge project. Edit -``openstack-ci-puppet/modules/openstack_project/files/jenkins_job_builder/config/projects.yaml`` +``openstack-infra/config/modules/openstack_project/files/jenkins_job_builder/config/projects.yaml`` and add a new section for your project at the end of the file. It should look something like:: @@ -124,7 +124,7 @@ python 2.6 and 2.7 unittests, and coverage) your entry in Now that we have a Jenkins job we need to tell Zuul to run that job when appropriate. Edit -``openstack-ci-puppet/modules/openstack_project/files/zuul/layout.yaml`` +``openstack-infra/config/modules/openstack_project/files/zuul/layout.yaml`` and add a new section for your project at the end of the file. It should look something like:: @@ -160,7 +160,7 @@ look like this instead:: publish: - project-name-docs -That concludes the bare minimum openstack-ci-puppet changes necessary to +That concludes the bare minimum openstack-infra/config changes necessary to add a project to StackForge. You can commit these changes and submit them to review.openstack.org at this point, or you can wait a little longer and add your project to GerritBot first. @@ -170,7 +170,7 @@ Configure StackForge Project to use GerritBot To have GerritBot send Gerrit events for your project to a Freenode IRC channel edit -``openstack-ci-puppet/modules/gerritbot/files/gerritbot_channel_config.yaml``. +``openstack-infra/config/modules/gerritbot/files/gerritbot_channel_config.yaml``. If you want to configure GerritBot to leave alerts in a channel GerritBot has always joined just add your project to the project list for that channel:: diff --git a/doc/source/systems.rst b/doc/source/systems.rst index 52ec75c922..b5fa9b42ba 100644 --- a/doc/source/systems.rst +++ b/doc/source/systems.rst @@ -3,8 +3,8 @@ Infrastructure Systems ###################### -The OpenStack CI team maintains a number of systems that are critical -to the operation of the OpenStack project, such as gerrit, jenkins, +The OpenStack Infrastructure team maintains a number of systems that are +critical to the operation of the OpenStack project, such as gerrit, jenkins, mailman, meetbot, etherpad, paste, and others. Additionally the team maintains the project sites on Launchpad and @@ -14,8 +14,8 @@ continued and secure operation of the project. SSH Access ********** -For any of the systems managed by the CI team, the following practices -must be observed for SSH access: +For any of the systems managed by the OpenStack Infrastructure team, the +following practices must be observed for SSH access: * SSH access is only permitted with SSH public/private key authentication. @@ -40,9 +40,9 @@ must be observed for SSH access: the confirmation constraint ('ssh-add -c'). * The number of SSH keys that are configured to permit access to OpenStack machines should be kept to a minimum. - * OpenStack CI machines must use puppet to centrally manage and + * OpenStack Infrastructure machines must use puppet to centrally manage and configure user accounts, and the SSH authorized_keys files from the - openstack-ci-puppet repository. + openstack-infra/config repository. * SSH keys should be periodically rotated (at least once per year). During rotation, a new key can be added to puppet for a time, and then the old one removed. Be sure to run puppet on the backup @@ -59,7 +59,7 @@ project infrastructure servers should be carried out entirely through puppet so that anyone can contribute. The Git repository with the puppet configuration may be cloned from -https://github.com/openstack/openstack-ci-puppet and changes submitted +https://github.com/openstack-infra/config and changes submitted with `git-review`. In order to ensure that it is easy for both the OpenStack project as diff --git a/doc/source/third_party.rst b/doc/source/third_party.rst index 01808a0c0f..048e5431be 100644 --- a/doc/source/third_party.rst +++ b/doc/source/third_party.rst @@ -84,12 +84,14 @@ To request a sevice acconut for your system you first need to create a new account in LaunchPad. This account needs to be joined to the `OpenStack Team `_ or one of the related teams so that Gerrit can pick it up. You can then contact the -OpenStack CI Admins via `email `_ +OpenStack Infrastructure Team via +`email `_ or the #openstack-infra IRC channel. We will set things up on Gerrit to receive your system's votes. -Feel free to contact the CI team to arrange setting up a dedicated user so your -system can post reviews up using a system name rather than your user name. +Feel free to contact the Infrastructure team to arrange setting up a dedicated +user so your system can post reviews up using a system name rather than your +user name. The Jenkins Gerrit Trigger Plugin Way ------------------------------------- diff --git a/install_jenkins_slave.sh b/install_jenkins_slave.sh index 4e5d22d26e..a06ae42d37 100755 --- a/install_jenkins_slave.sh +++ b/install_jenkins_slave.sh @@ -14,7 +14,7 @@ dpkg -i $puppet_deb apt-get update apt-get install -y puppet git rubygems -git clone https://github.com/openstack/openstack-ci-puppet -bash openstack-ci-puppet/install_modules.sh +git clone https://github.com/openstack-infra/config +bash config/install_modules.sh -puppet apply --modulepath=`pwd`/openstack-ci-puppet/modules:/etc/puppet/modules -e 'node default {class { "openstack_project::bare_slave": install_users => false }}' +puppet apply --modulepath=`pwd`/config/modules:/etc/puppet/modules -e 'node default {class { "openstack_project::bare_slave": install_users => false }}' diff --git a/modules/gerrit/templates/gerrit.config.erb b/modules/gerrit/templates/gerrit.config.erb index ca86485fd4..a31582f94a 100644 --- a/modules/gerrit/templates/gerrit.config.erb +++ b/modules/gerrit/templates/gerrit.config.erb @@ -1,5 +1,5 @@ # This file is managed by puppet. -# https://github.com/openstack/openstack-ci-puppet +# https://github.com/openstack-infra/config [gerrit] basePath = git diff --git a/modules/gerrit/templates/replication.config.erb b/modules/gerrit/templates/replication.config.erb index 51bbfd77e7..8cd4c8e153 100644 --- a/modules/gerrit/templates/replication.config.erb +++ b/modules/gerrit/templates/replication.config.erb @@ -1,5 +1,5 @@ # This file is managed by puppet. -# https://github.com/openstack/openstack-ci-puppet +# https://github.com/openstack-infra/config <% if replicate_github -%> [remote "github"] diff --git a/modules/gerritbot/files/gerritbot_channel_config.yaml b/modules/gerritbot/files/gerritbot_channel_config.yaml index f86b08ae0e..6de759cbc5 100644 --- a/modules/gerritbot/files/gerritbot_channel_config.yaml +++ b/modules/gerritbot/files/gerritbot_channel_config.yaml @@ -4,22 +4,21 @@ openstack-infra: - change-merged - x-vrif-minus-2 projects: - - openstack/openstack-ci-puppet - - openstack-ci/config - - openstack-ci/devstack-gate - - openstack-ci/gerrit - - openstack-ci/gerrit-trigger-plugin - - openstack-ci/gerrit-verification-status-plugin - - openstack-ci/gerritbot - - openstack-ci/gerritlib - - openstack-ci/git-review - - openstack-ci/jeepyb - - openstack-ci/jenkins-job-builder - - openstack-ci/lodgeit - - openstack-ci/meetbot - - openstack-ci/nose-html-output - - openstack-ci/pypi-mirror - - openstack-ci/zuul + - openstack-infra/config + - openstack-infra/devstack-gate + - openstack-infra/gerrit + - openstack-infra/gerrit-trigger-plugin + - openstack-infra/gerrit-verification-status-plugin + - openstack-infra/gerritbot + - openstack-infra/gerritlib + - openstack-infra/git-review + - openstack-infra/jeepyb + - openstack-infra/jenkins-job-builder + - openstack-infra/lodgeit + - openstack-infra/meetbot + - openstack-infra/nose-html-output + - openstack-infra/pypi-mirror + - openstack-infra/zuul branches: - master diff --git a/modules/jeepyb/manifests/init.pp b/modules/jeepyb/manifests/init.pp index 27d82e50f2..673c0f1787 100644 --- a/modules/jeepyb/manifests/init.pp +++ b/modules/jeepyb/manifests/init.pp @@ -1,7 +1,7 @@ # == Class: jeepyb # class jeepyb ( - $git_source_repo = 'https://github.com/openstack-ci/jeepyb.git', + $git_source_repo = 'https://github.com/openstack-infra/jeepyb.git', ) { include mysql::python diff --git a/modules/jenkins/manifests/job_builder.pp b/modules/jenkins/manifests/job_builder.pp index 09bc9ba7a3..0b5f96f7b5 100644 --- a/modules/jenkins/manifests/job_builder.pp +++ b/modules/jenkins/manifests/job_builder.pp @@ -24,7 +24,7 @@ class jenkins::job_builder ( ensure => latest, provider => git, revision => 'master', - source => 'https://github.com/openstack-ci/jenkins-job-builder.git', + source => 'https://github.com/openstack-infra/jenkins-job-builder.git', } exec { 'install_jenkins_job_builder': diff --git a/modules/launchpad_sync/files/update_gerrit_users.py b/modules/launchpad_sync/files/update_gerrit_users.py index 149de495a3..d2283674d2 100755 --- a/modules/launchpad_sync/files/update_gerrit_users.py +++ b/modules/launchpad_sync/files/update_gerrit_users.py @@ -221,22 +221,22 @@ class Sync(object): projects = [ 'heat-api/heat', 'heat-api/python-heatclient', - 'openstack-ci/devstack-gate', - 'openstack-ci/gerrit', - 'openstack-ci/gerrit-verification-status-plugin', - 'openstack-ci/gerritbot', - 'openstack-ci/gerritlib', - 'openstack-ci/git-review', - 'openstack-ci/jeepyb', - 'openstack-ci/jenkins-job-builder', - 'openstack-ci/lodgeit', - 'openstack-ci/meetbot', - 'openstack-ci/nose-html-output', - 'openstack-ci/puppet-apparmor', - 'openstack-ci/puppet-dashboard', - 'openstack-ci/puppet-vcsrepo', - 'openstack-ci/pypi-mirror', - 'openstack-ci/zuul', + 'openstack-infra/devstack-gate', + 'openstack-infra/gerrit', + 'openstack-infra/gerrit-verification-status-plugin', + 'openstack-infra/gerritbot', + 'openstack-infra/gerritlib', + 'openstack-infra/git-review', + 'openstack-infra/jeepyb', + 'openstack-infra/jenkins-job-builder', + 'openstack-infra/lodgeit', + 'openstack-infra/meetbot', + 'openstack-infra/nose-html-output', + 'openstack-infra/puppet-apparmor', + 'openstack-infra/puppet-dashboard', + 'openstack-infra/puppet-vcsrepo', + 'openstack-infra/pypi-mirror', + 'openstack-infra/zuul', 'openstack-dev/devstack', 'openstack-dev/openstack-nose', 'openstack-dev/openstack-qa', @@ -256,8 +256,7 @@ class Sync(object): 'openstack/nova', 'openstack/object-api', 'openstack/openstack-chef', - 'openstack/openstack-ci', - 'openstack/openstack-ci-puppet', + 'openstack-infra/config', 'openstack/openstack-manuals', 'openstack/openstack-planet', 'openstack/openstack-puppet', diff --git a/modules/lodgeit/manifests/init.pp b/modules/lodgeit/manifests/init.pp index fddbec3e71..4db53f0a00 100644 --- a/modules/lodgeit/manifests/init.pp +++ b/modules/lodgeit/manifests/init.pp @@ -47,7 +47,7 @@ class lodgeit { vcsrepo { '/tmp/lodgeit-main': ensure => latest, provider => git, - source => 'https://github.com/openstack-ci/lodgeit.git', + source => 'https://github.com/openstack-infra/lodgeit.git', } # create initial git DB backup location diff --git a/modules/meetbot/manifests/init.pp b/modules/meetbot/manifests/init.pp index 9d1328e276..550007635d 100644 --- a/modules/meetbot/manifests/init.pp +++ b/modules/meetbot/manifests/init.pp @@ -4,7 +4,7 @@ class meetbot { vcsrepo { '/opt/meetbot': ensure => latest, provider => git, - source => 'https://github.com/openstack-ci/meetbot.git', + source => 'https://github.com/openstack-infra/meetbot.git', } user { 'meetbot': diff --git a/modules/openstack_project/README b/modules/openstack_project/README index 5589a02bf2..ba18e2ae75 100644 --- a/modules/openstack_project/README +++ b/modules/openstack_project/README @@ -1 +1 @@ -This file stores config files specific to the OpenStack CI project. +This file stores config files specific to the OpenStack Infrastructure project. diff --git a/modules/openstack_project/files/gerrit/acls/openstack-ci/devstack-gate.config b/modules/openstack_project/files/gerrit/acls/openstack-infra/devstack-gate.config similarity index 100% rename from modules/openstack_project/files/gerrit/acls/openstack-ci/devstack-gate.config rename to modules/openstack_project/files/gerrit/acls/openstack-infra/devstack-gate.config diff --git a/modules/openstack_project/files/gerrit/acls/openstack-ci/gerrit-verification-status-plugin.config b/modules/openstack_project/files/gerrit/acls/openstack-infra/gerrit-verification-status-plugin.config similarity index 100% rename from modules/openstack_project/files/gerrit/acls/openstack-ci/gerrit-verification-status-plugin.config rename to modules/openstack_project/files/gerrit/acls/openstack-infra/gerrit-verification-status-plugin.config diff --git a/modules/openstack_project/files/gerrit/acls/openstack-ci/gerrit.config b/modules/openstack_project/files/gerrit/acls/openstack-infra/gerrit.config similarity index 100% rename from modules/openstack_project/files/gerrit/acls/openstack-ci/gerrit.config rename to modules/openstack_project/files/gerrit/acls/openstack-infra/gerrit.config diff --git a/modules/openstack_project/files/gerrit/acls/openstack-ci/gerritbot.config b/modules/openstack_project/files/gerrit/acls/openstack-infra/gerritbot.config similarity index 100% rename from modules/openstack_project/files/gerrit/acls/openstack-ci/gerritbot.config rename to modules/openstack_project/files/gerrit/acls/openstack-infra/gerritbot.config diff --git a/modules/openstack_project/files/gerrit/acls/openstack-ci/gerritlib.config b/modules/openstack_project/files/gerrit/acls/openstack-infra/gerritlib.config similarity index 100% rename from modules/openstack_project/files/gerrit/acls/openstack-ci/gerritlib.config rename to modules/openstack_project/files/gerrit/acls/openstack-infra/gerritlib.config diff --git a/modules/openstack_project/files/gerrit/acls/openstack-ci/git-review.config b/modules/openstack_project/files/gerrit/acls/openstack-infra/git-review.config similarity index 100% rename from modules/openstack_project/files/gerrit/acls/openstack-ci/git-review.config rename to modules/openstack_project/files/gerrit/acls/openstack-infra/git-review.config diff --git a/modules/openstack_project/files/gerrit/acls/openstack-ci/jeepyb.config b/modules/openstack_project/files/gerrit/acls/openstack-infra/jeepyb.config similarity index 100% rename from modules/openstack_project/files/gerrit/acls/openstack-ci/jeepyb.config rename to modules/openstack_project/files/gerrit/acls/openstack-infra/jeepyb.config diff --git a/modules/openstack_project/files/gerrit/acls/openstack-ci/jenkins-job-builder.config b/modules/openstack_project/files/gerrit/acls/openstack-infra/jenkins-job-builder.config similarity index 100% rename from modules/openstack_project/files/gerrit/acls/openstack-ci/jenkins-job-builder.config rename to modules/openstack_project/files/gerrit/acls/openstack-infra/jenkins-job-builder.config diff --git a/modules/openstack_project/files/gerrit/acls/openstack-ci/lodgeit.config b/modules/openstack_project/files/gerrit/acls/openstack-infra/lodgeit.config similarity index 100% rename from modules/openstack_project/files/gerrit/acls/openstack-ci/lodgeit.config rename to modules/openstack_project/files/gerrit/acls/openstack-infra/lodgeit.config diff --git a/modules/openstack_project/files/gerrit/acls/openstack-ci/meetbot.config b/modules/openstack_project/files/gerrit/acls/openstack-infra/meetbot.config similarity index 100% rename from modules/openstack_project/files/gerrit/acls/openstack-ci/meetbot.config rename to modules/openstack_project/files/gerrit/acls/openstack-infra/meetbot.config diff --git a/modules/openstack_project/files/gerrit/acls/openstack-ci/nose-html-output.config b/modules/openstack_project/files/gerrit/acls/openstack-infra/nose-html-output.config similarity index 100% rename from modules/openstack_project/files/gerrit/acls/openstack-ci/nose-html-output.config rename to modules/openstack_project/files/gerrit/acls/openstack-infra/nose-html-output.config diff --git a/modules/openstack_project/files/gerrit/acls/openstack-ci/puppet-apparmor.config b/modules/openstack_project/files/gerrit/acls/openstack-infra/puppet-apparmor.config similarity index 100% rename from modules/openstack_project/files/gerrit/acls/openstack-ci/puppet-apparmor.config rename to modules/openstack_project/files/gerrit/acls/openstack-infra/puppet-apparmor.config diff --git a/modules/openstack_project/files/gerrit/acls/openstack-ci/puppet-dashboard.config b/modules/openstack_project/files/gerrit/acls/openstack-infra/puppet-dashboard.config similarity index 100% rename from modules/openstack_project/files/gerrit/acls/openstack-ci/puppet-dashboard.config rename to modules/openstack_project/files/gerrit/acls/openstack-infra/puppet-dashboard.config diff --git a/modules/openstack_project/files/gerrit/acls/openstack-ci/puppet-vcsrepo.config b/modules/openstack_project/files/gerrit/acls/openstack-infra/puppet-vcsrepo.config similarity index 100% rename from modules/openstack_project/files/gerrit/acls/openstack-ci/puppet-vcsrepo.config rename to modules/openstack_project/files/gerrit/acls/openstack-infra/puppet-vcsrepo.config diff --git a/modules/openstack_project/files/gerrit/acls/openstack-ci/pypi-mirror.config b/modules/openstack_project/files/gerrit/acls/openstack-infra/pypi-mirror.config similarity index 100% rename from modules/openstack_project/files/gerrit/acls/openstack-ci/pypi-mirror.config rename to modules/openstack_project/files/gerrit/acls/openstack-infra/pypi-mirror.config diff --git a/modules/openstack_project/files/gerrit/acls/openstack-ci/zuul.config b/modules/openstack_project/files/gerrit/acls/openstack-infra/zuul.config similarity index 100% rename from modules/openstack_project/files/gerrit/acls/openstack-ci/zuul.config rename to modules/openstack_project/files/gerrit/acls/openstack-infra/zuul.config diff --git a/modules/openstack_project/files/gerrit/acls/openstack/openstack-ci.config b/modules/openstack_project/files/gerrit/acls/openstack/openstack-ci.config deleted file mode 100644 index 0a47ba4231..0000000000 --- a/modules/openstack_project/files/gerrit/acls/openstack/openstack-ci.config +++ /dev/null @@ -1,10 +0,0 @@ -[access "refs/heads/*"] - label-Code-Review = -2..+2 group openstack-ci-admins - label-Approved = +0..+1 group openstack-ci-admins -[project] - state = active -[receive] - requireChangeId = true - requireContributorAgreement = true -[submit] - mergeContent = true diff --git a/modules/openstack_project/files/jenkins_job_builder/config/defaults.yaml b/modules/openstack_project/files/jenkins_job_builder/config/defaults.yaml index 97fb04776f..4c07636f01 100644 --- a/modules/openstack_project/files/jenkins_job_builder/config/defaults.yaml +++ b/modules/openstack_project/files/jenkins_job_builder/config/defaults.yaml @@ -7,8 +7,8 @@

If you would like to make changes to this job, please see: - - https://github.com/openstack/openstack-ci-puppet + + https://github.com/openstack-infra/config In modules/openstack_project/files/jenkins_job_builder/config diff --git a/modules/openstack_project/files/jenkins_job_builder/config/macros.yaml b/modules/openstack_project/files/jenkins_job_builder/config/macros.yaml index 0463704f8f..c3d3fc137a 100644 --- a/modules/openstack_project/files/jenkins_job_builder/config/macros.yaml +++ b/modules/openstack_project/files/jenkins_job_builder/config/macros.yaml @@ -109,7 +109,7 @@ - shell: | #!/bin/bash -xe if [[ ! -e devstack-gate ]]; then - git clone http://zuul.openstack.org/p/openstack-ci/devstack-gate + git clone http://zuul.openstack.org/p/openstack-infra/devstack-gate else cd devstack-gate git remote update diff --git a/modules/openstack_project/files/jenkins_job_builder/config/openstack-ci-puppet.yaml b/modules/openstack_project/files/jenkins_job_builder/config/openstack-ci-puppet.yaml index b4b73da3c6..681ff5e55a 100644 --- a/modules/openstack_project/files/jenkins_job_builder/config/openstack-ci-puppet.yaml +++ b/modules/openstack_project/files/jenkins_job_builder/config/openstack-ci-puppet.yaml @@ -1,5 +1,5 @@ - job: - name: gate-ci-puppet-syntax + name: gate-openstack-infra-config-syntax node: precise triggers: @@ -15,7 +15,7 @@ - job: - name: gate-ci-puppet-lint + name: gate-openstack-infra-config-lint node: precise triggers: @@ -30,7 +30,7 @@ - job: - name: ci-puppet-compare-xml + name: openstack-infra-config-compare-xml node: precise triggers: diff --git a/modules/openstack_project/files/jenkins_job_builder/config/projects.yaml b/modules/openstack_project/files/jenkins_job_builder/config/projects.yaml index 85e55c35e6..c5fad0221c 100644 --- a/modules/openstack_project/files/jenkins_job_builder/config/projects.yaml +++ b/modules/openstack_project/files/jenkins_job_builder/config/projects.yaml @@ -45,7 +45,7 @@ - project: name: devstack-gate - github-org: openstack-ci + github-org: openstack-infra node: precise jobs: @@ -73,7 +73,7 @@ - project: name: gerrit-verification-status-plugin - github-org: openstack-ci + github-org: openstack-infra node: precise jobs: @@ -82,7 +82,7 @@ - project: name: gerrit - github-org: openstack-ci + github-org: openstack-infra node: precise jobs: @@ -91,7 +91,7 @@ - project: name: gerritbot - github-org: openstack-ci + github-org: openstack-infra node: precise doc-publisher-site: ci.openstack.org tarball-publisher-site: 173.203.107.207 @@ -107,7 +107,7 @@ - project: name: gerritlib - github-org: openstack-ci + github-org: openstack-infra node: precise doc-publisher-site: ci.openstack.org tarball-publisher-site: nova.openstack.org @@ -122,7 +122,7 @@ - project: name: jeepyb - github-org: openstack-ci + github-org: openstack-infra node: precise doc-publisher-site: ci.openstack.org tarball-publisher-site: nova.openstack.org @@ -137,7 +137,7 @@ - project: name: git-review - github-org: openstack-ci + github-org: openstack-infra node: precise jobs: - gate-{name}-merge @@ -221,7 +221,7 @@ - project: name: jenkins-job-builder - github-org: openstack-ci + github-org: openstack-infra node: precise tarball-publisher-site: nova.openstack.org @@ -252,7 +252,7 @@ - project: name: lodgeit - github-org: openstack-ci + github-org: openstack-infra node: precise jobs: @@ -261,7 +261,7 @@ - project: name: meetbot - github-org: openstack-ci + github-org: openstack-infra node: precise jobs: @@ -302,7 +302,7 @@ - project: name: nose-html-output - github-org: openstack-ci + github-org: openstack-infra node: precise doc-publisher-site: ci.openstack.org tarball-publisher-site: 173.203.107.207 @@ -332,8 +332,8 @@ - project: - name: ci-puppet - github-org: openstack + name: config + github-org: openstack-infra node: precise jobs: @@ -419,7 +419,7 @@ - project: name: puppet-apparmor - github-org: openstack-ci + github-org: openstack-infra node: precise jobs: @@ -428,7 +428,7 @@ - project: name: puppet-dashboard - github-org: openstack-ci + github-org: openstack-infra node: precise jobs: @@ -437,7 +437,7 @@ - project: name: puppet-vcsrepo - github-org: openstack-ci + github-org: openstack-infra node: precise jobs: @@ -446,7 +446,7 @@ - project: name: pypi-mirror - github-org: openstack-ci + github-org: openstack-infra node: precise jobs: @@ -692,7 +692,7 @@ - project: name: tempest - github-org: openstack-ci + github-org: openstack-infra node: precise jobs: @@ -720,7 +720,7 @@ - project: name: zuul - github-org: openstack-ci + github-org: openstack-infra node: precise tarball-publisher-site: nova.openstack.org diff --git a/modules/openstack_project/files/zuul/layout.yaml b/modules/openstack_project/files/zuul/layout.yaml index e45f761086..68821b4fb5 100644 --- a/modules/openstack_project/files/zuul/layout.yaml +++ b/modules/openstack_project/files/zuul/layout.yaml @@ -72,7 +72,7 @@ jobs: voting: false failure-message: XML output has changed. success-message: XML output is unchanged. - - name: ci-puppet-compare-xml + - name: openstack-infra-config-compare-xml voting: false failure-message: Jenkins XML output has changed. success-message: Jenkins XML output is unchanged. @@ -83,7 +83,7 @@ jobs: projects: - - name: openstack-ci/zuul + - name: openstack-infra/zuul check: - gate-zuul-merge: - gate-zuul-docs @@ -107,7 +107,7 @@ projects: - zuul-docs - zuul-pypi-sdist - - name: openstack-ci/nose-html-output + - name: openstack-infra/nose-html-output check: - gate-nose-html-output-merge gate: @@ -117,7 +117,7 @@ projects: publish: - nose-html-output-pypi-sdist - - name: openstack-ci/pypi-mirror + - name: openstack-infra/pypi-mirror check: - gate-pypi-mirror-merge: - gate-pypi-mirror-pyflakes @@ -125,7 +125,7 @@ projects: - gate-pypi-mirror-merge: - gate-pypi-mirror-pyflakes - - name: openstack-ci/gerrit + - name: openstack-infra/gerrit check: - gate-gerrit-merge: - check-gerrit-unittests @@ -135,7 +135,7 @@ projects: post: - gerrit-package - - name: openstack-ci/gerritbot + - name: openstack-infra/gerritbot check: - gate-gerritbot-merge: - gate-gerritbot-pep8 @@ -149,7 +149,7 @@ projects: publish: - gerritbot-pypi-sdist - - name: openstack-ci/gerritlib + - name: openstack-infra/gerritlib check: - gate-gerritlib-merge: - gate-gerritlib-pep8 @@ -161,7 +161,7 @@ projects: publish: - gerritlib-pypi-sdist - - name: openstack-ci/jeepyb + - name: openstack-infra/jeepyb check: - gate-jeepyb-merge: - gate-jeepyb-pep8 @@ -173,13 +173,13 @@ projects: publish: - jeepyb-pypi-sdist - - name: openstack-ci/gerrit-verification-status-plugin + - name: openstack-infra/gerrit-verification-status-plugin check: - gate-gerrit-verification-status-plugin-merge gate: - gate-gerrit-verification-status-plugin-merge - - name: openstack-ci/jenkins-job-builder + - name: openstack-infra/jenkins-job-builder check: - gate-jenkins-job-builder-merge - gate-jenkins-job-builder-docs @@ -197,44 +197,44 @@ projects: publish: - jenkins-job-builder-pypi-sdist - - name: openstack-ci/lodgeit + - name: openstack-infra/lodgeit check: - gate-lodgeit-merge gate: - gate-lodgeit-merge - - name: openstack-ci/meetbot + - name: openstack-infra/meetbot check: - gate-meetbot-merge gate: - gate-meetbot-merge - - name: openstack/openstack-ci-puppet + - name: openstack-infra/config check: - - gate-ci-puppet-merge: - - gate-ci-puppet-syntax - - gate-ci-puppet-lint - - ci-puppet-compare-xml + - gate-openstack-infra-config-merge: + - gate-openstack-infra-config-syntax + - gate-openstack-infra-config-lint + - openstack-infra-config-compare-xml gate: - - gate-ci-puppet-merge: - - gate-ci-puppet-syntax - - gate-ci-puppet-lint + - gate-openstack-infra-config-merge: + - gate-openstack-infra-config-syntax + - gate-openstack-infra-config-lint post: - ci-docs - - name: openstack-ci/puppet-apparmor + - name: openstack-infra/puppet-apparmor check: - gate-puppet-apparmor-merge gate: - gate-puppet-apparmor-merge - - name: openstack-ci/puppet-dashboard + - name: openstack-infra/puppet-dashboard check: - gate-puppet-dashboard-merge gate: - gate-puppet-dashboard-merge - - name: openstack-ci/puppet-vcsrepo + - name: openstack-infra/puppet-vcsrepo check: - gate-puppet-vcsrepo-merge gate: @@ -626,7 +626,7 @@ projects: - gate-tempest-devstack-vm-quantum - gate-tempest-devstack-vm-postgres - - name: openstack-ci/devstack-gate + - name: openstack-infra/devstack-gate check: - gate-devstack-gate-merge: - gate-tempest-devstack-vm @@ -947,7 +947,7 @@ projects: publish: - openstack-qa-docs - - name: openstack-ci/git-review + - name: openstack-infra/git-review check: - gate-git-review-merge: - gate-git-review-pep8 diff --git a/modules/openstack_project/manifests/puppetmaster.pp b/modules/openstack_project/manifests/puppetmaster.pp index d493cf5649..2bb76d1611 100644 --- a/modules/openstack_project/manifests/puppetmaster.pp +++ b/modules/openstack_project/manifests/puppetmaster.pp @@ -13,7 +13,7 @@ class openstack_project::puppetmaster ( cron { 'updatepuppetmaster': user => 'root', minute => '*/15', - command => 'sleep $((RANDOM\%600)) && cd /opt/openstack-ci-puppet/production && /usr/bin/git pull -q && /bin/bash install_modules.sh', + command => 'sleep $((RANDOM\%600)) && cd /opt/openstack-infra/config/production && /usr/bin/git pull -q && /bin/bash install_modules.sh', environment => 'PATH=/var/lib/gems/1.8/bin:/usr/bin:/bin:/usr/sbin:/sbin', } diff --git a/modules/openstack_project/templates/puppet.conf.erb b/modules/openstack_project/templates/puppet.conf.erb index 90e65c577c..92341800f2 100644 --- a/modules/openstack_project/templates/puppet.conf.erb +++ b/modules/openstack_project/templates/puppet.conf.erb @@ -14,8 +14,8 @@ pluginsync=true # and can safely be removed if webrick is used. ssl_client_header = SSL_CLIENT_S_DN ssl_client_verify_header = SSL_CLIENT_VERIFY -manifestdir=/opt/openstack-ci-puppet/$environment/manifests -modulepath=/opt/openstack-ci-puppet/$environment/modules:/etc/puppet/modules +manifestdir=/opt/openstack-infra/config/$environment/manifests +modulepath=/opt/openstack-infra/config/$environment/modules:/etc/puppet/modules manifest=$manifestdir/site.pp reports=store, http reporturl=http://puppet-dashboard.openstack.org:3000/reports/upload diff --git a/modules/openstack_project/templates/review.projects.yaml.erb b/modules/openstack_project/templates/review.projects.yaml.erb index 8a79be43df..c003cdc380 100644 --- a/modules/openstack_project/templates/review.projects.yaml.erb +++ b/modules/openstack_project/templates/review.projects.yaml.erb @@ -13,42 +13,42 @@ acl_config: /home/gerrit2/acls/openstack/heat.config - project: openstack/python-heatclient acl_config: /home/gerrit2/acls/openstack/python-heatclient.config -- project: openstack-ci/devstack-gate - acl_config: /home/gerrit2/acls/openstack-ci/devstack-gate.config -- project: openstack-ci/gerrit +- project: openstack-infra/devstack-gate + acl_config: /home/gerrit2/acls/openstack-infra/devstack-gate.config +- project: openstack-infra/gerrit description: Fork of Gerrit used by OpenStack remote: https://gerrit.googlesource.com/gerrit - acl_config: /home/gerrit2/acls/openstack-ci/gerrit.config -- project: openstack-ci/gerrit-verification-status-plugin - acl_config: /home/gerrit2/acls/openstack-ci/gerrit-verification-status-plugin.config -- project: openstack-ci/gerritbot - acl_config: /home/gerrit2/acls/openstack-ci/gerritbot.config -- project: openstack-ci/gerritlib - acl_config: /home/gerrit2/acls/openstack-ci/gerritlib.config -- project: openstack-ci/jeepyb - acl_config: /home/gerrit2/acls/openstack-ci/jeepyb.config + acl_config: /home/gerrit2/acls/openstack-infra/gerrit.config +- project: openstack-infra/gerrit-verification-status-plugin + acl_config: /home/gerrit2/acls/openstack-infra/gerrit-verification-status-plugin.config +- project: openstack-infra/gerritbot + acl_config: /home/gerrit2/acls/openstack-infra/gerritbot.config +- project: openstack-infra/gerritlib + acl_config: /home/gerrit2/acls/openstack-infra/gerritlib.config +- project: openstack-infra/jeepyb + acl_config: /home/gerrit2/acls/openstack-infra/jeepyb.config upstream: git://github.com/emonty/gerritx.git description: Gerrit Project Builder Tools -- project: openstack-ci/git-review - acl_config: /home/gerrit2/acls/openstack-ci/git-review.config -- project: openstack-ci/jenkins-job-builder - acl_config: /home/gerrit2/acls/openstack-ci/jenkins-job-builder.config -- project: openstack-ci/lodgeit - acl_config: /home/gerrit2/acls/openstack-ci/lodgeit.config -- project: openstack-ci/meetbot - acl_config: /home/gerrit2/acls/openstack-ci/meetbot.config -- project: openstack-ci/nose-html-output - acl_config: /home/gerrit2/acls/openstack-ci/nose-html-output.config -- project: openstack-ci/puppet-apparmor - acl_config: /home/gerrit2/acls/openstack-ci/puppet-apparmor.config -- project: openstack-ci/puppet-dashboard - acl_config: /home/gerrit2/acls/openstack-ci/puppet-dashboard.config -- project: openstack-ci/puppet-vcsrepo - acl_config: /home/gerrit2/acls/openstack-ci/puppet-vcsrepo.config -- project: openstack-ci/pypi-mirror - acl_config: /home/gerrit2/acls/openstack-ci/pypi-mirror.config -- project: openstack-ci/zuul - acl_config: /home/gerrit2/acls/openstack-ci/zuul.config +- project: openstack-infra/git-review + acl_config: /home/gerrit2/acls/openstack-infra/git-review.config +- project: openstack-infra/jenkins-job-builder + acl_config: /home/gerrit2/acls/openstack-infra/jenkins-job-builder.config +- project: openstack-infra/lodgeit + acl_config: /home/gerrit2/acls/openstack-infra/lodgeit.config +- project: openstack-infra/meetbot + acl_config: /home/gerrit2/acls/openstack-infra/meetbot.config +- project: openstack-infra/nose-html-output + acl_config: /home/gerrit2/acls/openstack-infra/nose-html-output.config +- project: openstack-infra/puppet-apparmor + acl_config: /home/gerrit2/acls/openstack-infra/puppet-apparmor.config +- project: openstack-infra/puppet-dashboard + acl_config: /home/gerrit2/acls/openstack-infra/puppet-dashboard.config +- project: openstack-infra/puppet-vcsrepo + acl_config: /home/gerrit2/acls/openstack-infra/puppet-vcsrepo.config +- project: openstack-infra/pypi-mirror + acl_config: /home/gerrit2/acls/openstack-infra/pypi-mirror.config +- project: openstack-infra/zuul + acl_config: /home/gerrit2/acls/openstack-infra/zuul.config - project: openstack-dev/devstack acl_config: /home/gerrit2/acls/openstack-dev/devstack.config - project: openstack-dev/openstack-nose @@ -87,10 +87,8 @@ acl_config: /home/gerrit2/acls/openstack/object-api.config - project: openstack/openstack-chef acl_config: /home/gerrit2/acls/openstack/openstack-chef.config -- project: openstack/openstack-ci - acl_config: /home/gerrit2/acls/openstack/openstack-ci.config -- project: openstack/openstack-ci-puppet - acl_config: /home/gerrit2/acls/openstack/openstack-ci-puppet.config +- project: openstack-infra/config + acl_config: /home/gerrit2/acls/openstack-infra/config.config - project: openstack/openstack-manuals acl_config: /home/gerrit2/acls/openstack/openstack-manuals.config - project: openstack/openstack-planet diff --git a/modules/pypimirror/templates/run-mirror.sh.erb b/modules/pypimirror/templates/run-mirror.sh.erb index c6609d33f6..a54f349a8a 100644 --- a/modules/pypimirror/templates/run-mirror.sh.erb +++ b/modules/pypimirror/templates/run-mirror.sh.erb @@ -1,6 +1,6 @@ #!/bin/bash # This file is managed by puppet. -# https://github.com/openstack/openstack-ci-puppet +# https://github.com/openstack-infra/config export PIP_DOWNLOAD_CACHE=<%= pip_cache %> export PIP_TEMP_DOWNLOAD=<%= pip_download %> diff --git a/modules/zuul/manifests/init.pp b/modules/zuul/manifests/init.pp index 5ee7d04e97..65ae1e5703 100644 --- a/modules/zuul/manifests/init.pp +++ b/modules/zuul/manifests/init.pp @@ -11,7 +11,7 @@ class zuul ( $zuul_ssh_private_key = '', $url_pattern = '', $status_url = "https://${::fqdn}/", - $git_source_repo = 'https://github.com/openstack-ci/zuul.git', + $git_source_repo = 'https://github.com/openstack-infra/zuul.git', $push_change_refs = false ) { include apache diff --git a/setup.py b/setup.py index 44095cae07..9c8bcb0286 100644 --- a/setup.py +++ b/setup.py @@ -16,11 +16,11 @@ try: except Exception: pass -setup(name='openstack-ci-puppet', +setup(name='openstack-infra-config', version="%d.%02d" % (datetime.datetime.now().year, datetime.datetime.now().month), - description="OpenStack Continuous Integration Scripts", - author="OpenStack CI Team", - author_email="openstack-ci@lists.launchpad.net", - url="http://launchpad.net/openstack-ci", + description="OpenStack Infrastructure Config", + author="OpenStack Infrastructure Team", + author_email="openstack-infra@lists.launchpad.net", + url="http://ci.openstack.org", cmdclass=ci_cmdclass) diff --git a/tools/run-compare-xml.sh b/tools/run-compare-xml.sh index 06fa59ab7a..e7c3556e30 100755 --- a/tools/run-compare-xml.sh +++ b/tools/run-compare-xml.sh @@ -19,7 +19,7 @@ rm -fr .test mkdir .test cd .test -git clone https://review.openstack.org/p/openstack-ci/jenkins-job-builder --depth 1 +git clone https://review.openstack.org/p/openstack-infra/jenkins-job-builder --depth 1 cd jenkins-job-builder # These are $WORKSPACE/.test/jenkins-job-builder/.test/... mkdir -p .test/old/config