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