3
3
import sys
4
4
import subprocess
5
5
import time
6
- from pathlib import Path
7
-
8
- home = str (Path .home ())
9
-
10
- exit_status = 0
11
6
12
7
travis = False
13
8
if "TRAVIS" in os .environ and os .environ ["TRAVIS" ] == "true" :
14
9
travis = True
15
10
11
+ exit_status = 0
16
12
success_count = 0
17
13
fail_count = 0
18
14
19
- print ("Setting board to Feather nRF52840" )
20
- subprocess .run ("arduino --board adafruit:nrf52:feather52840:softdevice=s140v6,debug=l0 --save-prefs" , shell = True , stdout = subprocess .PIPE , stderr = subprocess .STDOUT )
15
+ def build_examples (variant ):
16
+ global exit_status , success_count , fail_count
17
+ for sketch in glob .iglob ('libraries/**/*.ino' , recursive = True ):
18
+ if ( os .path .exists ( os .path .dirname (sketch ) + '/.skip.' + variant ) ):
19
+ print ("Build {} SKIP" .format (sketch ))
20
+ continue
21
21
22
- for sketch in glob .iglob ('libraries/**/*.ino' , recursive = True ):
23
- start_time = time .monotonic ()
24
- build_result = subprocess .run ("arduino --verify {}" .format (sketch ), shell = True , stdout = subprocess .PIPE , stderr = subprocess .STDOUT )
25
- build_duration = time .monotonic () - start_time
22
+ start_time = time .monotonic ()
23
+ build_result = subprocess .run ("arduino --verify {}" .format (sketch ), shell = True , stdout = subprocess .PIPE , stderr = subprocess .STDOUT )
24
+ build_duration = time .monotonic () - start_time
26
25
27
- if build_result .returncode != 0 :
28
- exit_status = build_result .returncode
29
- success = "\033 [31mfailed\033 [0m"
30
- fail_count += 1
31
- else :
32
- success = "\033 [32msucceeded\033 [0m"
33
- success_count += 1
26
+ if build_result .returncode != 0 :
27
+ exit_status = build_result .returncode
28
+ success = "\033 [31mfailed\033 [0m"
29
+ fail_count += 1
30
+ else :
31
+ success = "\033 [32msucceeded\033 [0m"
32
+ success_count += 1
34
33
35
- if travis :
36
- print ('travis_fold:start:build-{}\\ r' .format (sketch ))
34
+ if travis :
35
+ print ('travis_fold:start:build-{}\\ r' .format (sketch ))
37
36
38
- print ("Build {} took {:.2f}s and {}" .format (sketch , build_duration , success ))
39
- if build_result .returncode != 0 :
40
- print (build_result .stdout .decode ("utf-8" ))
37
+ print ("Build {} took {:.2f}s and {}" .format (sketch , build_duration , success ))
38
+ if build_result .returncode != 0 :
39
+ print (build_result .stdout .decode ("utf-8" ))
41
40
42
- if travis :
43
- print ('travis_fold:end:build-{}\\ r' .format (sketch ))
41
+ if travis :
42
+ print ('travis_fold:end:build-{}\\ r' .format (sketch ))
44
43
44
+ build_time = time .monotonic ()
45
45
46
- print ("Build Sumamary: {} \033 [32msucceeded\033 [0m, {} \033 [31mfailed\033 [0m" .format (success_count , fail_count ))
47
- sys .exit (exit_status )
46
+ print ("-----------------------------" )
47
+ print ("Set board to Feather nRF52840" )
48
+ print ("-----------------------------" )
49
+ subprocess .run ("arduino --board adafruit:nrf52:feather52840:softdevice=s140v6,debug=l0 --save-prefs" , shell = True , stdout = subprocess .PIPE , stderr = subprocess .STDOUT )
50
+ build_examples ('feather52840' )
51
+
52
+ print ("-----------------------------" )
53
+ print ("Set board to Feather nRF52832" )
54
+ print ("-----------------------------" )
55
+ subprocess .run ("arduino --board adafruit:nrf52:feather52832:softdevice=s132v6,debug=l0 --save-prefs" , shell = True , stdout = subprocess .PIPE , stderr = subprocess .STDOUT )
56
+ build_examples ('feather52832' )
57
+
58
+ print ("--------------" )
59
+ print ("Build Sumamary" )
60
+ print ("--------------" )
61
+ build_time = time .monotonic () - build_time
62
+ print ("{} \033 [32msucceeded\033 [0m, {} \033 [31mfailed\033 [0m and took {:.2f}s" .format (success_count , fail_count , build_time ))
63
+ sys .exit (exit_status )
0 commit comments