12
12
steps :
13
13
- name : Checkout repository
14
14
uses : actions/checkout@v2
15
- with :
16
- path : core-repo
17
15
18
16
- name : Checkout ArduinoCore-API
19
17
uses : actions/checkout@v2
@@ -27,33 +25,27 @@ jobs:
27
25
- name : Get repo name
28
26
run : echo "REPOSITORY_NAME=$(echo ${{ github.repository }} | cut -d "/" -f2-)" >> $GITHUB_ENV
29
27
30
- - name : Rename core-repo path
31
- run : |
32
- mv core-repo ${REPOSITORY_NAME}
33
-
34
28
- name : Package the new core
35
29
run : |
36
- cd ${REPOSITORY_NAME}
37
- echo $PWD
38
30
extras/pack.release.bash $TAG_VERSION $REPOSITORY_NAME
39
31
cd extras
40
32
mkdir staging
41
33
echo $PWD
42
34
mv ../*.json staging/
43
35
mv ../*.tar.bz2 staging/
44
- cd ../..
36
+ cd ..
45
37
46
38
- name : Get architecture name
47
39
run : |
48
- echo "ARCHITECTURE=$(cat ${REPOSITORY_NAME}/ extras/package_index.json.NewTag.template | jq ".packages[0].platforms[0].architecture" | sed 's/\"//g')" >> $GITHUB_ENV
40
+ echo "ARCHITECTURE=$(cat extras/package_index.json.NewTag.template | jq ".packages[0].platforms[0].architecture" | sed 's/\"//g')" >> $GITHUB_ENV
49
41
50
42
- name : Upload package_*_index.json and *.tar.bz2 file to Arduino downloads servers
51
43
env :
52
44
AWS_ACCESS_KEY_ID : ${{ secrets.AWS_ACCESS_KEY_ID }}
53
45
AWS_SECRET_ACCESS_KEY : ${{ secrets.AWS_SECRET_ACCESS_KEY }}
54
46
run : |
55
- aws s3 sync ${REPOSITORY_NAME}/ extras/staging/ s3://${{ secrets.ARDUINO_DOWNLOADS_BUCKET }}/packages/staging/ --exclude "*" --include *.json
56
- aws s3 sync ${REPOSITORY_NAME}/ extras/staging/ s3://${{ secrets.ARDUINO_DOWNLOADS_BUCKET }}/cores/staging/ --exclude "*" --include *.tar.bz2
47
+ aws s3 sync extras/staging/ s3://${{ secrets.ARDUINO_DOWNLOADS_BUCKET }}/packages/staging/ --exclude "*" --include *.json
48
+ aws s3 sync extras/staging/ s3://${{ secrets.ARDUINO_DOWNLOADS_BUCKET }}/cores/staging/ --exclude "*" --include *.tar.bz2
57
49
58
50
- name : Checkout Basic examples
59
51
uses : actions/checkout@v2
@@ -66,17 +58,35 @@ jobs:
66
58
with :
67
59
version : " 0.14.0"
68
60
69
- - name : Verify new core
61
+ - name : Download new core
70
62
run : |
71
63
export PATH=$PATH:$PWD
72
64
arduino-cli version
73
- cp ${REPOSITORY_NAME}/ extras/staging/package_${REPOSITORY_NAME}_${TAG_VERSION}_index.json .
65
+ cp extras/staging/package_${REPOSITORY_NAME}_${TAG_VERSION}_index.json .
74
66
export ARDUINO_DIRECTORIES_DATA=$PWD
75
67
export ARDUINO_BOARD_MANAGER_ADDITIONAL_URLS=file://$PWD/package_${REPOSITORY_NAME}_${TAG_VERSION}_index.json
76
68
arduino-cli config init
77
69
arduino-cli config dump -v
78
70
arduino-cli core update-index -v
79
71
arduino-cli core install arduino:${ARCHITECTURE}@${TAG_VERSION}
72
+
73
+ - name : Checkout ArduinoCore-API
74
+ uses : actions/checkout@v2
75
+ with :
76
+ repository : arduino/ArduinoCore-API
77
+ path : extras/ArduinoCore-API
78
+
79
+ - name : Check if API should be compiled in the core
80
+ id : checkapi
81
+ run : |
82
+ if [[ $(grep -r api platform.txt) ]]; then echo "::set-output name=IS_API::true"; fi
83
+
84
+ - name : Integrate ArduinoCore-API
85
+ run : mv "$GITHUB_WORKSPACE/extras/ArduinoCore-API/api" "$GITHUB_WORKSPACE/packages/arduino/hardware/${ARCHITECTURE}/${TAG_VERSION}/cores/arduino"
86
+ if : steps.checkapi.outputs.IS_API == 'true'
87
+
88
+ - name : Verify new core
89
+ run : |
80
90
INDEX=0
81
91
arduino-cli board listall --format=json > boardlist.json
82
92
N=$(jq '.boards | length' boardlist.json)
0 commit comments