continuous validation

30
© Copyright 2016 Xilinx . Continuous Validation Joshua Graff Manager: Devops Tools Xilinx

Upload: perforce

Post on 12-Apr-2017

378 views

Category:

Software


0 download

TRANSCRIPT

Page 1: Continuous Validation

© Copyright 2016 Xilinx.

Continuous ValidationJoshua GraffManager: Devops ToolsXilinx

Page 2: Continuous Validation

© Copyright 2016 Xilinx.

2

Who?

Page 3: Continuous Validation

© Copyright 2016 Xilinx.

3

What?

Page 4: Continuous Validation

© Copyright 2016 Xilinx.

4

What?

Page 5: Continuous Validation

© Copyright 2016 Xilinx.

The Problem

Page 6: Continuous Validation

© Copyright 2016 Xilinx.

6

Software

Page 7: Continuous Validation

© Copyright 2016 Xilinx.

7

Size

Developers350+

Page 8: Continuous Validation

© Copyright 2016 Xilinx.

Our Story

Page 9: Continuous Validation

© Copyright 2016 Xilinx.

9

Growth

1/1/18

99

1/1/19

02

1/1/19

05

1/1/19

08

1/1/191

1

1/1/19

14

1/1/19

17

1/1/19

20

1/1/19

23

1/1/19

26

1/1/19

29

1/1/19

32

1/1/19

35

1/1/19

38

1/1/19

41

1/1/19

44

1/1/19

47

1/1/19

50

1/1/19

53

1/1/19

56

1/1/19

59

1/1/196

2

1/1/19

65

1/1/19

68

1/1/19

71

1/1/19

74

1/1/19

77

1/1/19

80

1/1/19

83

1/1/19

86

1/1/19

89

1/1/19

92

1/1/19

95

1/1/19

98

1/1/20

01

1/1/200

4

1/1/20

070

50

100

150

200

250

300

350

400

Total active developers

Page 10: Continuous Validation

© Copyright 2016 Xilinx.

10

Automation

Wall P4

Page 11: Continuous Validation

© Copyright 2016 Xilinx.

11

Automation

+

Wall

Workspaces

submit S1

Workers

P4

Page 12: Continuous Validation

© Copyright 2016 Xilinx.

Bigger, Faster

Page 13: Continuous Validation

© Copyright 2016 Xilinx.

13

Bigger

1/1/18

99

1/1/19

02

1/1/19

05

1/1/19

08

1/1/19

11

1/1/19

14

1/1/19

17

1/1/19

20

1/1/19

23

1/1/19

26

1/1/19

29

1/1/19

32

1/1/19

35

1/1/19

38

1/1/19

41

1/1/19

44

1/1/19

47

1/1/19

50

1/1/19

53

1/1/19

56

1/1/19

59

1/1/19

62

1/1/19

65

1/1/19

68

1/1/19

71

1/1/19

74

1/1/19

77

1/1/19

80

1/1/19

83

1/1/19

86

1/1/19

89

1/1/19

92

1/1/19

95

1/1/19

98

1/1/20

01

1/1/20

04

1/1/20

07

1/1/20

100

50

100

150

200

250

300

350

400

Total Active Developers

Page 14: Continuous Validation

© Copyright 2016 Xilinx.

14

Bigger

1/1/18

99

1/1/19

02

1/1/19

05

1/1/19

08

1/1/19

11

1/1/19

14

1/1/19

17

1/1/19

20

1/1/19

23

1/1/19

26

1/1/19

29

1/1/19

32

1/1/19

35

1/1/19

38

1/1/19

41

1/1/19

44

1/1/19

47

1/1/19

50

1/1/19

53

1/1/19

56

1/1/19

59

1/1/19

62

1/1/19

65

1/1/19

68

1/1/19

71

1/1/19

74

1/1/19

77

1/1/19

80

1/1/19

83

1/1/19

86

1/1/19

89

1/1/19

92

1/1/19

95

1/1/19

98

1/1/20

01

1/1/20

04

1/1/20

07

1/1/20

100

10000

20000

30000

40000

50000

60000

Submissions

Page 15: Continuous Validation

© Copyright 2016 Xilinx.

15

Faster

More Developers

More Change

Stricter timelines

More Code

More Releases

Tighter budgets

Page 16: Continuous Validation

© Copyright 2016 Xilinx.

Keeping DRY

Page 17: Continuous Validation

© Copyright 2016 Xilinx.

17

Automation

+

Wall

Workspaces

submit S1

Workers

P4

Page 18: Continuous Validation

© Copyright 2016 Xilinx.

18

Workspaces

S3 S2 S1 +

Page 19: Continuous Validation

© Copyright 2016 Xilinx.

19

Cloning

S3 S2 S1

Test

Snapshot

Build

+

Page 20: Continuous Validation

© Copyright 2016 Xilinx.

20

Caching

Fast master cycle

Long build phase

Page 21: Continuous Validation

© Copyright 2016 Xilinx.

21

Caching

checksum

env

toolsfoo.

c

2e5daf0201ddeb068a62d5e08da18657ab2c6be9

foo.o

Speed up compilation

Object cache

Page 22: Continuous Validation

© Copyright 2016 Xilinx.

22

Naïve validation

S1

Product Build TestA X X

B X X

C X X

Page 23: Continuous Validation

© Copyright 2016 Xilinx.

23

Smarter validation

S1

Product Build TestA X X

B X

C

foo.cbar.c ?=

Page 24: Continuous Validation

© Copyright 2016 Xilinx.

Infrastructure

Page 25: Continuous Validation

© Copyright 2016 Xilinx.

25

Infrastructure

Scalability and elasticity

Management and utilization

Storage

Page 26: Continuous Validation

© Copyright 2016 Xilinx.

26

Virtualize the world

Scalability and elasticity

Management and utilization

Storage

Page 27: Continuous Validation

© Copyright 2016 Xilinx.

Build It

Page 28: Continuous Validation

© Copyright 2016 Xilinx.

28

When?

1/1/18

99

1/1/19

02

1/1/19

05

1/1/19

08

1/1/19

11

1/1/19

14

1/1/19

17

1/1/19

20

1/1/19

23

1/1/19

26

1/1/19

29

1/1/19

32

1/1/19

35

1/1/19

38

1/1/19

41

1/1/19

44

1/1/19

47

1/1/19

50

1/1/19

53

1/1/19

56

1/1/19

59

1/1/19

62

1/1/19

65

1/1/19

68

1/1/19

71

1/1/19

74

1/1/19

77

1/1/19

80

1/1/19

83

1/1/19

86

1/1/19

89

1/1/19

92

1/1/19

95

1/1/19

98

1/1/20

01

1/1/20

04

1/1/20

07

1/1/20

100

50

100

150

200

250

300

350

400

Total Active Developers

Page 29: Continuous Validation

© Copyright 2016 Xilinx.

29

Solid foundation

Reliable build system• All platforms• Incremental compilation• Well defined dependencies

Reliable test system• Well defined tests• Scalable testing

Page 30: Continuous Validation

© Copyright 2016 Xilinx.

Thank you!

Email: [email protected]