Skip to content

Latest commit

 

History

History
66 lines (47 loc) · 2.29 KB

CONTRIBUTING.md

File metadata and controls

66 lines (47 loc) · 2.29 KB

Contributing

Welcome, and thank you for your interest in contributing to the HAMi amd-device-plugin. This guide explains how to propose changes.

Code of Conduct

This project follows the HAMi community Code of Conduct. By participating you are expected to uphold it.

Getting Started

  • Read ONBOARDING.md for what the plugin does and how it is deployed, and STATUS.md for what is done and what is left.

  • The plugin is written in Go and uses cgo against libdrm, hwloc and AMD SMI. The supported build is the container image:

    docker build -t amd-device-plugin:dev .

    For a local Go build you need pkg-config, libdrm-dev, libhwloc-dev and a ROCm install that provides amd_smi, then:

    go build ./...
    go test ./...

Finding Something to Work On

  • Browse the open issues.
  • Issues labeled good first issue are a good starting point.
  • If you plan to work on something, comment on the issue so others know.

Filing an Issue

Open a new issue and include: what you expected, what happened, the GPU model and ROCm version, and steps to reproduce. For security problems, do not open a public issue; follow SECURITY.md.

Pull Request Workflow

  1. Fork the repository and create a topic branch from main.

  2. Make your change. Keep pull requests focused and small where possible.

  3. Add or update tests. Run go build ./..., go vet ./... and go test ./....

  4. Sign off every commit to certify the DCO:

    git commit -s -m "your message"
  5. Use the pull request template and add a /kind label (/kind bug, /kind feature, /kind documentation).

  6. Open the pull request against main and describe what changed and why. Link the issue it fixes with Fixes #<issue>.

Code Review

  • Maintainers review pull requests and may request changes.
  • Automated checks (CI, DCO, CodeQL) must pass.
  • Once a reviewer is satisfied they add /lgtm, and an approver adds /approve; the bot then merges the pull request.

Thank you for helping improve the project.