6.1
Upcoming SlideShare
Loading in...5
×

Like this? Share it with your network

Share

6.1

  • 382 views
Uploaded on

Процессы разработки, инструменты и методы автоматизации тестирования в проекте OpenStack. С какими сложностями сталкивается сообщество OpenStack? Какие инструменты были разработаны для того, чтобы......

Процессы разработки, инструменты и методы автоматизации тестирования в проекте OpenStack. С какими сложностями сталкивается сообщество OpenStack? Какие инструменты были разработаны для того, чтобы всегда поддерживать этот широкомасштабный проект в рабочем состоянии?

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
382
On Slideshare
233
From Embeds
149
Number of Embeds
3

Actions

Shares
Downloads
4
Comments
0
Likes
0

Embeds 149

http://tech.yandex.ru 91
https://tech.yandex.ru 57
http://translate.googleusercontent.com 1

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. © MIRANTIS 2013 PAGE© MIRANTIS 2013 OpenStack - development and testing processes Ruslan Kamaldinov
  • 2. © MIRANTIS 2013 PAGE OpenStack community • More than a hundred commercial entities • More than a thousand individual contributors • 700-1000 patch-set per day • ~250 commits per day
  • 3. © MIRANTIS 2013 PAGE OpenStack community * all projects, including stackforge and openstack-infra
  • 4. © MIRANTIS 2013 PAGE OpenStack community
  • 5. © MIRANTIS 2013 PAGE Code review - Gerrit • Raise bus factor • Ensure code readability • Catch bugs • Everybody gets reviewed (no exceptions)
  • 6. © MIRANTIS 2013 PAGE Workflow
  • 7. © MIRANTIS 2013 PAGE Project gating • Automated testing • Ensures code quality • Protects developers • Protects source tree • Process is the same for everyone
  • 8. © MIRANTIS 2013 PAGE Project gating
  • 9. © MIRANTIS 2013 PAGE Project gating
  • 10. © MIRANTIS 2013 PAGE Project gating
  • 11. © MIRANTIS 2013 PAGE Zuul • Interfaces with Gerrit and Jenkins • Listens for events from Gerrit and launches Jenkins jobs • Allows parallel testing of serialized changes
  • 12. © MIRANTIS 2013 PAGE Zuul - name: openstack/sahara template: - name: python-jobs - name: check-requirements - name: integrated-gate-sahara check: - gate-sahara-pylint post: - hook-sahara-rtfd - sahara-upstream-translation-update pre-release: - sahara-tarball - hook-sahara-rtfd release: - sahara-tarball: - hook-sahara-rtfd
  • 13. © MIRANTIS 2013 PAGE Zuul project-templates: - name: python-jobs check: - 'gate-{name}-pep8' - 'gate-{name}-docs' - 'gate-{name}-python26' - 'gate-{name}-python27' gate: - 'gate-{name}-docs' - 'gate-{name}-pep8' - 'gate-{name}-python26' - 'gate-{name}-python27' post: - '{name}-branch-tarball' - '{name}-coverage'
  • 14. © MIRANTIS 2013 PAGE Jenkins Job Builder Jenkins Job Builder is a system for configuring Jenkins jobs using simple YAML files stored in Git.
  • 15. © MIRANTIS 2013 PAGE Jenkins Job Builder - project: name: sahara github-org: openstack node: bare-precise tarball-site: tarballs.openstack.org doc-publisher-site: docs.openstack.org jobs: - python-jobs - gate-{name}-pylint - hook-{name}-rtfd - pypi-jobs - translation-jobs - openstack-publish-jobs
  • 16. © MIRANTIS 2013 PAGE Jenkins Job Builder - job-template: name: 'gate-{name}-pep8' builders: - revoke-sudo - gerrit-git-prep - pep8: github-org: '{github-org}' project: '{name}' publishers: - console-log node: '{node}'
  • 17. © MIRANTIS 2013 PAGE Resources ● http://ci.openstack.org/ ● https://git.openstack.org/cgit/openstack-infra/config/tree/ ● https://git.openstack.org/cgit/openstack-infra/zuul/tree ● https://git.openstack.org/cgit/openstack-infra/jenkins-job-builder/tree ● #openstack-infra at freenode.net ● #openstack-dev at freenode.net ● #openstack-sahara at freenode.net ● http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev ● http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-infra
  • 18. © MIRANTIS 2013 PAGE Q&A