Skip to content

Daily Lines of Code Report #27

Daily Lines of Code Report

Daily Lines of Code Report #27

Workflow file for this run

name: Daily Lines of Code Report
on:
schedule:
# Every day at UTC midnight
- cron: "0 0 * * 1,2,3,4,5"
workflow_dispatch:
env:
RUST_VERSION: 1.81.0
jobs:
loc:
name: Count ethrex loc and generate report
runs-on: ubuntu-latest
steps:
- name: Checkout sources
uses: actions/checkout@v4
- name: Rustup toolchain install
uses: dtolnay/rust-toolchain@stable
with:
toolchain: ${{ env.RUST_VERSION }}
- name: Add Rust Cache
uses: Swatinem/rust-cache@v2
- name: Restore cache
id: cache-loc-report
uses: actions/cache@v4
with:
path: loc_report.json
key: loc-report-${{ github.ref_name }}
restore-keys: |
loc-report-
- name: Rename cached loc_report.json to loc_report.json.old
if: steps.cache-loc-report.outputs.cache-hit != ''
run: mv loc_report.json loc_report.json.old
- name: Generate the loc report
run: |
make loc
- name: Save new loc_report.json to cache
if: success()
uses: actions/cache@v4
with:
path: loc_report.json
key: loc-report-${{ github.ref_name }}
- name: Post results in summary
run: |
echo "# 'ethrex' lines of code report" >> $GITHUB_STEP_SUMMARY
cat loc_report_github.txt >> $GITHUB_STEP_SUMMARY
- name: Post results to Slack
env:
SLACK_WEBHOOKS: >
${{ github.event_name == 'workflow_dispatch'
&& secrets.TEST_CHANNEL_SLACK
|| format(
'{0} {1} {2}',
secrets.ETHREX_L1_SLACK_WEBHOOK,
secrets.ETHREX_L2_SLACK_WEBHOOK,
secrets.LEVM_SLACK_WEBHOOK
)
}}
run: |
for webhook in $SLACK_WEBHOOKS; do
sh .github/scripts/publish_loc.sh "$webhook"
done