mirror of
https://gitee.com/openharmony/third_party_littlefs
synced 2024-11-23 14:59:50 +00:00
b84fb6bcc5
Now littlefs's Makefile can work with a custom build directory for compilation output. Just set the BUILDDIR variable and the Makefile will take care of the rest. make BUILDDIR=build size This makes it very easy to compare builds with different compile-time configurations or different cross-compilers. This meant most of code.py's build isolation is no longer needed, so revisted the scripts and cleaned/tweaked a number of things. Also bought code.py in line with coverage.py, fixing some of the inconsistencies that were created while developing these scripts. One change to note was removing the inline measuring logic, I realized this feature is unnecessary thanks to GCC's -fkeep-static-functions and -fno-inline flags.
98 lines
3.2 KiB
YAML
98 lines
3.2 KiB
YAML
name: status
|
|
on:
|
|
workflow_run:
|
|
workflows: test
|
|
types: completed
|
|
|
|
jobs:
|
|
status:
|
|
runs-on: ubuntu-latest
|
|
continue-on-error: true
|
|
|
|
steps:
|
|
- run: echo "${{toJSON(github.event.workflow_run)}}"
|
|
|
|
# custom statuses?
|
|
- uses: dawidd6/action-download-artifact@v2
|
|
with:
|
|
workflow: ${{github.event.workflow_run.name}}
|
|
run_id: ${{github.event.workflow_run.id}}
|
|
name: status
|
|
path: status
|
|
- name: update-status
|
|
run: |
|
|
# TODO remove this
|
|
ls status
|
|
for f in status/*.json
|
|
do
|
|
cat $f
|
|
done
|
|
|
|
shopt -s nullglob
|
|
for s in status/*.json
|
|
do
|
|
# parse requested status
|
|
export STATE="$(jq -er '.state' $s)"
|
|
export CONTEXT="$(jq -er '.context' $s)"
|
|
export DESCRIPTION="$(jq -er '.description' $s)"
|
|
# help lookup URL for job/steps because GitHub makes
|
|
# it VERY HARD to link to specific jobs
|
|
export TARGET_URL="$(
|
|
jq -er '.target_url // empty' $s || (
|
|
export TARGET_JOB="$(jq -er '.target_job' $s)"
|
|
export TARGET_STEP="$(jq -er '.target_step // ""' $s)"
|
|
curl -sS -H "authorization: token ${{secrets.GITHUB_TOKEN}}" \
|
|
"$GITHUB_API_URL/repos/$GITHUB_REPOSITORY/actions/runs/`
|
|
`${{github.event.workflow_run.id}}/jobs" \
|
|
| jq -er '.jobs[]
|
|
| select(.name == env.TARGET_JOB)
|
|
| .html_url
|
|
+ "?check_suite_focus=true"
|
|
+ ((.steps[]
|
|
| select(.name == env.TARGET_STEP)
|
|
| "#step:\(.number):0") // "")'))"
|
|
# TODO remove this
|
|
# print for debugging
|
|
echo "$(jq -nc '{
|
|
state: env.STATE,
|
|
context: env.CONTEXT,
|
|
description: env.DESCRIPTION,
|
|
target_url: env.TARGET_URL}')"
|
|
# update status
|
|
curl -sS -H "authorization: token ${{secrets.GITHUB_TOKEN}}" \
|
|
-X POST \
|
|
"$GITHUB_API_URL/repos/$GITHUB_REPOSITORY/statuses/`
|
|
`${{github.event.workflow_run.head_sha}}" \
|
|
-d "$(jq -nc '{
|
|
state: env.STATE,
|
|
context: env.CONTEXT,
|
|
description: env.DESCRIPTION,
|
|
target_url: env.TARGET_URL}')"
|
|
|
|
#if jq -er '.target_url' $s
|
|
#then
|
|
# export TARGET_URL="$(jq -er '.target_url' $s)"
|
|
#elif jq -er '.target_job' $s
|
|
#then
|
|
#
|
|
#fi
|
|
|
|
done
|
|
|
|
|
|
|
|
|
|
# - id: status
|
|
# run: |
|
|
# echo "::set-output name=description::$(cat statuses/x86_64.txt | tr '\n' ' ')"
|
|
# - uses: octokit/request-action@v2.x
|
|
# with:
|
|
# route: POST /repos/{repo}/status/{sha}
|
|
# repo: ${{github.repository}}
|
|
# sha: ${{github.event.status.sha}}
|
|
# context: ${{github.event.status.context}}
|
|
# state: ${{github.event.status.state}}
|
|
# description: ${{steps.status.outputs.description}}
|
|
# target_url: ${{github.event.status.target_url}}
|
|
#
|