Skip to content

Commit ed96d2a

Browse files
authoredOct 1, 2019
Use Github Actions for release (espressif#3309)
* move scripts and tone down travis * Update and rename main.yml to push.yml * Create release.yml
1 parent caa391a commit ed96d2a

13 files changed

+412
-673
lines changed
 
File renamed without changes.
File renamed without changes.

‎tools/ci/on-push.sh renamed to ‎.github/scripts/on-push.sh

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -28,11 +28,14 @@ elif [ "$CHUNK_INDEX" -eq "$CHUNKS_CNT" ]; then
2828
BUILD_PIO=1
2929
fi
3030

31+
echo "Updating submodules ..."
32+
git -C "$GITHUB_WORKSPACE" submodule update --init --recursive > /dev/null 2>&1
33+
3134
if [ "$BUILD_PIO" -eq 0 ]; then
3235
# ArduinoIDE Test
3336
FQBN="espressif:esp32:esp32:PSRAM=enabled,PartitionScheme=huge_app"
34-
source ./tools/ci/install-arduino-ide.sh
35-
source ./tools/ci/install-arduino-core-esp32.sh
37+
source ./.github/scripts/install-arduino-ide.sh
38+
source ./.github/scripts/install-arduino-core-esp32.sh
3639
if [ "$OS_IS_WINDOWS" == "1" ]; then
3740
build_sketch "$FQBN" "$ARDUINO_ESP32_PATH/libraries/WiFiClientSecure/examples/WiFiClientSecure/WiFiClientSecure.ino" && \
3841
build_sketch "$FQBN" "$ARDUINO_ESP32_PATH/libraries/BLE/examples/BLE_server/BLE_server.ino" && \
@@ -48,14 +51,14 @@ if [ "$BUILD_PIO" -eq 0 ]; then
4851
else
4952
# CMake Test
5053
if [ "$CHUNK_INDEX" -eq 0 ]; then
51-
bash "$ARDUINO_ESP32_PATH/tools/ci/check-cmakelists.sh"
54+
bash "$ARDUINO_ESP32_PATH/.github/scripts/check-cmakelists.sh"
5255
if [ $? -ne 0 ]; then exit 1; fi
5356
fi
5457
build_sketches "$FQBN" "$ARDUINO_ESP32_PATH/libraries" "$CHUNK_INDEX" "$CHUNKS_CNT"
5558
fi
5659
else
5760
# PlatformIO Test
58-
source ./tools/ci/install-platformio-esp32.sh
61+
source ./.github/scripts/install-platformio-esp32.sh
5962
BOARD="esp32dev"
6063
build_pio_sketch "$BOARD" "$PLATFORMIO_ESP32_PATH/libraries/WiFi/examples/WiFiClient/WiFiClient.ino" && \
6164
build_pio_sketch "$BOARD" "$PLATFORMIO_ESP32_PATH/libraries/WiFiClientSecure/examples/WiFiClientSecure/WiFiClientSecure.ino" && \

‎.github/scripts/on-release.sh

Lines changed: 380 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,380 @@
1+
#!/bin/bash
2+
3+
if [ ! $GITHUB_EVENT_NAME == "release" ]; then
4+
echo "Wrong event '$GITHUB_EVENT_NAME'!"
5+
exit 1
6+
fi
7+
8+
EVENT_JSON=`cat $GITHUB_EVENT_PATH`
9+
10+
action=`echo $EVENT_JSON | jq -r '.action'`
11+
if [ ! $action == "published" ]; then
12+
echo "Wrong action '$action'. Exiting now..."
13+
exit 0
14+
fi
15+
16+
draft=`echo $EVENT_JSON | jq -r '.release.draft'`
17+
if [ $draft == "true" ]; then
18+
echo "It's a draft release. Exiting now..."
19+
exit 0
20+
fi
21+
22+
RELEASE_PRE=`echo $EVENT_JSON | jq -r '.release.prerelease'`
23+
RELEASE_TAG=`echo $EVENT_JSON | jq -r '.release.tag_name'`
24+
RELEASE_BRANCH=`echo $EVENT_JSON | jq -r '.release.target_commitish'`
25+
RELEASE_ID=`echo $EVENT_JSON | jq -r '.release.id'`
26+
RELEASE_BODY=`echo $EVENT_JSON | jq -r '.release.body'`
27+
28+
OUTPUT_DIR="$GITHUB_WORKSPACE/build"
29+
PACKAGE_NAME="esp32-$RELEASE_TAG"
30+
PACKAGE_JSON_MERGE="$GITHUB_WORKSPACE/.github/scripts/merge_packages.py"
31+
PACKAGE_JSON_TEMPLATE="$GITHUB_WORKSPACE/package/package_esp32_index.template.json"
32+
PACKAGE_JSON_DEV="package_esp32_dev_index.json"
33+
PACKAGE_JSON_REL="package_esp32_index.json"
34+
35+
echo "Event: $GITHUB_EVENT_NAME, Repo: $GITHUB_REPOSITORY, Path: $GITHUB_WORKSPACE, Ref: $GITHUB_REF"
36+
echo "Action: $action, Branch: $RELEASE_BRANCH, ID: $RELEASE_ID"
37+
echo "Tag: $RELEASE_TAG, Draft: $draft, Pre-Release: $RELEASE_PRE"
38+
39+
function get_file_size(){
40+
local file="$1"
41+
if [[ "$OSTYPE" == "darwin"* ]]; then
42+
eval `stat -s "$file"`
43+
local res="$?"
44+
echo "$st_size"
45+
return $res
46+
else
47+
stat --printf="%s" "$file"
48+
return $?
49+
fi
50+
}
51+
52+
function git_upload_asset(){
53+
local name=$(basename "$1")
54+
# local mime=$(file -b --mime-type "$1")
55+
curl -k -X POST -sH "Authorization: token $GITHUB_TOKEN" -H "Content-Type: application/octet-stream" --data-binary @"$1" "https://uploads.github.com/repos/$GITHUB_REPOSITORY/releases/$RELEASE_ID/assets?name=$name"
56+
}
57+
58+
function git_safe_upload_asset(){
59+
local file="$1"
60+
local name=$(basename "$file")
61+
local size=`get_file_size "$file"`
62+
local upload_res=`git_upload_asset "$file"`
63+
if [ $? -ne 0 ]; then
64+
>&2 echo "ERROR: Failed to upload '$name' ($?)"
65+
return 1
66+
fi
67+
up_size=`echo "$upload_res" | jq -r '.size'`
68+
if [ $up_size -ne $size ]; then
69+
>&2 echo "ERROR: Uploaded size does not match! $up_size != $size"
70+
#git_delete_asset
71+
return 1
72+
fi
73+
echo "$upload_res" | jq -r '.browser_download_url'
74+
return $?
75+
}
76+
77+
function git_upload_to_pages(){
78+
local path=$1
79+
local src=$2
80+
81+
if [ ! -f "$src" ]; then
82+
>&2 echo "Input is not a file! Aborting..."
83+
return 1
84+
fi
85+
86+
local info=`curl -s -k -H "Authorization: token $GITHUB_TOKEN" -H "Accept: application/vnd.github.v3.object+json" -X GET "https://api.github.com/repos/$GITHUB_REPOSITORY/contents/$path?ref=gh-pages"`
87+
local type=`echo "$info" | jq -r '.type'`
88+
local message=$(basename $path)
89+
local sha=""
90+
local content=""
91+
92+
if [ $type == "file" ]; then
93+
sha=`echo "$info" | jq -r '.sha'`
94+
sha=",\"sha\":\"$sha\""
95+
message="Updating $message"
96+
elif [ ! $type == "null" ]; then
97+
>&2 echo "Wrong type '$type'"
98+
return 1
99+
else
100+
message="Creating $message"
101+
fi
102+
103+
content=`base64 -i "$src"`
104+
data="{\"branch\":\"gh-pages\",\"message\":\"$message\",\"content\":\"$content\"$sha}"
105+
106+
echo "$data" | curl -s -k -H "Authorization: token $GITHUB_TOKEN" -H "Accept: application/vnd.github.v3.raw+json" -X PUT --data @- "https://api.github.com/repos/$GITHUB_REPOSITORY/contents/$path"
107+
}
108+
109+
function git_safe_upload_to_pages(){
110+
local path=$1
111+
local file="$2"
112+
local name=$(basename "$file")
113+
local size=`get_file_size "$file"`
114+
local upload_res=`git_upload_to_pages "$path" "$file"`
115+
if [ $? -ne 0 ]; then
116+
>&2 echo "ERROR: Failed to upload '$name' ($?)"
117+
return 1
118+
fi
119+
up_size=`echo "$upload_res" | jq -r '.content.size'`
120+
if [ $up_size -ne $size ]; then
121+
>&2 echo "ERROR: Uploaded size does not match! $up_size != $size"
122+
#git_delete_asset
123+
return 1
124+
fi
125+
echo "$upload_res" | jq -r '.content.download_url'
126+
return $?
127+
}
128+
129+
function merge_package_json(){
130+
local jsonLink=$1
131+
local jsonOut=$2
132+
local old_json=$OUTPUT_DIR/oldJson.json
133+
local merged_json=$OUTPUT_DIR/mergedJson.json
134+
135+
echo "Downloading previous JSON $jsonLink ..."
136+
curl -L -o "$old_json" "https://github.com/$GITHUB_REPOSITORY/releases/download/$jsonLink?access_token=$GITHUB_TOKEN" 2>/dev/null
137+
if [ $? -ne 0 ]; then echo "ERROR: Download Failed! $?"; exit 1; fi
138+
139+
echo "Creating new JSON ..."
140+
set +e
141+
stdbuf -oL python "$PACKAGE_JSON_MERGE" "$jsonOut" "$old_json" > "$merged_json"
142+
set -e
143+
144+
set -v
145+
if [ ! -s $merged_json ]; then
146+
rm -f "$merged_json"
147+
echo "Nothing to merge"
148+
else
149+
rm -f "$jsonOut"
150+
mv "$merged_json" "$jsonOut"
151+
echo "JSON data successfully merged"
152+
fi
153+
rm -f "$old_json"
154+
set +v
155+
}
156+
157+
set -e
158+
159+
##
160+
## PACKAGE ZIP
161+
##
162+
163+
mkdir -p "$OUTPUT_DIR"
164+
PKG_DIR="$OUTPUT_DIR/$PACKAGE_NAME"
165+
PACKAGE_ZIP="$PACKAGE_NAME.zip"
166+
167+
echo "Updating submodules ..."
168+
git -C "$GITHUB_WORKSPACE" submodule update --init --recursive > /dev/null 2>&1
169+
170+
mkdir -p "$PKG_DIR/tools"
171+
172+
# Copy all core files to the package folder
173+
echo "Copying files for packaging ..."
174+
cp -f "$GITHUB_WORKSPACE/boards.txt" "$PKG_DIR/"
175+
cp -f "$GITHUB_WORKSPACE/programmers.txt" "$PKG_DIR/"
176+
cp -Rf "$GITHUB_WORKSPACE/cores" "$PKG_DIR/"
177+
cp -Rf "$GITHUB_WORKSPACE/libraries" "$PKG_DIR/"
178+
cp -Rf "$GITHUB_WORKSPACE/variants" "$PKG_DIR/"
179+
cp -f "$GITHUB_WORKSPACE/tools/espota.exe" "$PKG_DIR/tools/"
180+
cp -f "$GITHUB_WORKSPACE/tools/espota.py" "$PKG_DIR/tools/"
181+
cp -f "$GITHUB_WORKSPACE/tools/esptool.py" "$PKG_DIR/tools/"
182+
cp -f "$GITHUB_WORKSPACE/tools/gen_esp32part.py" "$PKG_DIR/tools/"
183+
cp -f "$GITHUB_WORKSPACE/tools/gen_esp32part.exe" "$PKG_DIR/tools/"
184+
cp -Rf "$GITHUB_WORKSPACE/tools/partitions" "$PKG_DIR/tools/"
185+
cp -Rf "$GITHUB_WORKSPACE/tools/sdk" "$PKG_DIR/tools/"
186+
187+
# Remove unnecessary files in the package folder
188+
echo "Cleaning up folders ..."
189+
find "$PKG_DIR" -name '*.DS_Store' -exec rm -f {} \;
190+
find "$PKG_DIR" -name '*.git*' -type f -delete
191+
192+
# Replace tools locations in platform.txt
193+
echo "Generating platform.txt..."
194+
cat "$GITHUB_WORKSPACE/platform.txt" | \
195+
sed "s/version=.*/version=$ver$extent/g" | \
196+
sed 's/runtime.tools.xtensa-esp32-elf-gcc.path={runtime.platform.path}\/tools\/xtensa-esp32-elf//g' | \
197+
sed 's/tools.esptool_py.path={runtime.platform.path}\/tools\/esptool/tools.esptool_py.path=\{runtime.tools.esptool_py.path\}/g' \
198+
> "$PKG_DIR/platform.txt"
199+
200+
# Add header with version information
201+
echo "Generating core_version.h ..."
202+
ver_define=`echo $RELEASE_TAG | tr "[:lower:].\055" "[:upper:]_"`
203+
ver_hex=`git -C "$GITHUB_WORKSPACE" rev-parse --short=8 HEAD 2>/dev/null`
204+
echo \#define ARDUINO_ESP32_GIT_VER 0x$ver_hex > "$PKG_DIR/cores/esp32/core_version.h"
205+
echo \#define ARDUINO_ESP32_GIT_DESC `git -C "$GITHUB_WORKSPACE" describe --tags 2>/dev/null` >> "$PKG_DIR/cores/esp32/core_version.h"
206+
echo \#define ARDUINO_ESP32_RELEASE_$ver_define >> "$PKG_DIR/cores/esp32/core_version.h"
207+
echo \#define ARDUINO_ESP32_RELEASE \"$ver_define\" >> "$PKG_DIR/cores/esp32/core_version.h"
208+
209+
# Compress package folder
210+
echo "Creating ZIP ..."
211+
pushd "$OUTPUT_DIR" >/dev/null
212+
zip -qr "$PACKAGE_ZIP" "$PACKAGE_NAME"
213+
if [ $? -ne 0 ]; then echo "ERROR: Failed to create $PACKAGE_ZIP ($?)"; exit 1; fi
214+
215+
# Calculate SHA-256
216+
echo "Calculating SHA sum ..."
217+
PACKAGE_PATH="$OUTPUT_DIR/$PACKAGE_ZIP"
218+
PACKAGE_SHA=`shasum -a 256 "$PACKAGE_ZIP" | cut -f 1 -d ' '`
219+
PACKAGE_SIZE=`get_file_size "$PACKAGE_ZIP"`
220+
popd >/dev/null
221+
rm -rf "$PKG_DIR"
222+
echo "'$PACKAGE_ZIP' Created! Size: $PACKAGE_SIZE, SHA-256: $PACKAGE_SHA"
223+
echo
224+
225+
# Upload package to release page
226+
echo "Uploading package to release page ..."
227+
PACKAGE_URL=`git_safe_upload_asset "$PACKAGE_PATH"`
228+
echo "Package Uploaded"
229+
echo "Download URL: $PACKAGE_URL"
230+
echo
231+
232+
##
233+
## PACKAGE JSON
234+
##
235+
236+
# Construct JQ argument with package data
237+
jq_arg=".packages[0].platforms[0].version = \"$RELEASE_TAG\" | \
238+
.packages[0].platforms[0].url = \"$PACKAGE_URL\" |\
239+
.packages[0].platforms[0].archiveFileName = \"$PACKAGE_ZIP\" |\
240+
.packages[0].platforms[0].size = \"$PACKAGE_SIZE\" |\
241+
.packages[0].platforms[0].checksum = \"SHA-256:$PACKAGE_SHA\""
242+
243+
# Generate package JSONs
244+
echo "Genarating $PACKAGE_JSON_DEV ..."
245+
cat "$PACKAGE_JSON_TEMPLATE" | jq "$jq_arg" > "$OUTPUT_DIR/$PACKAGE_JSON_DEV"
246+
if [ "$RELEASE_PRE" == "false" ]; then
247+
echo "Genarating $PACKAGE_JSON_REL ..."
248+
cat "$PACKAGE_JSON_TEMPLATE" | jq "$jq_arg" > "$OUTPUT_DIR/$PACKAGE_JSON_REL"
249+
fi
250+
251+
# Figure out the last release or pre-release
252+
echo "Getting previous releases ..."
253+
releasesJson=`curl -sH "Authorization: token $GITHUB_TOKEN" "https://api.github.com/repos/$GITHUB_REPOSITORY/releases" 2>/dev/null`
254+
if [ $? -ne 0 ]; then echo "ERROR: Get Releases Failed! ($?)"; exit 1; fi
255+
256+
set +e
257+
prev_release=$(echo "$releasesJson" | jq -e -r '. | map(select(.draft == false and .prerelease == false)) | sort_by(.created_at | - fromdateiso8601) | .[0].tag_name')
258+
prev_any_release=$(echo "$releasesJson" | jq -e -r '. | map(select(.draft == false)) | sort_by(.created_at | - fromdateiso8601) | .[0].tag_name')
259+
shopt -s nocasematch
260+
if [ "$prev_any_release" == "$RELEASE_TAG" ]; then
261+
prev_release=$(echo "$releasesJson" | jq -e -r '. | map(select(.draft == false and .prerelease == false)) | sort_by(.created_at | - fromdateiso8601) | .[1].tag_name')
262+
prev_any_release=$(echo "$releasesJson" | jq -e -r '. | map(select(.draft == false)) | sort_by(.created_at | - fromdateiso8601) | .[1].tag_name')
263+
fi
264+
COMMITS_SINCE_RELEASE="$prev_any_release"
265+
shopt -u nocasematch
266+
set -e
267+
268+
# Merge package JSONs with previous releases
269+
if [ ! -z "$prev_any_release" ] && [ "$prev_any_release" != "null" ]; then
270+
echo "Merging with JSON from $prev_any_release ..."
271+
merge_package_json "$prev_any_release/$PACKAGE_JSON_DEV" "$OUTPUT_DIR/$PACKAGE_JSON_DEV"
272+
fi
273+
274+
if [ "$RELEASE_PRE" == "false" ]; then
275+
COMMITS_SINCE_RELEASE="$prev_release"
276+
if [ ! -z "$prev_release" ] && [ "$prev_release" != "null" ]; then
277+
echo "Merging with JSON from $prev_release ..."
278+
merge_package_json "$prev_release/$PACKAGE_JSON_REL" "$OUTPUT_DIR/$PACKAGE_JSON_REL"
279+
fi
280+
fi
281+
282+
echo "Previous Release: $prev_release"
283+
echo "Previous (any)release: $prev_any_release"
284+
echo
285+
286+
# Upload package JSONs
287+
echo "Uploading $PACKAGE_JSON_DEV ..."
288+
echo "Download URL: "`git_safe_upload_asset "$OUTPUT_DIR/$PACKAGE_JSON_DEV"`
289+
echo "Pages URL: "`git_safe_upload_to_pages "$PACKAGE_JSON_DEV" "$OUTPUT_DIR/$PACKAGE_JSON_DEV"`
290+
echo
291+
if [ "$RELEASE_PRE" == "false" ]; then
292+
echo "Uploading $PACKAGE_JSON_REL ..."
293+
echo "Download URL: "`git_safe_upload_asset "$OUTPUT_DIR/$PACKAGE_JSON_REL"`
294+
echo "Pages URL: "`git_safe_upload_to_pages "$PACKAGE_JSON_REL" "$OUTPUT_DIR/$PACKAGE_JSON_REL"`
295+
echo
296+
fi
297+
298+
##
299+
## RELEASE NOTES
300+
##
301+
302+
# Create release notes
303+
echo "Preparing release notes ..."
304+
releaseNotes=""
305+
306+
# Process annotated tags
307+
relNotesRaw=`git -C "$GITHUB_WORKSPACE" show -s --format=%b $RELEASE_TAG`
308+
readarray -t msgArray <<<"$relNotesRaw"
309+
arrLen=${#msgArray[@]}
310+
if [ $arrLen > 3 ] && [ "${msgArray[0]:0:3}" == "tag" ]; then
311+
ind=3
312+
while [ $ind -lt $arrLen ]; do
313+
if [ $ind -eq 3 ]; then
314+
releaseNotes="#### ${msgArray[ind]}"
315+
releaseNotes+=$'\r\n'
316+
else
317+
oneLine="$(echo -e "${msgArray[ind]}" | sed -e 's/^[[:space:]]*//')"
318+
if [ ${#oneLine} -gt 0 ]; then
319+
if [ "${oneLine:0:2}" == "* " ]; then oneLine=$(echo ${oneLine/\*/-}); fi
320+
if [ "${oneLine:0:2}" != "- " ]; then releaseNotes+="- "; fi
321+
releaseNotes+="$oneLine"
322+
releaseNotes+=$'\r\n'
323+
fi
324+
fi
325+
let ind=$ind+1
326+
done
327+
fi
328+
329+
# Append Commit Messages
330+
if [ ! -z "$COMMITS_SINCE_RELEASE" ] && [ "$COMMITS_SINCE_RELEASE" != "null" ]; then
331+
echo "Getting commits since $COMMITS_SINCE_RELEASE ..."
332+
commitFile=$OUTPUT_DIR/commits.txt
333+
git -C "$GITHUB_WORKSPACE" log --oneline $COMMITS_SINCE_RELEASE.. > "$OUTPUT_DIR/commits.txt"
334+
releaseNotes+=$'\r\n##### Commits\r\n'
335+
IFS=$'\n'
336+
for next in `cat $commitFile`
337+
do
338+
IFS=' ' read -r commitId commitMsg <<< "$next"
339+
commitLine="- [$commitId](https://github.com/$GITHUB_REPOSITORY/commit/$commitId) $commitMsg"
340+
releaseNotes+="$commitLine"
341+
releaseNotes+=$'\r\n'
342+
done
343+
rm -f $commitFile
344+
fi
345+
346+
# Prepend the original release body
347+
if [ "${RELEASE_BODY: -1}" == $'\r' ]; then
348+
RELEASE_BODY="${RELEASE_BODY:0:-1}"
349+
else
350+
RELEASE_BODY="$RELEASE_BODY"
351+
fi
352+
RELEASE_BODY+=$'\r\n'
353+
releaseNotes="$RELEASE_BODY$releaseNotes"
354+
355+
# Update release page
356+
echo "Updating release notes ..."
357+
releaseNotes=$(printf '%s' "$releaseNotes" | python -c 'import json,sys; print(json.dumps(sys.stdin.read()))')
358+
releaseNotes=${releaseNotes:1:-1}
359+
curlData="{\"body\": \"$releaseNotes\"}"
360+
releaseData=`curl --data "$curlData" "https://api.github.com/repos/$GITHUB_REPOSITORY/releases/$RELEASE_ID?access_token=$GITHUB_TOKEN" 2>/dev/null`
361+
if [ $? -ne 0 ]; then echo "ERROR: Updating Release Failed: $?"; exit 1; fi
362+
echo "Release notes successfully updated"
363+
echo
364+
365+
##
366+
## SUBMODULE VERSIONS
367+
##
368+
369+
# Upload submodules versions
370+
echo "Generating submodules.txt ..."
371+
git -C "$GITHUB_WORKSPACE" submodule status > "$OUTPUT_DIR/submodules.txt"
372+
echo "Uploading submodules.txt ..."
373+
echo "Download URL: "`git_safe_upload_asset "$OUTPUT_DIR/submodules.txt"`
374+
echo ""
375+
set +e
376+
377+
##
378+
## DONE
379+
##
380+
echo "DONE!"

‎.github/workflows/main.yml renamed to ‎.github/workflows/push.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ jobs:
2020
steps:
2121
- uses: actions/checkout@v1
2222
- name: Build Sketches
23-
run: bash ./tools/ci/on-push.sh ${{ matrix.chunk }} 15
23+
run: bash ./.github/scripts/on-push.sh ${{ matrix.chunk }} 15
2424

2525
# Windows and MacOS
2626
build-arduino-win-mac:
@@ -33,7 +33,7 @@ jobs:
3333
steps:
3434
- uses: actions/checkout@v1
3535
- name: Build Sketches
36-
run: bash ./tools/ci/on-push.sh
36+
run: bash ./.github/scripts/on-push.sh
3737

3838
# PlatformIO on Windows, Ubuntu and Mac
3939
build-platformio:
@@ -46,4 +46,4 @@ jobs:
4646
steps:
4747
- uses: actions/checkout@v1
4848
- name: Build Sketches
49-
run: bash ./tools/ci/on-push.sh 1 1 #equal and non-zero to trigger PIO
49+
run: bash ./.github/scripts/on-push.sh 1 1 #equal and non-zero to trigger PIO

‎.github/workflows/release.yml

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
name: ESP32 Arduino Release
2+
3+
on:
4+
release:
5+
types: published
6+
7+
jobs:
8+
build:
9+
name: Publish Release
10+
runs-on: ubuntu-latest
11+
12+
steps:
13+
- uses: actions/checkout@master
14+
- name: Build Release
15+
env:
16+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
17+
run: bash ./.github/scripts/on-release.sh

‎.travis.yml

Lines changed: 5 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -21,42 +21,27 @@ jobs:
2121
- name: "Build Arduino 0"
2222
if: tag IS blank AND (type = pull_request OR (type = push AND branch = master))
2323
stage: build
24-
script: $TRAVIS_BUILD_DIR/tools/ci/on-push.sh 0 4
24+
script: $TRAVIS_BUILD_DIR/.github/scripts/on-push.sh 0 10
2525

2626
- name: "Build Arduino 1"
2727
if: tag IS blank AND (type = pull_request OR (type = push AND branch = master))
2828
stage: build
29-
script: $TRAVIS_BUILD_DIR/tools/ci/on-push.sh 1 4
29+
script: $TRAVIS_BUILD_DIR/.github/scripts/on-push.sh 1 10
3030

3131
- name: "Build Arduino 2"
3232
if: tag IS blank AND (type = pull_request OR (type = push AND branch = master))
3333
stage: build
34-
script: $TRAVIS_BUILD_DIR/tools/ci/on-push.sh 2 4
34+
script: $TRAVIS_BUILD_DIR/.github/scripts/on-push.sh 2 10
3535

3636
- name: "Build Arduino 3"
3737
if: tag IS blank AND (type = pull_request OR (type = push AND branch = master))
3838
stage: build
39-
script: $TRAVIS_BUILD_DIR/tools/ci/on-push.sh 3 4
39+
script: $TRAVIS_BUILD_DIR/.github/scripts/on-push.sh 3 10
4040

4141
- name: "Build PlatformIO"
4242
if: tag IS blank AND (type = pull_request OR (type = push AND branch = master))
4343
stage: build
44-
script: $TRAVIS_BUILD_DIR/tools/ci/on-push.sh 4 4
45-
46-
- name: "Package & Deploy"
47-
if: tag IS present
48-
stage: deploy
49-
env:
50-
- secure: "l/4Dt+KQ/mACtGAHDUsPr66fUte840PZoQ4xpPikqWZI0uARu4l+Ym7+sHinnT6fBqrj8AJeBYGz4nFa8NK4LutZn9mSD40w+sxl0wSV4oHV8rzKe3Cd8+sMG3+o33yWoikMNjSvqa73Q0rm+SgrlInNdZbuAyixL+a2alaWSnGPm4F2xwUGj+S33TOy5P/Xp77CYtCV5S8vzyk/eEdNhoF0GYePJVdfuzCOUjXMyT5OWxORkzzQ7Hnn/Ka/RDfV8Si4HgujLQBrK5q6iPnNBFqBSqilYBepSMn4opnOBpIm0SCgePz7XQEFC83buA7GUcnCnfg38bf+dCwHaODf1d1PmqVRYt2QmfinexXtM4afAtL0iBUDtvrfnXHzwW9w82VeZhpbJSVh9DUQvB0IlsZeCz9J9PUBAi3N+SMX+9l+BomYwRUlPuKY+Ef2JKk9q6mxtUkky5R0daAlVxEhpVdQks1rT+T+NMoDMemxQ3SKEiqAHh6EgHecruszffmZ71uLX9MpERpew0qN+UFiafws+jkTjx+3yF9yut0Hf9sMbeAYzzkGzRqJTUEBJ6B29Cql8M0yRXCNN/8wuuTHhG8esstozga4ZQoIVrq7mEAgup376PTcNfr1+imbbWVQ7lJdYIuDe6OS5V3OX6np11vgK/DbhfyzvQv9Z1zAGnM="
51-
- REMOTE_URL=https://github.com/$TRAVIS_REPO_SLUG/releases/download/$TRAVIS_TAG
52-
script: bash $TRAVIS_BUILD_DIR/tools/ci/build-release.sh -a$ESP32_GITHUB_TOKEN
53-
before_deploy: git submodule update --init
54-
deploy:
55-
- provider: script
56-
skip_cleanup: true
57-
script: bash $TRAVIS_BUILD_DIR/tools/ci/deploy-release.sh -t$TRAVIS_TAG -a$ESP32_GITHUB_TOKEN -s$TRAVIS_REPO_SLUG -drelease
58-
on:
59-
tags: true
44+
script: $TRAVIS_BUILD_DIR/.github/scripts/on-push.sh 1 1
6045

6146
notifications:
6247
email:

‎appveyor.yml

Lines changed: 0 additions & 19 deletions
This file was deleted.

‎tools/ci/build-release.sh

Lines changed: 0 additions & 379 deletions
This file was deleted.

‎tools/ci/deploy-release.sh

Lines changed: 0 additions & 248 deletions
This file was deleted.

0 commit comments

Comments
 (0)
Please sign in to comment.