Skip to content

Pilot ARM64 actions runners#325

Merged
rjmurillo merged 1 commit intorjmurillo:mainfrom
MattKotsenas:arm64-runners
Jan 22, 2025
Merged

Pilot ARM64 actions runners#325
rjmurillo merged 1 commit intorjmurillo:mainfrom
MattKotsenas:arm64-runners

Conversation

@MattKotsenas
Copy link
Copy Markdown
Collaborator

@MattKotsenas MattKotsenas commented Jan 17, 2025

Try out the new ARM64-based GitHub Actions runners. There's no need to switch to these, just piloting to see if there are any performance or functionality issues.

Summary by CodeRabbit

  • Chores
    • Updated GitHub Actions workflow configurations to use ubuntu-24.04-arm runner across multiple workflow files
    • Replaced ubuntu-latest with ubuntu-24.04-arm in workflow environments
    • No functional changes to workflow logic or steps

Copilot AI review requested due to automatic review settings January 17, 2025 19:14
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai bot commented Jan 17, 2025

📝 Walkthrough

Walkthrough

The pull request involves updating the runs-on attribute across multiple GitHub Actions workflow files from ubuntu-latest to ubuntu-24.04-arm. This change standardizes the operating system environment for various workflows, including Dependabot approval, issue and PR labeling, milestone tracking, and release processes. The modification appears to be a systematic update to the runner environment across the project's CI/CD configuration.

Changes

File Change Summary
.github/workflows/dependabot-approve-and-auto-merge.yml Updated runner from ubuntu-latest to ubuntu-24.04-arm
.github/workflows/dependabot-auto-approve.yml Updated runner from ubuntu-latest to ubuntu-24.04-arm
.github/workflows/label-issues.yml Updated runner from ubuntu-latest to ubuntu-24.04-arm
.github/workflows/label-pr.yml Updated runner from ubuntu-latest to ubuntu-24.04-arm
.github/workflows/main.yml Updated job matrix to use ubuntu-24.04-arm instead of ubuntu-latest
.github/workflows/milestone-tracking.yml Updated runner from ubuntu-latest to ubuntu-24.04-arm
.github/workflows/pr-labeler-current-milestone.yml Updated runner from ubuntu-latest to ubuntu-24.04-arm
.github/workflows/release.yml Updated publish job runner from ubuntu-latest to ubuntu-24.04-arm

Possibly related PRs

Suggested labels

feature


Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?

❤️ Share
🪧 Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>, please review it.
    • Generate unit testing code for this file.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
    • @coderabbitai generate unit testing code for this file.
    • @coderabbitai modularize this function.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
    • @coderabbitai read src/utils.ts and generate unit testing code.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.
    • @coderabbitai help me debug CodeRabbit configuration file.

Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.

