Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

sprint 2012 09 06

Adam Spiers edited this page · 5 revisions
Clone this wiki locally

Sprint 09/06

Coordination Meetings

Weekly Design Review Meeting

Tuesday 9/11 @ 10am CDT. Recording http://youtu.be/KcljrDZCg2U

Testing and Dev Strategy Discussion

For next coding/testing discussion

  • Continue to review
  • Set timeline
  • Coordinate automation servers
  • Coding standards updates TBD in future meeting (off-line discussion on list)

Objectives

  • to understand the types of tests that exist, what is the coverage, what are the gaps, how are we going to close them.
  • where we are and where we are going
  • acceptance of pull requests - criteria
  • coding standards / guidelines
  • license requirements
  • shared CI infrastructure

Today's objective - NOT to create the standard, but to discuss and suggest. Target of acceptance standards by 10.31

What are guidelines? Looking for already accepted community practice... Lots of prior art which could be used, e.g. Examples:

Where do we put the guidelines?

  • changes should be on developers' radar

Enforcement for guidelines/tests

  • Reviewers enforce
  • Git post scripts to validate guidelines?
  • Unit test execution?
  • CI Automation?
  • Gated reviews by git hooks and CI runs?

Review Expectations

  • Enforcement of expectations (level of test coverage, coding standards, documentation)
  • Platform dependencies will be identified and isolated as needed
  • Bugs should have sample data & tests to validate (when possible)
  • Documentation should be updated / checked, in the same commit as the corresponding code change where possible
  • Question: Could do a refresh build with the change?
  • Reviewer is responsible for contacting submitter directly (ccing mailing list), and carry review to completion or handoff.
  • Code based for pull is within 12 hours syncronized
  • Question: That CI passes build before review is taken?
    • this means that we need to allow the requests to be grouped so they can be tested as a unit
    • this is best practice for OpenStack SmokeStack -> it's a binding vote/gate
  • Question: where code can be replaced by a common Gem, reject and recommend use?

Testing Expectations (beyond coding standards)

  • How many platforms need to be tested by an individual developer?
  • Migrations and sample data
  • CI can execute on pre-pulled data
  • Contributors can run their tests locally before pulling
  • Testing is not per-barclamp, but as integrated system

What type of Automated testing will be included in base?

  • Unit/rSpec for model & db tests
  • BDD test if UI & REST API calls
  • Self-test from CLI during installation
  • Dell Build Server runs through smoke test on every ISO
    • Jenkins
    • deploys ISO into a virtual system of multiple nodes (5 node KVM environment)
    • OpenStack -> crowbar, nova controller, nova compute -> runs tempest to make sure Nova is working
    • Cloudera -> deploy's ClouderaManager
    • test of NTP, DNS, etc.
    • each barclamp has smoke tests that are run during the installation (which is part of smoke testing)
  • Tempest barclamp
  • SUSE Build Server
    • Jenkins builds a new cloud from scratch
    • Install the new builld onto a new VM and automatically config & install Crowbar using CLI
    • Using CLI, nodes are provisioned and proposals added
    • Perform basic operations like uploading, launching, etc

Gaps in testing

  • reinstall of node
  • non-green field
  • update of a proposal
  • code coverage report

Automation / CI

  • License compliance
  • Validation on multiple platforms
  • Question: Expectation that CI will test pending pull requests?

Acceptance of Pull Request Criteria

  • 2nd Person Reviews
  • Question - do we need to nominate offical reviewers?
  • Pull must conform to coding standards
  • Must be Apache 2 license
    • CLA not required for bugs & minor items (20ish lines), we can accept the request at our discretion
    • Does not inject vendor information (Name or Product) into Crowbar except where relevant to explain utility of push (e.g.: help documentation & descriptions).
    • Does not degrade the security model of the product
    • Items requiring more scrutiny, including signing CLA: Major changes, New barclamps, New technology
  • Question: do we need to have "signed off by" lines in the commit message?
  • Question: Do we want reviews before the pull request?

Where to file bugs?

  • Question: Where should bugs be filed?

Next Week's Design Topics

  • Core Workflow and Jobs
  • BDD & Testing

Sprint Coordination

Thursday 9/06 @ 8am CDT. Recording http://youtu.be/XCBRZwKeBTI

Agenda:

  • 25 minutes review
  • 10 minutes process check
  • 25 minutes planning

Participants

  • Adam
  • Paul
  • Greg
  • Rob
  • Surya
  • Randy (for first half)
  • Andi (for first half)
  • Victor

Review Items

  • Items pulled into Betty (coming OpenStack release)
    • roughly 500 changes that have to be sorted through
    • not bringing in DB barclamp at this time
  • OpenStack Specific Items
    • EQL Driver for Nova being pulled into Nova Barclamp
    • Pulling in Essex 12.1.3 packages (Canonical)
    • KVM performance enhancements (some patches to nova code, compute node config changes)
  • IPMI default password being changed to "cr0wBar!" because hardware platforms enforce complex passwords
    • consideration of making that the new default for Crowbar 2? We'll make it consistent in Crowbar 2.
  • Auth Changes to add digest (needed for API)
    • not complete
  • DevTool Changes
    • the goal for the changes is to simplfy development (especially updating of references)
    • allows for a multi-tree development setup
    • this no longer requires barclamp changes to also make changes to crowbar (this means that you'll see lots of changes on the crowbar tree -- nothing to worry about)
  • Doc Changes (minor)

Process Items

  • Dell dev team has switched to 2 weeks sprint for this sprint
  • SUSE is coming off the immediate release of SUSE Cloud and we're all excited about increased collabroation amongst the teams
  • Other SUSE team members will be coming into calls/lists/etc.

  • SUSE asking to use more IRC for collaboration (Dell want's but is blocked)

    • Skype is backup channel

Changes to improve process:

  • Do these meeting times still work?

Planned Items

  • DevTool
  • Dell team is focused on Betty
  • Networking changes in code
  • Digest Auth wrap up
  • Documentation
    • changed to / paths
    • don't have to update the yml file
  • Removal of "offline mode" code

Next Design Session -> Coding/Testing/Doc Standards Brainstorming

  • Blocks -> No
Something went wrong with that request. Please try again.