Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
A
arduino-esp32
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Analytics
Analytics
Repository
Value Stream
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Commits
Open sidebar
xpstem
arduino-esp32
Commits
b855eb23
Commit
b855eb23
authored
Jun 29, 2018
by
pacucha42
Committed by
Me No Dev
Jun 29, 2018
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
* arduino-esp32 release mgmt. update (#1557)
parent
eb4e8913
Changes
2
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
24 additions
and
15 deletions
+24
-15
tools/build-release.sh
tools/build-release.sh
+18
-12
tools/deploy.sh
tools/deploy.sh
+6
-3
No files found.
tools/build-release.sh
View file @
b855eb23
...
@@ -162,10 +162,10 @@ shopt -u nocasematch
...
@@ -162,10 +162,10 @@ shopt -u nocasematch
echo
"Package version:
$ver
"
echo
"Package version:
$ver
"
echo
"Git branch name:
$branch_name
"
echo
"Git branch name:
$branch_name
"
echo
"Git revision number
(short)
:
$verx
"
echo
"Git revision number:
$verx
"
echo
"Package name extension:
$extent
"
echo
"Package name extension:
$extent
"
echo
"Travis CI tag:
$TRAVIS_TAG
"
echo
"Travis CI tag:
$TRAVIS_TAG
"
echo
"Release package name
(unzipped)
:
$package_name
"
echo
"Release package name:
$package_name
"
# Set REMOTE_URL environment variable to the address where the package will be
# Set REMOTE_URL environment variable to the address where the package will be
# available for download. This gets written into package json file.
# available for download. This gets written into package json file.
...
@@ -191,7 +191,6 @@ echo "Package build processing:"
...
@@ -191,7 +191,6 @@ echo "Package build processing:"
echo
"========================="
echo
"========================="
echo
echo
echo
"Prepare files for the package main archive:"
echo
"Prepare files for the package main archive:"
echo
"-------------------------------------------"
echo
" - copying neccessary files from current Git repository..."
echo
" - copying neccessary files from current Git repository..."
# <PACKAGE ROOT>
# <PACKAGE ROOT>
...
@@ -264,7 +263,7 @@ fi
...
@@ -264,7 +263,7 @@ fi
# Calculate SHA sum and size of ZIP archive
# Calculate SHA sum and size of ZIP archive
sha
=
`
shasum
-a
256
$package_name_zip
|
cut
-f
1
-d
' '
`
sha
=
`
shasum
-a
256
$package_name_zip
|
cut
-f
1
-d
' '
`
size
=
`
/bin/ls
-l
$package_name_zip
|
awk
'{print $5}'
`
size
=
`
/bin/ls
-l
$package_name_zip
|
awk
'{print $5}'
`
echo
"
${
package_name_zip
}
creation OK (size:
$size
B
, sha2:
$sha
)"
echo
"
${
package_name_zip
}
creation OK (size:
$size
, sha2:
$sha
)"
echo
echo
echo
"Making
$package_name
JSON definition file(s):"
echo
"Making
$package_name
JSON definition file(s):"
...
@@ -293,23 +292,30 @@ rm -rf $outdir
...
@@ -293,23 +292,30 @@ rm -rf $outdir
# Get all previously released versions
# Get all previously released versions
echo
" - fetching previous (pre)release versions from GitHub..."
echo
" - fetching previous (pre)release versions from GitHub..."
set
+e
releasesJson
=
$releaseDir
/releases.json
releasesJson
=
$releaseDir
/releases.json
curl
-sH
"Authorization: token
$curlAuth
"
https://api.github.com/repos/
$TRAVIS_REPO_SLUG
/releases
>
$releasesJson
curl
-sH
"Authorization: token
$curlAuth
"
https://api.github.com/repos/
$TRAVIS_REPO_SLUG
/releases
>
$releasesJson
set
+e
# Previous final release (prerelase == false)
prev_release
=
$(
jq
-e
-r
'. | map(select(.draft == false and .prerelease == false)) | sort_by(.created_at | - fromdateiso8601) | .[0].tag_name'
${
releasesJson
}
)
prev_release
=
$(
jq
-e
-r
'. | map(select(.draft == false and .prerelease == false)) | sort_by(.created_at | - fromdateiso8601) | .[0].tag_name'
${
releasesJson
}
)
# Previous release (possibly a pre-release)
prev_any_release
=
$(
jq
-e
-r
'. | map(select(.draft == false)) | sort_by(.created_at | - fromdateiso8601) | .[0].tag_name'
${
releasesJson
}
)
prev_any_release
=
$(
jq
-e
-r
'. | map(select(.draft == false)) | sort_by(.created_at | - fromdateiso8601) | .[0].tag_name'
${
releasesJson
}
)
# Previous pre-release
prev_pre_release
=
$(
jq
-e
-r
'. | map(select(.draft == false and .prerelease == true)) | sort_by(.created_at | - fromdateiso8601) | .[0].tag_name'
${
releasesJson
}
)
prev_pre_release
=
$(
jq
-e
-r
'. | map(select(.draft == false and .prerelease == true)) | sort_by(.created_at | - fromdateiso8601) | .[0].tag_name'
${
releasesJson
}
)
shopt
-s
nocasematch
if
[
"
$prev_any_release
"
==
"
$TRAVIS_TAG
"
]
;
then
prev_release
=
$(
jq
-e
-r
'. | map(select(.draft == false and .prerelease == false)) | sort_by(.created_at | - fromdateiso8601) | .[1].tag_name'
${
releasesJson
}
)
prev_any_release
=
$(
jq
-e
-r
'. | map(select(.draft == false)) | sort_by(.created_at | - fromdateiso8601) | .[1].tag_name'
${
releasesJson
}
)
prev_pre_release
=
$(
jq
-e
-r
'. | map(select(.draft == false and .prerelease == true)) | sort_by(.created_at | - fromdateiso8601) | .[1].tag_name'
${
releasesJson
}
)
fi
shopt
-u
nocasematch
set
-e
set
-e
rm
-f
"
$releasesJson
"
rm
-f
"
$releasesJson
"
echo
"
--
previous Release:
$prev_release
"
echo
"
previous Release:
$prev_release
"
echo
"
--
previous (?Pre-)release:
$prev_any_release
"
echo
"
previous (?Pre-)release:
$prev_any_release
"
echo
"
--
previous Pre-release:
$prev_pre_release
"
echo
"
previous Pre-release:
$prev_pre_release
"
# add generated items to JSON package-definition contents
# add generated items to JSON package-definition contents
jq_arg
=
".packages[0].platforms[0].version =
\"
$ver
\"
|
\
jq_arg
=
".packages[0].platforms[0].version =
\"
$ver
\"
|
\
...
...
tools/deploy.sh
View file @
b855eb23
...
@@ -119,21 +119,24 @@ fi
...
@@ -119,21 +119,24 @@ fi
releaseNotes
=
$(
perl
-pe
's/\r?\n/\\n/'
<<<
${
releaseNotes
}
)
releaseNotes
=
$(
perl
-pe
's/\r?\n/\\n/'
<<<
${
releaseNotes
}
)
# Check possibly existing release for current tag
# Check possibly existing release for current tag
echo
"Checking for possible releases of current tag
$varTagName
..."
# (eg build invoked by Create New Release GHUI button -> GH default release pack created immediatelly including default assests)
# (eg build invoked by Create New Release GHUI button -> GH default release pack created immediatelly including default assests)
HTTP_RESPONSE
=
$(
curl
-L
--silent
--write-out
"HTTPSTATUS:%{http_code}"
https://api.github.com/repos/
$varRepoSlug
/releases/tags/
$varTagName
)
HTTP_RESPONSE
=
$(
curl
-L
--silent
--write-out
"HTTPSTATUS:%{http_code}"
https://api.github.com/repos/
$varRepoSlug
/releases/tags/
$varTagName
?access_token
=
$varAccessToken
)
HTTP_BODY
=
$(
echo
$HTTP_RESPONSE
|
sed
-e
's/HTTPSTATUS\:.*//g'
)
HTTP_BODY
=
$(
echo
$HTTP_RESPONSE
|
sed
-e
's/HTTPSTATUS\:.*//g'
)
HTTP_STATUS
=
$(
echo
$HTTP_RESPONSE
|
tr
-d
'\n'
|
sed
-e
's/.*HTTPSTATUS://'
)
HTTP_STATUS
=
$(
echo
$HTTP_RESPONSE
|
tr
-d
'\n'
|
sed
-e
's/.*HTTPSTATUS://'
)
echo
" HTTP server response code:
$HTTP_STATUS
"
# if the release exists, append/update recent files to its assets vector
# if the release exists, append/update recent files to its assets vector
if
[
$HTTP_STATUS
-eq
200
]
;
then
if
[
$HTTP_STATUS
-eq
200
]
;
then
releaseId
=
$(
echo
$HTTP_BODY
| jq
-r
'.id'
)
releaseId
=
$(
echo
$HTTP_BODY
| jq
-r
'.id'
)
echo
"
GH release exists for current
$varTagName
tag
(id
$releaseId
)"
echo
"
-
$varTagName
release found
(id
$releaseId
)"
#... or create a new release record
#... or create a new release record
else
else
curlData
=
"{
\"
tag_name
\"
:
\"
$varTagName
\"
,
\"
target_commitish
\"
:
\"
master
\"
,
\"
name
\"
:
\"
v
$varTagName
\"
,
\"
body
\"
:
\"
$releaseNotes
\"
,
\"
draft
\"
: false,
\"
prerelease
\"
:
$varPrerelease
}"
curlData
=
"{
\"
tag_name
\"
:
\"
$varTagName
\"
,
\"
target_commitish
\"
:
\"
master
\"
,
\"
name
\"
:
\"
v
$varTagName
\"
,
\"
body
\"
:
\"
$releaseNotes
\"
,
\"
draft
\"
: false,
\"
prerelease
\"
:
$varPrerelease
}"
#echo "DEBUG: curl --data \"${curlData}\" https://api.github.com/repos/${varRepoSlug}/releases?access_token=$varAccessToken | jq -r '.id'"
#echo "DEBUG: curl --data \"${curlData}\" https://api.github.com/repos/${varRepoSlug}/releases?access_token=$varAccessToken | jq -r '.id'"
releaseId
=
$(
curl
--data
"
$curlData
"
https://api.github.com/repos/
$varRepoSlug
/releases?access_token
=
$varAccessToken
| jq
-r
'.id'
)
releaseId
=
$(
curl
--data
"
$curlData
"
https://api.github.com/repos/
$varRepoSlug
/releases?access_token
=
$varAccessToken
| jq
-r
'.id'
)
echo
"
New GH release created for
$varTagName
tag
(id
$releaseId
)"
echo
"
- new release created for
$varTagName
(id
$releaseId
)"
fi
fi
# Assets defined by dir contents
# Assets defined by dir contents
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment