Skip to content

display more informations in CI #129

display more informations in CI

display more informations in CI #129

Workflow file for this run

name: bench-test
on: [push]
jobs:
build:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
project:
[
commonlibrary_rust_ylong_http,
commonlibrary_rust_ylong_json,
commonlibrary_rust_ylong_runtime,
communication_ipc,
hiviewdfx_hilog,
hiviewdfx_hisysevent,
hiviewdfx_hitrace,
request_request,
systemabilitymgr_safwk,
systemabilitymgr_samgr,
]
steps:
- name: clone repo
uses: nick-fields/retry@v3
with:
timeout_minutes: 5
max_attempts: 3
retry_on: error
command: git clone https://gitee.com/openharmony/${{ matrix.project }}.git
- name: get script
working-directory: ./${{ matrix.project }}
run: curl -o counters.sh https://raw.githubusercontent.com/trusted-programming/mate/${GITHUB_REF##*/}/scripts/counters.sh
- name: count occurrences before
working-directory: ./${{ matrix.project }}
run: |
chmod +x counters.sh
bash counters.sh before
- name: add Cargo.toml dylint lib link
working-directory: ./${{ matrix.project }}
run: echo -e "\n[workspace.metadata.dylint]\nlibraries = [\n { git = \"https://github.com/trusted-programming/cargo-mate\"},\n]" >> Cargo.toml
- name: add rayon
working-directory: ./${{ matrix.project }}
shell: bash
run: |
find . -type f -name "Cargo.toml" | while read -r file; do
# Check if there is a [package] section in the file
if grep -qE "^\[package\]" "$file"; then
# Check if rayon is already in the dependencies
if ! grep -qE "^rayon =" "$file"; then
# Check if [dependencies] section exists
if ! grep -qE "^\[dependencies\]" "$file"; then
# Add [dependencies] section at the end of the file
echo -e "\n[dependencies]" >> "$file"
fi
# Add rayon under the [dependencies] line
sed -i '/\[dependencies\]/a rayon = "1.8.1"' "$file"
fi
fi
done
- name: Commit to clean up diff
working-directory: ./${{ matrix.project }}
run: |
git config --global user.name 'test'
git config --global user.email 'test@test.com'
git add .
git commit -am "test"
- name: install dylint
run: cargo install cargo-dylint dylint-link
- name: lint fix
working-directory: ./${{ matrix.project }}
continue-on-error: true
run: |
for i in {1..5}; do
echo "Iteration $i"
cargo dylint --all --workspace --fix -- --allow-dirty --allow-no-vcs --broken-code --lib
done
- name: cargo check
working-directory: ./${{ matrix.project }}
continue-on-error: true
run: cargo check
- name: git diff for .rs files
working-directory: ./${{ matrix.project }}
run: git diff -- '*.rs'
- name: count occurrences after
working-directory: ./${{ matrix.project }}
run: bash counters.sh after
- name: Calculate and print differences
run: |
echo "For loop count before: $for_loop_count_before"
echo "For loop count after: $for_loop_count_after"
echo "For loop count difference: $((for_loop_count_after - for_loop_count_before))"
echo "Iter count before: $iter_count_before"
echo "Iter count after: $iter_count_after"
echo "Iter count difference: $((iter_count_after - iter_count_before))"
echo "Iter mut count before: $iter_mut_count_before"
echo "Iter mut count after: $iter_mut_count_after"
echo "Iter mut count difference: $((iter_mut_count_after - iter_mut_count_before))"
echo "Into iter count before: $into_iter_count_before"
echo "Into iter count after: $into_iter_count_after"
echo "Into iter count difference: $((into_iter_count_after - into_iter_count_before))"
general_iter_count_before=$((iter_count_before + iter_mut_count_before + into_iter_count_before))
general_iter_count_after=$((iter_count_after + iter_mut_count_after + into_iter_count_after))
echo "Total .iter*() count before: $general_iter_count_before"
echo "Total .iter*() count after: $general_iter_count_after"
echo "Total .iter*() count difference: $((general_iter_count_after - general_iter_count_before))"
echo "Par iter count before: $par_iter_count_before"
echo "Par iter count after: $par_iter_count_after"
echo "Par iter count difference: $((par_iter_count_after - par_iter_count_before))"
echo "Into par iter count before: $into_par_iter_count_before"
echo "Into par iter count after: $into_par_iter_count_after"
echo "Into par iter count difference: $((into_par_iter_count_after - into_par_iter_count_before))"
echo "Par iter mut count before: $par_iter_mut_count_before"
echo "Par iter mut count after: $par_iter_mut_count_after"
echo "Par iter mut count difference: $((par_iter_mut_count_after - par_iter_mut_count_before))"
par_iter_total_count_before=$((par_iter_count_before + into_par_iter_count_before + par_iter_mut_count_before))
par_iter_total_count_after=$((par_iter_count_after + into_par_iter_count_after + par_iter_mut_count_after))
echo "Total .par_iter*() count before: $par_iter_total_count_before"
echo "Total .par_iter*() count after: $par_iter_total_count_after"
echo "Total .par_iter*() count difference: $((par_iter_total_count_after - par_iter_total_count_before))"