23
# Joshua Graff Development Operations Manager Full Automation for Continuous Validation

Full Automation for Continuous Validation

Embed Size (px)

DESCRIPTION

How do you ensure that the code checked into version control is good? Do you run Continuous Integration on all submissions? Do you mandate that all developers run some form of validation before they submit? In this talk, hear how Xilinx leveraged Perforce to build a fully-automated system to validate everything before it hits version control, its impact on their developers, and how it changed the way they create software.

Citation preview

Page 1: Full Automation for Continuous Validation

#

Joshua GraffDevelopment Operations Manager

Full Automation for Continuous Validation

Page 2: Full Automation for Continuous Validation

#

• Who am I?

• What is Xilinx?

The Who

Page 3: Full Automation for Continuous Validation

#

A Story of Growth

1/1/02 1/1/03 1/1/04 1/1/05 1/1/06 1/1/07 1/1/08 1/1/09 1/1/100

50100150200250300350400

Total Active Developers

Page 4: Full Automation for Continuous Validation

#

The Beginning

P4

C1

C2

C3

Page 5: Full Automation for Continuous Validation

#

Early Growth

1/1/02 1/1/03 1/1/04 1/1/05 1/1/06 1/1/07 1/1/08 1/1/09 1/1/100

50100150200250300350400

Total Active Developers

Page 6: Full Automation for Continuous Validation

#

Continuous Revolution

P4

C1

C2

C3

Page 7: Full Automation for Continuous Validation

#

Rapid Expansion

1/1/02 1/1/03 1/1/04 1/1/05 1/1/06 1/1/07 1/1/08 1/1/09 1/1/100

50100150200250300350400

Total Active Developers

Page 8: Full Automation for Continuous Validation

#

• Majority of failures on one platform

• High rate of failures due to files missing from a CL

• Conclusion

Investigation

Page 9: Full Automation for Continuous Validation

#

• Build multiple platforms

• Perform aliveness smoke tests

• Check workspace integrity

Enter “pre-commit”

Page 10: Full Automation for Continuous Validation

#

New Workflow

P4

C1

C2

C3

pre-commit

pre-commit

pre-commit

Page 11: Full Automation for Continuous Validation

#

Final Frontier

1/1/02 1/1/03 1/1/04 1/1/05 1/1/06 1/1/07 1/1/08 1/1/09 1/1/100

50100150200250300350400

Total Active Developers

Page 12: Full Automation for Continuous Validation

#

• Workspace integrity is hard

• Dependent changes

• Remote site and user support difficulties

• No true enforcement

Problems

Page 13: Full Automation for Continuous Validation

#

• Control of Workspaces

• Isolate changes

• Leverage core infrastructure

• Be enforceable

Solution

Page 14: Full Automation for Continuous Validation

#

Enter “The Wall”

P4Wallwall-submit

wall-submit

wall-submit

Page 15: Full Automation for Continuous Validation

#

How does it work?

+ P4

Workers

wall-submit Wall(Foreman)

Workspaces

S1

Page 16: Full Automation for Continuous Validation

#

Interaction

Page 17: Full Automation for Continuous Validation

#

Interaction

Page 18: Full Automation for Continuous Validation

#

• Fire and Forget

• Fire and do something else

• Remote and alternative development

• Intelligent validation

New Paradigm

Page 19: Full Automation for Continuous Validation

#

• Building and supporting critical infrastructure

• The ever growing desire to validate more

• Resources

• Guaranteed change delivery

Challenges

Page 20: Full Automation for Continuous Validation

#

• Cloning

• Reprioritization

• More intelligent validation

The Future

Page 21: Full Automation for Continuous Validation

#

Today

1/1/02 1/1/03 1/1/04 1/1/05 1/1/06 1/1/07 1/1/08 1/1/09 1/1/100

50100150200250300350400

Total Active Developers

Page 22: Full Automation for Continuous Validation

#

Final Thoughts• Ideas

Page 23: Full Automation for Continuous Validation

##

Thank you!Joshua [email protected]