CodeRabbit Commands (Invoked using PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger an incremental review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai full review to do a full review from scratch and review all the files again.
  • @coderabbitai summary to regenerate the summary of the PR.
  • @coderabbitai generate docstrings to generate docstrings for this PR. (Beta)
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai configuration to show the current CodeRabbit configuration for the repository.
  • @coderabbitai help to get help.

Other keywords and placeholders

  • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai anywhere in the PR title to generate the title automatically.

CodeRabbit Configuration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • Please see the configuration documentation for more information.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

Documentation and Community

  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

@rjmurillo rjmurillo added github_actions Pull requests that update GitHub Actions code releasable labels Jan 17, 2025
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot reviewed 5 out of 8 changed files in this pull request and generated no comments.

Files not reviewed (3)
  • .github/workflows/dependabot-approve-and-auto-merge.yml: Evaluated as low risk
  • .github/workflows/label-pr.yml: Evaluated as low risk
  • .github/workflows/milestone-tracking.yml: Evaluated as low risk

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 3

🔭 Outside diff range comments (1)
.github/workflows/pr-labeler-current-milestone.yml (1)

Line range hint 17-54: Consider dynamic PR number retrieval.

While not directly related to the ARM runner changes, maintaining a hardcoded list of PR numbers could become cumbersome. Consider using the GitHub API to dynamically retrieve PRs that need labeling.

Would you like me to provide an example of how to dynamically retrieve PR numbers using the GitHub API?

🧰 Tools
🪛 actionlint (1.7.4)

12-12: label "ubuntu-24.04-arm" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2022", "windows-2019", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-22.04", "ubuntu-20.04", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "macos-12-xl", "macos-12-xlarge", "macos-12-large", "macos-12", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file

(runner-label)

🪛 yamllint (1.35.1)

[error] 14-14: trailing spaces

(trailing-spaces)

📜 Review details

Configuration used: CodeRabbit UI
Review profile: ASSERTIVE
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 7577dd2 and 3040f09.

📒 Files selected for processing (8)
  • .github/workflows/dependabot-approve-and-auto-merge.yml (1 hunks)
  • .github/workflows/dependabot-auto-approve.yml (1 hunks)
  • .github/workflows/label-issues.yml (1 hunks)
  • .github/workflows/label-pr.yml (1 hunks)
  • .github/workflows/main.yml (1 hunks)
  • .github/workflows/milestone-tracking.yml (1 hunks)
  • .github/workflows/pr-labeler-current-milestone.yml (1 hunks)
  • .github/workflows/release.yml (1 hunks)
🧰 Additional context used
🪛 actionlint (1.7.4)
.github/workflows/dependabot-auto-approve.yml

9-9: label "ubuntu-24.04-arm" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2022", "windows-2019", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-22.04", "ubuntu-20.04", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "macos-12-xl", "macos-12-xlarge", "macos-12-large", "macos-12", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file

(runner-label)

.github/workflows/label-issues.yml

14-14: label "ubuntu-24.04-arm" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2022", "windows-2019", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-22.04", "ubuntu-20.04", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "macos-12-xl", "macos-12-xlarge", "macos-12-large", "macos-12", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file

(runner-label)

.github/workflows/milestone-tracking.yml

10-10: label "ubuntu-24.04-arm" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2022", "windows-2019", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-22.04", "ubuntu-20.04", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "macos-12-xl", "macos-12-xlarge", "macos-12-large", "macos-12", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file

(runner-label)

.github/workflows/label-pr.yml

13-13: label "ubuntu-24.04-arm" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2022", "windows-2019", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-22.04", "ubuntu-20.04", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "macos-12-xl", "macos-12-xlarge", "macos-12-large", "macos-12", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file

(runner-label)

.github/workflows/dependabot-approve-and-auto-merge.yml

8-8: label "ubuntu-24.04-arm" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2022", "windows-2019", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-22.04", "ubuntu-20.04", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "macos-12-xl", "macos-12-xlarge", "macos-12-large", "macos-12", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file

(runner-label)

.github/workflows/release.yml

24-24: label "ubuntu-24.04-arm" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2022", "windows-2019", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-22.04", "ubuntu-20.04", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "macos-12-xl", "macos-12-xlarge", "macos-12-large", "macos-12", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file

(runner-label)

.github/workflows/pr-labeler-current-milestone.yml

12-12: label "ubuntu-24.04-arm" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2022", "windows-2019", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-22.04", "ubuntu-20.04", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "macos-12-xl", "macos-12-xlarge", "macos-12-large", "macos-12", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file

(runner-label)

.github/workflows/main.yml

30-30: label "ubuntu-24.04-arm" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2022", "windows-2019", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-22.04", "ubuntu-20.04", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "macos-12-xl", "macos-12-xlarge", "macos-12-large", "macos-12", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file

(runner-label)

⏰ Context from checks skipped due to timeout of 90000ms (1)
  • GitHub Check: Codacy Static Code Analysis
🔇 Additional comments (8)
.github/workflows/dependabot-auto-approve.yml (1)

Line range hint 12-14: Verify ARM64 compatibility for the action.

The cognitedata/auto-approve-dependabot-action@v3.0.1 action needs to be verified for ARM64 compatibility.

✅ Verification successful

JavaScript action confirmed to be ARM64 compatible

This action is implemented in JavaScript/TypeScript and runs on GitHub's Node.js runtime, which provides native ARM64 support across all GitHub-hosted runners. No platform-specific verification is needed.

🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Check if the action's Dockerfile or implementation specifies platform requirements
gh api repos/cognitedata/auto-approve-dependabot-action/contents/Dockerfile | jq -r '.content' | base64 -d | grep -i 'platform\|arch\|amd64\|arm'

# Check for any ARM-related issues in the action's repository
gh api search/issues -X GET -f q='repo:cognitedata/auto-approve-dependabot-action arm64 OR aarch64'

Length of output: 425


Script:

#!/bin/bash
# Check action.yml for platform specifications and runtime details
gh api repos/cognitedata/auto-approve-dependabot-action/contents/action.yml | jq -r '.content' | base64 -d

# Check for any platform-related discussions
gh api search/issues -X GET -f q='repo:cognitedata/auto-approve-dependabot-action platform OR container'

# Check README for platform information
gh api repos/cognitedata/auto-approve-dependabot-action/contents/README.md | jq -r '.content' | base64 -d

Length of output: 10276


Script:

#!/bin/bash
# List repository contents to understand implementation
gh api repos/cognitedata/auto-approve-dependabot-action/contents | jq -r '.[].name'

# Check recent workflow runs for any platform-related issues
gh api repos/cognitedata/auto-approve-dependabot-action/actions/runs | jq -r '.workflow_runs[] | select(.conclusion != "success") | {name: .name, conclusion: .conclusion, html_url: .html_url}'

# Get latest release information
gh api repos/cognitedata/auto-approve-dependabot-action/releases/latest

Length of output: 1371

🧰 Tools
🪛 actionlint (1.7.4)

9-9: label "ubuntu-24.04-arm" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2022", "windows-2019", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-22.04", "ubuntu-20.04", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "macos-12-xl", "macos-12-xlarge", "macos-12-large", "macos-12", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file

(runner-label)

.github/workflows/release.yml (2)

Line range hint 31-36: Verify NuGet package compatibility with ARM64.

The workflow publishes NuGet packages built on Windows but processed on ARM64. Ensure that:

  1. The packages are architecture-independent
  2. The dotnet CLI on ARM64 can process Windows-built packages
✅ Verification successful

NuGet packages are architecture-agnostic and safe for ARM64 processing

The packages are built with AnyCPU platform target and have no explicit runtime constraints, making them architecture-independent. The dotnet CLI on ARM64 can safely process these Windows-built packages as NuGet package handling is platform-agnostic.

🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Check for architecture-specific settings in project files
rg -l 'RuntimeIdentifier|RuntimeIdentifiers|<Platform>' --type csproj

# Look for platform-specific build configurations
fd -e csproj -x cat {} \; | grep -i 'platform\|architecture\|runtime'

Length of output: 435

🧰 Tools
🪛 actionlint (1.7.4)

24-24: label "ubuntu-24.04-arm" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2022", "windows-2019", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-22.04", "ubuntu-20.04", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "macos-12-xl", "macos-12-xlarge", "macos-12-large", "macos-12", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file

(runner-label)


24-24: ⚠️ Potential issue

Potential architecture mismatch in release workflow.

The release workflow downloads Windows artifacts but runs on ARM64. This might cause compatibility issues when processing the artifacts.

🧰 Tools
🪛 actionlint (1.7.4)

24-24: label "ubuntu-24.04-arm" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2022", "windows-2019", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-22.04", "ubuntu-20.04", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "macos-12-xl", "macos-12-xlarge", "macos-12-large", "macos-12", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file

(runner-label)

.github/workflows/dependabot-approve-and-auto-merge.yml (1)

8-8: Verify GitHub CLI compatibility on ARM64.

The workflow uses gh CLI commands. Ensure the GitHub CLI is fully supported on ARM64 platforms.

✅ Verification successful

GitHub CLI is fully compatible with ARM64 platforms

The GitHub CLI provides official ARM64 packages for Linux, macOS and Windows, with no reported critical issues specific to ARM64 platforms. The workflow will work as expected on the ubuntu-24.04-arm runner.

🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Check gh CLI version and platform support in actions
gh api repos/cli/cli/releases/latest | jq -r '.assets[].name' | grep -i 'arm\|aarch'

# Look for ARM-related issues with gh CLI
gh api search/issues -X GET -f q='repo:cli/cli arm64 OR aarch64 label:bug'

Length of output: 65743

🧰 Tools
🪛 actionlint (1.7.4)

8-8: label "ubuntu-24.04-arm" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2022", "windows-2019", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-22.04", "ubuntu-20.04", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "macos-12-xl", "macos-12-xlarge", "macos-12-large", "macos-12", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file

(runner-label)

.github/workflows/milestone-tracking.yml (1)

10-10: ⚠️ Potential issue

Invalid runner label and potential tool compatibility concerns.

  1. The label ubuntu-24.04-arm is not a valid GitHub-hosted runner label.
  2. While the GitHub CLI should work on ARM64, it's important to verify its compatibility in your testing.

Apply the same correction as other workflows:

-    runs-on: ubuntu-24.04-arm
+    runs-on: [self-hosted, linux, arm64]  # For self-hosted ARM64 runners

Run this script to verify GitHub CLI compatibility with ARM64:

✅ Verification successful

Runner label correction needed, GitHub CLI compatibility verified

The runner label needs to be corrected as suggested, and I can confirm that the GitHub CLI operations in this workflow will work correctly on ARM64 runners. The GraphQL operations are platform-independent, and the GitHub CLI officially supports ARM64 architecture.

-    runs-on: ubuntu-24.04-arm
+    runs-on: [self-hosted, linux, arm64]
🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Check GitHub CLI version and architecture support
gh --version
uname -m  # Verify architecture
gh api rate_limit  # Test basic API functionality

Length of output: 1202

🧰 Tools
🪛 actionlint (1.7.4)

10-10: label "ubuntu-24.04-arm" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2022", "windows-2019", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-22.04", "ubuntu-20.04", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "macos-12-xl", "macos-12-xlarge", "macos-12-large", "macos-12", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file

(runner-label)

.github/workflows/main.yml (1)

30-30: ⚠️ Potential issue

Critical compatibility concerns for ARM64 migration.

The main build workflow requires careful consideration before migrating to ARM64:

  1. Invalid runner label ubuntu-24.04-arm
  2. Several tools and actions need ARM64 compatibility verification:
    • CodeQL
    • .NET SDK
    • Codacy coverage reporter
    • Performance validation scripts

First, correct the runner specification:

-        os: [windows-latest, ubuntu-24.04-arm]
+        os: [windows-latest, [self-hosted, linux, arm64]]  # For self-hosted ARM64 runners

Run this verification script to check tool compatibility:

Consider:

  1. Running a test build on ARM64 in a separate branch first
  2. Gradually migrating workflows to identify compatibility issues
  3. Maintaining fallback runners in case of ARM64-specific failures
✅ Verification successful

Runner label correction needed, but ARM64 migration is technically feasible

The only required change is to fix the runner label syntax:

-        os: [windows-latest, ubuntu-24.04-arm]
+        os: [windows-latest, ubuntu-latest]  # Or use [self-hosted, linux, arm64] for self-hosted ARM64 runners
  • No compatibility blockers found in the codebase
  • Build tools and scripts are platform-agnostic
  • Performance tests use cross-platform PowerShell syntax
🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Verify ARM64 compatibility of required tools

echo "Checking CodeQL compatibility..."
# CodeQL version and supported languages
gh extension list | grep codeql

echo "Checking .NET SDK compatibility..."
dotnet --info | grep "Architecture\|Runtime"

echo "Checking Codacy reporter..."
curl -s https://api.github.com/repos/codacy/codacy-coverage-reporter-action/releases/latest | \
  grep "browser_download_url.*" | \
  grep -i "arm"

echo "Checking performance scripts..."
fd -e ps1 . build/scripts/perf/ --exec grep -l "architecture|platform" {}

Length of output: 687


Script:

#!/bin/bash
# Check workflow configuration and platform-specific code

# Check CodeQL setup in workflow
echo "=== CodeQL Configuration ==="
rg "uses:.*github/codeql-action" -A 5

# Check .NET SDK configuration
echo -e "\n=== .NET Configuration ==="
rg "dotnet|sdk" .github/workflows/main.yml

# Check if performance scripts exist
echo -e "\n=== Performance Scripts ==="
fd -e ps1 . --exec ls -l {}

# Look for platform-specific code
echo -e "\n=== Platform Checks ==="
rg "RuntimeIdentifier|RuntimeIdentifiers|<Platform>|IsLinux|IsWindows|IsMacOS" -g "*.csproj" -g "*.props"

Length of output: 1391


Script:

#!/bin/bash
# Check performance script contents for platform dependencies

echo "=== Performance Script Contents ==="
# Check for platform-specific cmdlets or system calls
rg -i "get-wmi|win32|windows|platform|architecture|cpu|processor|x86|x64|arm" ./build/scripts/perf/*.ps1

# Check for OS-specific path separators or commands
echo -e "\n=== OS-Specific Patterns ==="
rg "\\\\|System32|C:|cmd.exe|\.exe" ./build/scripts/perf/*.ps1

Length of output: 1932

🧰 Tools
🪛 actionlint (1.7.4)

30-30: label "ubuntu-24.04-arm" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2022", "windows-2019", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-22.04", "ubuntu-20.04", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "macos-12-xl", "macos-12-xlarge", "macos-12-large", "macos-12", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file

(runner-label)

.github/workflows/label-pr.yml (1)

13-13: ⚠️ Potential issue

Invalid runner label format.

The label ubuntu-24.04-arm is not a standard GitHub-hosted runner label. For ARM64 runners, you need to use either:

  1. Self-hosted runners with labels:
runs-on: [self-hosted, linux, arm64]
  1. Or the standard Ubuntu runner (if ARM support is added in the future):
runs-on: ubuntu-24.04

To verify available runner types, run:

🧰 Tools
🪛 actionlint (1.7.4)

13-13: label "ubuntu-24.04-arm" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2022", "windows-2019", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-22.04", "ubuntu-20.04", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "macos-12-xl", "macos-12-xlarge", "macos-12-large", "macos-12", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file

(runner-label)

.github/workflows/pr-labeler-current-milestone.yml (1)

12-12: Invalid runner label format.

Same issue as in label-pr.yml: The label ubuntu-24.04-arm is not a standard GitHub-hosted runner label.

🧰 Tools
🪛 actionlint (1.7.4)

12-12: label "ubuntu-24.04-arm" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2022", "windows-2019", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-22.04", "ubuntu-20.04", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "macos-12-xl", "macos-12-xlarge", "macos-12-large", "macos-12", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file

(runner-label)

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 6

🔭 Outside diff range comments (1)
.github/workflows/main.yml (1)

Line range hint 30-121: Architecture-specific considerations for the build workflow

The switch to ARM64 runners may impact build performance and tool compatibility.

Key considerations:

  1. Performance validation step is Windows-only (already properly conditioned)
  2. Coverage reporting might need architecture-specific handling
  3. Build artifacts from ARM64 might differ from x64

Recommendations:

  1. Consider running architecture-sensitive steps only on specific runners
  2. Monitor build times and artifact sizes to evaluate ARM64 performance
  3. Document any architecture-specific limitations or requirements
🧰 Tools
🪛 actionlint (1.7.4)

30-30: label "ubuntu-24.04-arm" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2022", "windows-2019", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-22.04", "ubuntu-20.04", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "macos-12-xl", "macos-12-xlarge", "macos-12-large", "macos-12", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file

(runner-label)

🪛 yamllint (1.35.1)

[warning] 28-28: too few spaces before comment

(comments)

📜 Review details

Configuration used: CodeRabbit UI
Review profile: ASSERTIVE
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 7577dd2 and 3040f09.

📒 Files selected for processing (8)
  • .github/workflows/dependabot-approve-and-auto-merge.yml (1 hunks)
  • .github/workflows/dependabot-auto-approve.yml (1 hunks)
  • .github/workflows/label-issues.yml (1 hunks)
  • .github/workflows/label-pr.yml (1 hunks)
  • .github/workflows/main.yml (1 hunks)
  • .github/workflows/milestone-tracking.yml (1 hunks)
  • .github/workflows/pr-labeler-current-milestone.yml (1 hunks)
  • .github/workflows/release.yml (1 hunks)
🧰 Additional context used
🪛 actionlint (1.7.4)
.github/workflows/label-issues.yml

14-14: label "ubuntu-24.04-arm" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2022", "windows-2019", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-22.04", "ubuntu-20.04", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "macos-12-xl", "macos-12-xlarge", "macos-12-large", "macos-12", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file

(runner-label)

.github/workflows/pr-labeler-current-milestone.yml

12-12: label "ubuntu-24.04-arm" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2022", "windows-2019", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-22.04", "ubuntu-20.04", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "macos-12-xl", "macos-12-xlarge", "macos-12-large", "macos-12", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file

(runner-label)

.github/workflows/dependabot-approve-and-auto-merge.yml

8-8: label "ubuntu-24.04-arm" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2022", "windows-2019", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-22.04", "ubuntu-20.04", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "macos-12-xl", "macos-12-xlarge", "macos-12-large", "macos-12", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file

(runner-label)

.github/workflows/main.yml

30-30: label "ubuntu-24.04-arm" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2022", "windows-2019", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-22.04", "ubuntu-20.04", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "macos-12-xl", "macos-12-xlarge", "macos-12-large", "macos-12", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file

(runner-label)

.github/workflows/label-pr.yml

13-13: label "ubuntu-24.04-arm" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2022", "windows-2019", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-22.04", "ubuntu-20.04", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "macos-12-xl", "macos-12-xlarge", "macos-12-large", "macos-12", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file

(runner-label)

.github/workflows/dependabot-auto-approve.yml

9-9: label "ubuntu-24.04-arm" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2022", "windows-2019", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-22.04", "ubuntu-20.04", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "macos-12-xl", "macos-12-xlarge", "macos-12-large", "macos-12", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file

(runner-label)

.github/workflows/milestone-tracking.yml

10-10: label "ubuntu-24.04-arm" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2022", "windows-2019", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-22.04", "ubuntu-20.04", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "macos-12-xl", "macos-12-xlarge", "macos-12-large", "macos-12", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file

(runner-label)

.github/workflows/release.yml

24-24: label "ubuntu-24.04-arm" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2022", "windows-2019", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-22.04", "ubuntu-20.04", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "macos-12-xl", "macos-12-xlarge", "macos-12-large", "macos-12", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file

(runner-label)

⏰ Context from checks skipped due to timeout of 90000ms (1)
  • GitHub Check: Codacy Static Code Analysis
🔇 Additional comments (3)
.github/workflows/milestone-tracking.yml (1)

10-10: ⚠️ Potential issue

Incorrect runner label format and verify GitHub CLI compatibility

  1. The label ubuntu-24.04-arm is not a valid GitHub-hosted runner label.
  2. While GitHub CLI supports ARM64, let's verify its availability on the runner.

Update the runner configuration to:

-    runs-on: ubuntu-24.04-arm
+    runs-on: ['ubuntu-24.04', 'arm64']

Let's verify GitHub CLI compatibility:

✅ Verification successful

Update runner label format, GitHub CLI compatibility verified

The runner label needs to be updated as initially suggested. GitHub CLI is fully compatible with ARM64 runners and GraphQL operations work as expected.

-    runs-on: ubuntu-24.04-arm
+    runs-on: ['ubuntu-24.04', 'arm64']
🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Check if GitHub CLI is available for ARM64 architecture
gh --version

# Verify if the GraphQL queries work on ARM64
gh api graphql -f query='query { viewer { login } }'

Length of output: 198

🧰 Tools
🪛 actionlint (1.7.4)

10-10: label "ubuntu-24.04-arm" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2022", "windows-2019", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-22.04", "ubuntu-20.04", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "macos-12-xl", "macos-12-xlarge", "macos-12-large", "macos-12", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file

(runner-label)

.github/workflows/main.yml (1)

30-30: ⚠️ Potential issue

Critical: Verify tool compatibility for ARM64 and fix runner label

The switch to ARM64 runners requires careful verification of all build tools and dependencies.

  1. Fix the runner label format:
-        os: [windows-latest, ubuntu-24.04-arm]
+        os: [windows-latest, ['ubuntu-24.04', 'arm64']]
  1. Verify compatibility of critical tools:
✅ Verification successful

Fix runner label syntax for Ubuntu ARM64

The only issue is the incorrect runner syntax. All tools (CodeQL, .NET SDK, and Codacy reporter) are compatible with ARM64. Change:

-        os: [windows-latest, ubuntu-24.04-arm]
+        os: [windows-latest, ubuntu-latest-arm64]
🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Check compatibility of build tools with ARM64

# Check .NET SDK architecture support
dotnet --info

# Verify CodeQL compatibility
echo "CodeQL Version:"
codeql --version

# Check if Codacy reporter supports ARM64
if [ -f "/etc/os-release" ]; then
    echo "OS and Architecture:"
    cat /etc/os-release
    uname -m
fi

Length of output: 298


Script:

#!/bin/bash
# Analyze workflow configurations
echo "=== Workflow Analysis ==="
cat .github/workflows/main.yml

echo -e "\n=== Related Workflow Files ==="
fd -e yml -e yaml . .github/workflows/

echo -e "\n=== CodeQL Related Configs ==="
fd codeql . -t f

echo -e "\n=== .NET Related Configs ==="
fd -e props -e csproj -e sln . 

Length of output: 5714

🧰 Tools
🪛 actionlint (1.7.4)

30-30: label "ubuntu-24.04-arm" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2022", "windows-2019", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-22.04", "ubuntu-20.04", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "macos-12-xl", "macos-12-xlarge", "macos-12-large", "macos-12", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file

(runner-label)

.github/workflows/dependabot-approve-and-auto-merge.yml (1)

8-8: ⚠️ Potential issue

Invalid runner label and potential compatibility concerns

  1. The label ubuntu-24.04-arm is not a standard GitHub-hosted runner label. Use the correct format as mentioned earlier.
  2. Verify that the GitHub CLI (gh) and all other tools used in this workflow are compatible with ARM64 architecture.
🧰 Tools
🪛 actionlint (1.7.4)

8-8: label "ubuntu-24.04-arm" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2022", "windows-2019", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-22.04", "ubuntu-20.04", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "macos-12-xl", "macos-12-xlarge", "macos-12-large", "macos-12", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file

(runner-label)

@qlty-cloud-legacy
Copy link
Copy Markdown

Code Climate has analyzed commit d32b0b6 and detected 0 issues on this pull request.

View more on Code Climate.

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

📜 Review details

Configuration used: CodeRabbit UI
Review profile: ASSERTIVE
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 3040f09 and d32b0b6.

📒 Files selected for processing (8)
  • .github/workflows/dependabot-approve-and-auto-merge.yml (1 hunks)
  • .github/workflows/dependabot-auto-approve.yml (1 hunks)
  • .github/workflows/label-issues.yml (1 hunks)
  • .github/workflows/label-pr.yml (1 hunks)
  • .github/workflows/main.yml (1 hunks)
  • .github/workflows/milestone-tracking.yml (1 hunks)
  • .github/workflows/pr-labeler-current-milestone.yml (1 hunks)
  • .github/workflows/release.yml (1 hunks)
🧰 Additional context used
📓 Learnings (7)
📓 Common learnings
Learnt from: MattKotsenas
PR: rjmurillo/moq.analyzers#325
File: .github/workflows/label-pr.yml:13-13
Timestamp: 2025-01-17T21:45:05.188Z
Learning: As of January 2025, GitHub-hosted ARM64 runners should use the syntax `ubuntu-24.04-arm` in GitHub Actions workflow files, as documented in the GitHub changelog.
.github/workflows/dependabot-auto-approve.yml (4)
Learnt from: MattKotsenas
PR: rjmurillo/moq.analyzers#325
File: .github/workflows/dependabot-auto-approve.yml:9-9
Timestamp: 2025-01-17T21:44:17.410Z
Learning: GitHub Actions now supports ARM64 runners (as of January 2025) with labels like `ubuntu-24.04-arm`. These runners are available for free in public repositories during the public preview period.
Learnt from: MattKotsenas
PR: rjmurillo/moq.analyzers#325
File: .github/workflows/dependabot-auto-approve.yml:9-9
Timestamp: 2025-01-17T21:43:46.997Z
Learning: As of January 2025, GitHub Actions supports ARM64 runners in public preview. The runner label format is `ubuntu-24.04-arm` for ARM64 Ubuntu runners. This is available for free in public repositories.
Learnt from: MattKotsenas
PR: rjmurillo/moq.analyzers#325
File: .github/workflows/label-pr.yml:13-13
Timestamp: 2025-01-17T21:45:05.188Z
Learning: As of January 2025, GitHub-hosted ARM64 runners should use the syntax `ubuntu-24.04-arm` in GitHub Actions workflow files, as documented in the GitHub changelog.
Learnt from: MattKotsenas
PR: rjmurillo/moq.analyzers#325
File: .github/workflows/label-issues.yml:14-14
Timestamp: 2025-01-17T21:44:41.600Z
Learning: As of January 2025, GitHub Actions ARM64 runners should use the syntax `ubuntu-24.04-arm` for the `runs-on` field, not the array syntax with separate OS and architecture labels.
.github/workflows/label-pr.yml (2)
Learnt from: MattKotsenas
PR: rjmurillo/moq.analyzers#325
File: .github/workflows/label-pr.yml:13-13
Timestamp: 2025-01-17T21:45:05.188Z
Learning: As of January 2025, GitHub-hosted ARM64 runners should use the syntax `ubuntu-24.04-arm` in GitHub Actions workflow files, as documented in the GitHub changelog.
Learnt from: MattKotsenas
PR: rjmurillo/moq.analyzers#325
File: .github/workflows/label-issues.yml:14-14
Timestamp: 2025-01-17T21:44:41.600Z
Learning: As of January 2025, GitHub Actions ARM64 runners should use the syntax `ubuntu-24.04-arm` for the `runs-on` field, not the array syntax with separate OS and architecture labels.
.github/workflows/dependabot-approve-and-auto-merge.yml (2)
Learnt from: MattKotsenas
PR: rjmurillo/moq.analyzers#325
File: .github/workflows/dependabot-auto-approve.yml:9-9
Timestamp: 2025-01-17T21:44:17.410Z
Learning: GitHub Actions now supports ARM64 runners (as of January 2025) with labels like `ubuntu-24.04-arm`. These runners are available for free in public repositories during the public preview period.
Learnt from: MattKotsenas
PR: rjmurillo/moq.analyzers#325
File: .github/workflows/dependabot-auto-approve.yml:9-9
Timestamp: 2025-01-17T21:43:46.997Z
Learning: As of January 2025, GitHub Actions supports ARM64 runners in public preview. The runner label format is `ubuntu-24.04-arm` for ARM64 Ubuntu runners. This is available for free in public repositories.
.github/workflows/pr-labeler-current-milestone.yml (1)
Learnt from: MattKotsenas
PR: rjmurillo/moq.analyzers#325
File: .github/workflows/label-pr.yml:13-13
Timestamp: 2025-01-17T21:45:05.188Z
Learning: As of January 2025, GitHub-hosted ARM64 runners should use the syntax `ubuntu-24.04-arm` in GitHub Actions workflow files, as documented in the GitHub changelog.
.github/workflows/release.yml (5)
Learnt from: MattKotsenas
PR: rjmurillo/moq.analyzers#325
File: .github/workflows/release.yml:24-24
Timestamp: 2025-01-17T21:44:35.686Z
Learning: As of January 2025, GitHub Actions supports ARM64 runners in public repositories (public preview). The runner specification format is `ubuntu-24.04-arm` for ARM64-based Ubuntu runners.
Learnt from: MattKotsenas
PR: rjmurillo/moq.analyzers#325
File: .github/workflows/label-pr.yml:13-13
Timestamp: 2025-01-17T21:45:05.188Z
Learning: As of January 2025, GitHub-hosted ARM64 runners should use the syntax `ubuntu-24.04-arm` in GitHub Actions workflow files, as documented in the GitHub changelog.
Learnt from: MattKotsenas
PR: rjmurillo/moq.analyzers#325
File: .github/workflows/dependabot-auto-approve.yml:9-9
Timestamp: 2025-01-17T21:43:46.997Z
Learning: As of January 2025, GitHub Actions supports ARM64 runners in public preview. The runner label format is `ubuntu-24.04-arm` for ARM64 Ubuntu runners. This is available for free in public repositories.
Learnt from: MattKotsenas
PR: rjmurillo/moq.analyzers#325
File: .github/workflows/label-issues.yml:14-14
Timestamp: 2025-01-17T21:44:41.600Z
Learning: As of January 2025, GitHub Actions ARM64 runners should use the syntax `ubuntu-24.04-arm` for the `runs-on` field, not the array syntax with separate OS and architecture labels.
Learnt from: MattKotsenas
PR: rjmurillo/moq.analyzers#325
File: .github/workflows/dependabot-auto-approve.yml:9-9
Timestamp: 2025-01-17T21:44:17.410Z
Learning: GitHub Actions now supports ARM64 runners (as of January 2025) with labels like `ubuntu-24.04-arm`. These runners are available for free in public repositories during the public preview period.
.github/workflows/label-issues.yml (4)
Learnt from: MattKotsenas
PR: rjmurillo/moq.analyzers#325
File: .github/workflows/label-issues.yml:14-14
Timestamp: 2025-01-17T21:44:41.600Z
Learning: As of January 2025, GitHub Actions ARM64 runners should use the syntax `ubuntu-24.04-arm` for the `runs-on` field, not the array syntax with separate OS and architecture labels.
Learnt from: MattKotsenas
PR: rjmurillo/moq.analyzers#325
File: .github/workflows/label-pr.yml:13-13
Timestamp: 2025-01-17T21:45:05.188Z
Learning: As of January 2025, GitHub-hosted ARM64 runners should use the syntax `ubuntu-24.04-arm` in GitHub Actions workflow files, as documented in the GitHub changelog.
Learnt from: MattKotsenas
PR: rjmurillo/moq.analyzers#325
File: .github/workflows/dependabot-auto-approve.yml:9-9
Timestamp: 2025-01-17T21:43:46.997Z
Learning: As of January 2025, GitHub Actions supports ARM64 runners in public preview. The runner label format is `ubuntu-24.04-arm` for ARM64 Ubuntu runners. This is available for free in public repositories.
Learnt from: MattKotsenas
PR: rjmurillo/moq.analyzers#325
File: .github/workflows/dependabot-auto-approve.yml:9-9
Timestamp: 2025-01-17T21:44:17.410Z
Learning: GitHub Actions now supports ARM64 runners (as of January 2025) with labels like `ubuntu-24.04-arm`. These runners are available for free in public repositories during the public preview period.
🪛 actionlint (1.7.4)
.github/workflows/dependabot-auto-approve.yml

9-9: label "ubuntu-24.04-arm" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2022", "windows-2019", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-22.04", "ubuntu-20.04", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "macos-12-xl", "macos-12-xlarge", "macos-12-large", "macos-12", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file

(runner-label)

.github/workflows/milestone-tracking.yml

10-10: label "ubuntu-24.04-arm" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2022", "windows-2019", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-22.04", "ubuntu-20.04", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "macos-12-xl", "macos-12-xlarge", "macos-12-large", "macos-12", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file

(runner-label)

.github/workflows/label-pr.yml

13-13: label "ubuntu-24.04-arm" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2022", "windows-2019", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-22.04", "ubuntu-20.04", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "macos-12-xl", "macos-12-xlarge", "macos-12-large", "macos-12", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file

(runner-label)

.github/workflows/dependabot-approve-and-auto-merge.yml

8-8: label "ubuntu-24.04-arm" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2022", "windows-2019", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-22.04", "ubuntu-20.04", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "macos-12-xl", "macos-12-xlarge", "macos-12-large", "macos-12", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file

(runner-label)

.github/workflows/pr-labeler-current-milestone.yml

12-12: label "ubuntu-24.04-arm" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2022", "windows-2019", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-22.04", "ubuntu-20.04", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "macos-12-xl", "macos-12-xlarge", "macos-12-large", "macos-12", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file

(runner-label)

.github/workflows/main.yml

30-30: label "ubuntu-24.04-arm" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2022", "windows-2019", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-22.04", "ubuntu-20.04", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "macos-12-xl", "macos-12-xlarge", "macos-12-large", "macos-12", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file

(runner-label)

.github/workflows/release.yml

24-24: label "ubuntu-24.04-arm" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2022", "windows-2019", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-22.04", "ubuntu-20.04", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "macos-12-xl", "macos-12-xlarge", "macos-12-large", "macos-12", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file

(runner-label)

.github/workflows/label-issues.yml

14-14: label "ubuntu-24.04-arm" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2022", "windows-2019", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-22.04", "ubuntu-20.04", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "macos-12-xl", "macos-12-xlarge", "macos-12-large", "macos-12", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file

(runner-label)

⏰ Context from checks skipped due to timeout of 90000ms (2)
  • GitHub Check: Codacy Static Code Analysis
  • GitHub Check: build (windows-latest)
🔇 Additional comments (7)
.github/workflows/dependabot-auto-approve.yml (1)

9-9: LGTM! Consider monitoring performance metrics.

The ARM64 runner syntax is correct, and this workflow is suitable for piloting ARM64 runners as it's a non-critical task using architecture-agnostic JavaScript actions.

Monitor the workflow's performance metrics to establish a baseline for ARM64 runners:

✅ Verification successful

ARM64 compatibility verified successfully

The action is a platform-agnostic Node.js/TypeScript implementation that runs reliably on ARM64, confirmed by:

  • Multiple successful workflow runs post-migration
  • No platform-specific dependencies or requirements
  • Node.js runtime compatibility across architectures
🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Get recent workflow run times for comparison
gh api -X GET /repos/rjmurillo/moq.analyzers/actions/workflows/dependabot-auto-approve.yml/runs \
  --jq '.workflow_runs[0:5] | .[] | {id: .id, conclusion: .conclusion, started_at: .started_at, updated_at: .updated_at}'

Length of output: 697


Script:

#!/bin/bash
# Check the action's repository for ARM-related issues or documentation
gh api -X GET /repos/cognitedata/auto-approve-dependabot-action/issues \
  --jq '.[] | select(.title | test("(?i)(arm|arch|platform|runner)")) | {title: .title, state: .state, number: .number}'

# Get the action.yml to check for platform-specific configurations
gh api -X GET /repos/cognitedata/auto-approve-dependabot-action/contents/action.yml \
  --jq '.content' | base64 -d

Length of output: 400


Script:

#!/bin/bash
# Get the action.yml content directly
gh api -X GET /repos/cognitedata/auto-approve-dependabot-action/contents/action.yml \
  --raw

# Check if this is a Node.js action by looking for package.json
gh api -X GET /repos/cognitedata/auto-approve-dependabot-action/contents/package.json \
  --raw

Length of output: 2913


Script:

#!/bin/bash
# Get the action.yml content
gh api -X GET /repos/cognitedata/auto-approve-dependabot-action/contents/action.yml \
  --jq '.content' | tr -d '\n' | base64 -d 2>/dev/null || true

# List repository contents to understand action implementation
gh api -X GET /repos/cognitedata/auto-approve-dependabot-action/contents/ \
  --jq '.[] | {name: .name, type: .type}'

Length of output: 661

🧰 Tools
🪛 actionlint (1.7.4)

9-9: label "ubuntu-24.04-arm" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2022", "windows-2019", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-22.04", "ubuntu-20.04", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "macos-12-xl", "macos-12-xlarge", "macos-12-large", "macos-12", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file

(runner-label)

.github/workflows/label-pr.yml (1)

13-13: LGTM! Good candidate for ARM64 piloting.

The workflow uses JavaScript-based actions that are architecture-agnostic, making it a safe choice for testing ARM64 runners.

🧰 Tools
🪛 actionlint (1.7.4)

13-13: label "ubuntu-24.04-arm" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2022", "windows-2019", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-22.04", "ubuntu-20.04", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "macos-12-xl", "macos-12-xlarge", "macos-12-large", "macos-12", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file

(runner-label)

.github/workflows/release.yml (1)

24-24: Validate ARM64 compatibility for release workflow.

While the runner syntax is correct, this is a critical workflow handling releases. Ensure:

  1. PowerShell Core commands work as expected on ARM64
  2. dotnet CLI tools are compatible with ARM64
  3. NuGet package publishing works correctly

Run this script to verify ARM64 compatibility of the tools:

✅ Verification successful

ARM64 runner change is safe for release workflow

The codebase is platform-agnostic and the release workflow only performs architecture-independent operations (PowerShell file operations, dotnet CLI commands, NuGet publishing). The main workflow already validates the build on both Windows and Ubuntu ARM runners.

🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Check if the workflow uses any architecture-specific commands
rg -p 'shell: pwsh' .github/workflows/release.yml -A 10 -B 2

# Verify if any NuGet packages have architecture-specific dependencies
fd . packages -e nuspec -e csproj | xargs cat | grep -i "runtime\|platform\|architecture"

Length of output: 682


Script:

#!/bin/bash
# Check for any architecture-specific configurations in workflow files
rg -p "runs-on|architecture|platform|x86|x64|arm" .github/workflows/

# Check for any runtime identifiers or platform-specific settings in project files
fd -e csproj . | xargs cat

Length of output: 9169

🧰 Tools
🪛 actionlint (1.7.4)

24-24: label "ubuntu-24.04-arm" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2022", "windows-2019", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-22.04", "ubuntu-20.04", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "macos-12-xl", "macos-12-xlarge", "macos-12-large", "macos-12", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file

(runner-label)

.github/workflows/dependabot-approve-and-auto-merge.yml (1)

8-8: LGTM! Architecture-agnostic workflow.

The workflow uses GitHub CLI and API operations that are architecture-agnostic, making it suitable for ARM64 runners.

🧰 Tools
🪛 actionlint (1.7.4)

8-8: label "ubuntu-24.04-arm" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2022", "windows-2019", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-22.04", "ubuntu-20.04", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "macos-12-xl", "macos-12-xlarge", "macos-12-large", "macos-12", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file

(runner-label)

.github/workflows/label-issues.yml (1)

14-14: LGTM! Consider monitoring performance.

The syntax for the ARM64 runner is correct according to the January 2025 GitHub changelog. Since this is a pilot of ARM64 runners, consider monitoring the performance of this workflow to ensure it meets expectations.

Run this script to compare workflow run times:

🧰 Tools
🪛 actionlint (1.7.4)

14-14: label "ubuntu-24.04-arm" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2022", "windows-2019", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-22.04", "ubuntu-20.04", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "macos-12-xl", "macos-12-xlarge", "macos-12-large", "macos-12", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file

(runner-label)

.github/workflows/milestone-tracking.yml (1)

10-10: LGTM! ARM64 runner is suitable for this workflow.

The change to use an ARM64 runner is appropriate as this workflow primarily performs GraphQL API operations which are platform-independent.

🧰 Tools
🪛 actionlint (1.7.4)

10-10: label "ubuntu-24.04-arm" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2022", "windows-2019", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-22.04", "ubuntu-20.04", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "macos-12-xl", "macos-12-xlarge", "macos-12-large", "macos-12", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file

(runner-label)

.github/workflows/main.yml (1)

30-30: Verify ARM64 compatibility for build toolchain.

While the ARM64 runner syntax is correct, this is a complex build workflow. Please ensure:

  1. All .NET tools and dependencies are ARM64-compatible
  2. Test execution works correctly on ARM64
  3. Coverage tools support ARM64
  4. Build performance meets expectations

The Windows-specific steps are properly guarded with if: ${{ runner.os == 'Windows' }}, which is good.

Run this script to check for any ARM64 compatibility issues in project files:

✅ Verification successful

ARM64 compatibility verification completed - no issues found

The codebase is fully compatible with ARM64:

  • All project dependencies support ARM64
  • AnyCPU platform targeting ensures architecture compatibility
  • No platform-specific restrictions or native dependencies found
  • Standard .NET toolchain used throughout
🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Check project files for potential ARM64 compatibility issues

# Find all project files
echo "Checking project files for platform-specific settings..."
fd -e csproj -e props | xargs cat | grep -i "platform\|architecture\|runtime"

# Check package references for known ARM64 compatibility issues
echo "Checking NuGet package references..."
fd -e csproj | xargs grep -i "PackageReference" 

Length of output: 4412

🧰 Tools
🪛 actionlint (1.7.4)

30-30: label "ubuntu-24.04-arm" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2022", "windows-2019", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-22.04", "ubuntu-20.04", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "macos-12-xl", "macos-12-xlarge", "macos-12-large", "macos-12", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file

(runner-label)

@rjmurillo rjmurillo requested a review from Copilot January 22, 2025 00:46
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot reviewed 5 out of 8 changed files in this pull request and generated no comments.

Files not reviewed (3)
  • .github/workflows/dependabot-approve-and-auto-merge.yml: Evaluated as low risk
  • .github/workflows/dependabot-auto-approve.yml: Evaluated as low risk
  • .github/workflows/milestone-tracking.yml: Evaluated as low risk

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

github_actions Pull requests that update GitHub Actions code releasable

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants