Skip to content

Commit cea1265

Browse files
Merge pull request #1886 from jasonrandrews/tool-installs
Script and GitHub Action to record published Learning Paths from GitHub Project
2 parents b6fc5b6 + a9edd74 commit cea1265

File tree

4 files changed

+101
-8
lines changed

4 files changed

+101
-8
lines changed

.github/workflows/monthly-report.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ jobs:
1313
- name: Set up Python
1414
uses: actions/setup-python@v5
1515
with:
16-
python-version: '3.11'
16+
python-version: '3.12'
1717

1818
- name: Install dependencies
1919
run: |
@@ -23,6 +23,7 @@ jobs:
2323
- name: Generate monthly report
2424
env:
2525
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
26+
PAT: ${{ secrets.PAT }}
2627
run: |
2728
python tools/generate_monthly_report.py
2829
Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
## Learning Path Monthly Report for March 2025 - April 2025
2+
3+
## Planned Learning Paths
4+
| Title | Program | Created Date |
5+
|-------|-----|--------------|
6+
| [Buildkite runners on Arm LP](https://github.com/ArmDeveloperEcosystem/roadmap/issues/12) | ACM | April 17, 2025 |
7+
| [OLAP workload benchmarking for Axion/Graviton](https://github.com/ArmDeveloperEcosystem/roadmap/issues/11) | ACM | April 15, 2025 |
8+
| [Go Migration and benchmarking for Axion](https://github.com/ArmDeveloperEcosystem/roadmap/issues/8) | ACM | April 10, 2025 |
9+
| [vLLM batch inferencing with Arm optimizations](https://github.com/ArmDeveloperEcosystem/roadmap/issues/5) | ACM | April 08, 2025 |
10+
| [Llama multi-modal vision chatbot LP with demo](https://github.com/ArmDeveloperEcosystem/roadmap/issues/4) | ACM | April 08, 2025 |
11+
| [.NET Migration LP for Azure](https://github.com/ArmDeveloperEcosystem/roadmap/issues/1) | ACM | April 08, 2025 |
12+
13+
Total planned learning paths: 6
14+
15+
16+
17+
## Published Learning Paths
18+
| Title | Start Date | Publish Date | Time to Publish (days) | Program |
19+
|-------|--------------|-------------|----------------------|-----|
20+
| [Boost C++ performance by optimizing loops with boundary information](https://learn.arm.com/learning-paths/cross-platform/cpp-loop-size-context/) | March 26, 2025 | April 21, 2025 | 26 | ACM |
21+
| [Build a CCA Attestation Service on AWS with Veraison](https://learn.arm.com/learning-paths/servers-and-cloud-computing/cca-veraison-aws/) | March 20, 2025 | April 25, 2025 | 36 | |
22+
| [Building and Benchmarking DLRM on Arm Neoverse V2 with MLPerf](https://learn.arm.com/learning-paths/servers-and-cloud-computing/dlrm/) | February 28, 2025 | April 04, 2025 | 35 | ACM |
23+
| [Add Arm nodes to your GKE cluster using a multi-architecture Ollama container image](https://learn.arm.com/learning-paths/servers-and-cloud-computing/multiarch_ollama_on_gke/) | March 25, 2025 | March 31, 2025 | 6 | ACM |
24+
| [Optimizing graphics using Frame Advisor’s render graphs](https://learn.arm.com/learning-paths/mobile-graphics-and-gaming/render-graph-optimization/) | March 19, 2025 | April 13, 2025 | 25 | |
25+
| [Explore floating-point differences between x86 and Arm](https://learn.arm.com/learning-paths/cross-platform/floating-point-rounding-errors/) | March 17, 2025 | April 04, 2025 | 18 | ACM |
26+
| [Vision LLM inference on Android with KleidiAI and MNN](https://learn.arm.com/learning-paths/mobile-graphics-and-gaming/vision-llm-inference-on-android-with-kleidiai-and-mnn/) | March 17, 2025 | March 28, 2025 | 11 | |
27+
| [Explore Thread Synchronization in the Arm memory model](https://learn.arm.com/learning-paths/servers-and-cloud-computing/memory_consistency/) | March 14, 2025 | March 28, 2025 | 14 | ACM |
28+
| [Cyclone DDS](https://learn.arm.com/install-guides/cyclonedds/) | April 03, 2025 | April 04, 2025 | 1 | |
29+
| [Amazon Q Developer CLI](https://learn.arm.com/install-guides/aws-q-cli/) | March 31, 2025 | April 04, 2025 | 4 | |
30+
| [Learn about optimization techniques using the g++ compiler](https://learn.arm.com/learning-paths/servers-and-cloud-computing/cplusplus_compilers_flags/) | January 24, 2025 | March 28, 2025 | 63 | ACM |
31+
| [Deploy an AI Agent on Arm with llama.cpp and llama-cpp-agent using KleidiAI](https://learn.arm.com/learning-paths/servers-and-cloud-computing/ai-agent-on-cpu/) | February 17, 2025 | March 28, 2025 | 39 | ACM |
32+
| [Learn about the C++ memory model for porting applications to Arm](https://learn.arm.com/learning-paths/servers-and-cloud-computing/arm-cpp-memory-model/) | February 17, 2025 | March 28, 2025 | 39 | ACM |
33+
| [Bedrust - invoke models on Amazon Bedrock](https://learn.arm.com/install-guides/bedrust/) | April 09, 2025 | April 13, 2025 | 4 | |
34+
| [ROS - Robot Operating System](https://learn.arm.com/install-guides/ros2/) | March 07, 2025 | April 04, 2025 | 28 | |
35+
| [Deploy Open AD Kit containerized autonomous driving simulation on Arm Neoverse](https://learn.arm.com/learning-paths/automotive/openadkit1_container/) | April 15, 2025 | April 21, 2025 | 6 | |
36+
| [Automate Windows on Arm Builds with GitHub Arm-hosted Runners](https://learn.arm.com/learning-paths/laptops-and-desktops/gh-arm-runners-win/) | April 16, 2025 | April 25, 2025 | 9 | |
37+
| [Write NEON intrinsics using GitHub Copilot to improve Adler32 performance](https://learn.arm.com/learning-paths/cross-platform/adler32/) | April 21, 2025 | April 25, 2025 | 4 | ACM |
38+
| [Nerdctl](https://learn.arm.com/install-guides/nerdctl/) | April 22, 2025 | April 25, 2025 | 3 | ACM |
39+
40+
| Statistic | Value |
41+
|-----------|-------|
42+
| Number of Learning Paths published | 19 |
43+
| Number of ACM Learning Paths published | 10 |
44+
| Average time to publish (days) | 19.5 |
45+
| Longest time to publish (days) | 63 |
46+
47+
48+
_Report generated on April 28, 2025 at 16:29:22 CDT_
49+

data/reports/LP-report-2025-04.md

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
## Learning Path Monthly Report for April 2025
2+
3+
## Planned Learning Paths
4+
| Title | Program | Created Date |
5+
|-------|-----|--------------|
6+
| [Buildkite runners on Arm LP](https://github.com/ArmDeveloperEcosystem/roadmap/issues/12) | ACM | April 17, 2025 |
7+
| [OLAP workload benchmarking for Axion/Graviton](https://github.com/ArmDeveloperEcosystem/roadmap/issues/11) | ACM | April 15, 2025 |
8+
| [Go Migration and benchmarking for Axion](https://github.com/ArmDeveloperEcosystem/roadmap/issues/8) | ACM | April 10, 2025 |
9+
| [vLLM batch inferencing with Arm optimizations](https://github.com/ArmDeveloperEcosystem/roadmap/issues/5) | ACM | April 08, 2025 |
10+
| [Llama multi-modal vision chatbot LP with demo](https://github.com/ArmDeveloperEcosystem/roadmap/issues/4) | ACM | April 08, 2025 |
11+
| [.NET Migration LP for Azure](https://github.com/ArmDeveloperEcosystem/roadmap/issues/1) | ACM | April 08, 2025 |
12+
13+
Total planned learning paths: 6
14+
15+
16+
17+
## Published Learning Paths
18+
| Title | Start Date | Publish Date | Time to Publish (days) | Program |
19+
|-------|--------------|-------------|----------------------|-----|
20+
| [Boost C++ performance by optimizing loops with boundary information](https://learn.arm.com/learning-paths/cross-platform/cpp-loop-size-context/) | March 26, 2025 | April 21, 2025 | 26 | ACM |
21+
| [Build a CCA Attestation Service on AWS with Veraison](https://learn.arm.com/learning-paths/servers-and-cloud-computing/cca-veraison-aws/) | March 20, 2025 | April 25, 2025 | 36 | |
22+
| [Building and Benchmarking DLRM on Arm Neoverse V2 with MLPerf](https://learn.arm.com/learning-paths/servers-and-cloud-computing/dlrm/) | February 28, 2025 | April 04, 2025 | 35 | ACM |
23+
| [Optimizing graphics using Frame Advisor’s render graphs](https://learn.arm.com/learning-paths/mobile-graphics-and-gaming/render-graph-optimization/) | March 19, 2025 | April 13, 2025 | 25 | |
24+
| [Explore floating-point differences between x86 and Arm](https://learn.arm.com/learning-paths/cross-platform/floating-point-rounding-errors/) | March 17, 2025 | April 04, 2025 | 18 | ACM |
25+
| [Cyclone DDS](https://learn.arm.com/install-guides/cyclonedds/) | April 03, 2025 | April 04, 2025 | 1 | |
26+
| [Amazon Q Developer CLI](https://learn.arm.com/install-guides/aws-q-cli/) | March 31, 2025 | April 04, 2025 | 4 | |
27+
| [Bedrust - invoke models on Amazon Bedrock](https://learn.arm.com/install-guides/bedrust/) | April 09, 2025 | April 13, 2025 | 4 | |
28+
| [ROS - Robot Operating System](https://learn.arm.com/install-guides/ros2/) | March 07, 2025 | April 04, 2025 | 28 | |
29+
| [Deploy Open AD Kit containerized autonomous driving simulation on Arm Neoverse](https://learn.arm.com/learning-paths/automotive/openadkit1_container/) | April 15, 2025 | April 21, 2025 | 6 | |
30+
| [Automate Windows on Arm Builds with GitHub Arm-hosted Runners](https://learn.arm.com/learning-paths/laptops-and-desktops/gh-arm-runners-win/) | April 16, 2025 | April 25, 2025 | 9 | |
31+
| [Write NEON intrinsics using GitHub Copilot to improve Adler32 performance](https://learn.arm.com/learning-paths/cross-platform/adler32/) | April 21, 2025 | April 25, 2025 | 4 | ACM |
32+
| [Nerdctl](https://learn.arm.com/install-guides/nerdctl/) | April 22, 2025 | April 25, 2025 | 3 | ACM |
33+
34+
| Statistic | Value |
35+
|-----------|-------|
36+
| Number of Learning Paths published | 13 |
37+
| Number of ACM Learning Paths published | 5 |
38+
| Average time to publish (days) | 15.3 |
39+
| Longest time to publish (days) | 36 |
40+
41+
42+
_Report generated on April 28, 2025 at 21:34:54 UTC_
43+

tools/generate_monthly_report.py

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,10 @@
66

77
# GitHub API settings
88
GITHUB_API_URL = "https://api.github.com/graphql"
9-
GITHUB_TOKEN = os.getenv("GITHUB_TOKEN")
9+
GITHUB_TOKEN = os.getenv("PAT")
1010
if not GITHUB_TOKEN:
11-
# Fallback for GitHub Actions: use secrets.GITHUB_TOKEN if available
12-
GITHUB_TOKEN = os.getenv("ACTIONS_GITHUB_TOKEN")
11+
# Fallback for GitHub Actions: use secrets.PAT if available
12+
GITHUB_TOKEN = os.getenv("GITHUB_TOKEN")
1313

1414
# GitHub project board settings
1515
ORGANIZATION = "ArmDeveloperEcosystem"
@@ -199,7 +199,7 @@ def generate_report(month_filter=None, month_range=None):
199199
print(f"## Learning Path Monthly Report for {report_date}\n")
200200

201201
# Planned Learning Paths Table
202-
print("## Planned Learning Paths\n| Title | ACM | Created Date |")
202+
print("## Planned Learning Paths\n| Title | Program | Created Date |")
203203
print("|-------|-----|--------------|")
204204
open_issues = fetch_open_issues()
205205
planned_count = 0
@@ -212,8 +212,8 @@ def generate_report(month_filter=None, month_range=None):
212212

213213
# Fetch and print Done items for the given month or range
214214
done_items = fetch_done_items(month_filter=month_filter, month_range=month_range)
215-
print("\n\n## Published Learning Paths\n| Title | Published URL | Start Date | Publish Date | Time to Publish (days) | ACM |")
216-
print("|-------|--------------|------------|-------------|----------------------|-----|")
215+
print("\n\n## Published Learning Paths\n| Title | Start Date | Publish Date | Time to Publish (days) | Program |")
216+
print("|-------|--------------|-------------|----------------------|-----|")
217217
published_count = 0
218218
time_to_publish_values = []
219219
for item in done_items:
@@ -245,7 +245,7 @@ def generate_report(month_filter=None, month_range=None):
245245
except Exception:
246246
time_to_publish = ''
247247
acm_col = "ACM" if item.get('acm_label') else ""
248-
print(f"| {title_link} | {html_title} | {formatted_start_date} | {formatted_publish_date} | {time_to_publish} | {acm_col} |")
248+
print(f"| {title_link} | {formatted_start_date} | {formatted_publish_date} | {time_to_publish} | {acm_col} |")
249249
published_count += 1
250250

251251
print("\n| Statistic | Value |\n|-----------|-------|")

0 commit comments

Comments
 (0)