Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
74 changes: 74 additions & 0 deletions .github/workflows/gh-pages.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
name: Deploy docs to GitHub Pages

on:
push:
branches: ["main"]
paths:
[
"docs/**",
"**/README.md",
"**/CHANGELOG.md",
"Pipelines/Scripts/prepare-pages.ps1",
]

# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:

# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
permissions:
contents: read
pages: write
id-token: write

# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued.
# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete.
concurrency:
group: "pages"
cancel-in-progress: false

jobs:
# Build job
build:
runs-on: ubuntu-latest
defaults:
run:
working-directory: docs
steps:
- name: Checkout
uses: actions/checkout@v5
- name: Copy documentation files
shell: pwsh
run: ${{ github.workspace }}/Pipelines/Scripts/prepare-pages.ps1 -ProjectRoot ${{ github.workspace }}
- name: Setup Ruby
# https://github.com/ruby/setup-ruby/releases/tag/v1.207.0
uses: ruby/setup-ruby@4a9ddd6f338a97768b8006bf671dfbad383215f4
with:
ruby-version: "3.3" # Not needed with a .ruby-version file
bundler-cache: true # runs 'bundle install' and caches installed gems automatically
cache-version: 0 # Increment this number if you need to re-download cached gems
working-directory: "${{ github.workspace }}/docs"
- name: Setup Pages
id: pages
uses: actions/configure-pages@v5
- name: Build with Jekyll
# Outputs to the './_site' directory by default
run: bundle exec jekyll build --baseurl "${{ steps.pages.outputs.base_path }}"
env:
JEKYLL_ENV: production
- name: Upload artifact
# Automatically uploads an artifact from the './_site' directory by default
uses: actions/upload-pages-artifact@v3
with:
path: docs/_site/

# Deployment job
deploy:
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
runs-on: ubuntu-latest
needs: build
steps:
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v4
5 changes: 3 additions & 2 deletions .github/workflows/pr_labeler.yaml
Original file line number Diff line number Diff line change
@@ -1,8 +1,9 @@
name: "PR Labeling"
name: PR Labeling

on:
pull_request_target:
types: [opened, closed, synchronize, reopened, edited, ready_for_review]

permissions:
contents: read
pull-requests: write
Expand Down
34 changes: 17 additions & 17 deletions .github/workflows/validation_mrtk3.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -4,30 +4,30 @@ on:
push:
branches:
- main
- 'feature/*'
- "feature/*"
pull_request:

jobs:
validation:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v6
- uses: actions/checkout@v6

- name: Get Pull Request changes
if: github.event_name == 'pull_request'
run: |
${{ github.workspace }}/Pipelines/Scripts/gitchanges.ps1 -TargetBranch '${{ github.base_ref }}' -OutputFile '${{ runner.temp }}/build/changed_files.txt' -RepoRoot '${{ github.workspace }}'
shell: pwsh
- name: Get Pull Request changes
if: github.event_name == 'pull_request'
run: |
${{ github.workspace }}/Pipelines/Scripts/gitchanges.ps1 -TargetBranch '${{ github.base_ref }}' -OutputFile '${{ runner.temp }}/build/changed_files.txt' -RepoRoot '${{ github.workspace }}'
shell: pwsh

- name: Scoped code validation
if: github.event_name == 'pull_request'
run: |
${{ github.workspace }}/Pipelines/Scripts/validatecode.ps1 -Directory '${{ github.workspace }}' -ChangesFile '${{ runner.temp }}/build/changed_files.txt'
shell: pwsh
- name: Scoped code validation
if: github.event_name == 'pull_request'
run: |
${{ github.workspace }}/Pipelines/Scripts/validatecode.ps1 -Directory '${{ github.workspace }}' -ChangesFile '${{ runner.temp }}/build/changed_files.txt'
shell: pwsh

- name: Global code validation
if: github.event_name == 'push'
run: |
${{ github.workspace }}/Pipelines/Scripts/validatecode.ps1 -Directory '${{ github.workspace }}'
shell: pwsh
- name: Global code validation
if: github.event_name == 'push'
run: |
${{ github.workspace }}/Pipelines/Scripts/validatecode.ps1 -Directory '${{ github.workspace }}'
shell: pwsh
2 changes: 1 addition & 1 deletion CODE_OF_CONDUCT.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
# Mixed Reality Toolkit Code of Conduct

Contributors of this project must abide by the Mixed Reality Toolkit Organization's [code of conduct](https://github.com/MixedRealityToolkit/MixedRealityToolkit-MVG/blob/main/org-docs/CODE-OF-CONDUCT.md).
Contributors of this project must abide by the Mixed Reality Toolkit Organization's [code of conduct](https://github.com/MixedRealityToolkit/MixedRealityToolkit-MVG/blob/main/org-docs/CODE-OF-CONDUCT.md).
16 changes: 9 additions & 7 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,15 +6,17 @@ This project welcomes contributions, suggestions, and feedback. All contribution

Contributors must abide by the Mixed Reality Toolkit Organization's [code of conduct](https://github.com/MixedRealityToolkit/MixedRealityToolkit-MVG/blob/main/org-docs/CODE-OF-CONDUCT.md), [trademark policy](https://github.com/MixedRealityToolkit/MixedRealityToolkit-MVG/blob/main/org-docs/TRADEMARKS.md), and observe the following procedures:

* [Project Tenets](contributions/project-tenets.md)
* [Code Contributions](contributions/code-contributions.md)
* [Opening and Assessing Issues](contributions/opening-and-assessing-issues.md)
* [Approving Pull Requests](contributions/merging-pull-requests.md)
* [Versioning and Releases](contributions/versioning-and-releases.md)
* [Project tenets](./contributions/project-tenets.md)
* [Code contributions](./contributions/code-contributions.md)
* [Opening and assessing issues](./contributions/opening-and-assessing-issues.md)
* [Approving pull requests](./contributions/merging-pull-requests.md)
* [Versioning and releases](./contributions/versioning-and-releases.md)

### GitHub roles

Project roles are assigned by Maintainers via procedures outlined in the [GOVERNANCE.md](../GOVERNANCE.md) fileContributors may have one for the following roles:
Project roles are assigned by Maintainers via procedures outlined in the [Governance document](./GOVERNANCE.md).

Contributors may have one for the following roles:

* **Read** Read and clone repositories. Open and comment on issues and pull requests.
* **Triage** Read permissions plus manage issues and pull requests.
Expand Down Expand Up @@ -56,7 +58,7 @@ Maintainers have the **maintain** role, which grants write permissions plus mana
* Should have participated in multiple code reviews of other PR’s, including those of other Maintainers and Contributors.
* Should be active on the Project's community forums.

Maintainers are added and removed via procedures outlined in the [GOVERNANCE.md](./GOVERNANCE.md) file.
Maintainers are added and removed via procedures outlined in the [Governance document](./GOVERNANCE.md).

---
Part of MVG-0.1-beta.
Expand Down
4 changes: 2 additions & 2 deletions GOVERNANCE.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
# Governance Policy

This document provides the governance policy for the Mixed Reality Toolkit for Unity Project. Maintainers agree to this policy and to abide by all Project polices, including the [code of conduct](../org-docs/CODE-OF-CONDUCT.md), [trademark policy](../org-docs/TRADEMARKS.md), and [antitrust policy](../org-docs/ANTITRUST.md) by adding their name to the [MAINTAINERS.md](./MAINTAINERS.md) file.
This document provides the governance policy for the Mixed Reality Toolkit for Unity Project. Maintainers agree to this policy and to abide by all Project polices, including the [code of conduct](https://github.com/MixedRealityToolkit/MixedRealityToolkit-MVG/blob/main/org-docs/CODE-OF-CONDUCT.md), [trademark policy](https://github.com/MixedRealityToolkit/MixedRealityToolkit-MVG/blob/main/org-docs/TRADEMARKS.md), and [antitrust policy](https://github.com/MixedRealityToolkit/MixedRealityToolkit-MVG/blob/main/org-docs/ANTITRUST.md) by adding their name to the [MAINTAINERS.md](./MAINTAINERS.md) file.

All projects under the Mixed Reality Toolkit organization are governed by the Steering Committee. The Steering Committee is responsible for all technical oversight, project approval and oversight, policy oversight, and trademark management for the Organization. To learn more about the Steering Committee, visit this link: https://github.com/MixedRealityToolkit/MixedRealityToolkit-MVG/blob/main/org-docs/CHARTER.md
All projects under the Mixed Reality Toolkit organization are governed by the Steering Committee. The Steering Committee is responsible for all technical oversight, project approval and oversight, policy oversight, and trademark management for the Organization. To learn more about the Steering Committee, visit this link: <https://github.com/MixedRealityToolkit/MixedRealityToolkit-MVG/blob/main/org-docs/CHARTER.md>

## 1. Roles

Expand Down
2 changes: 1 addition & 1 deletion LICENSE.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
BSD 3-Clause License

Copyright (c) 2023, Mixed Reality Toolkit Contributors
Copyright (c) 2025, Mixed Reality Toolkit Contributors

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
Expand Down
19 changes: 3 additions & 16 deletions Pipelines/Scripts/pack-upm.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ try {
# Update package versions
. $PSScriptRoot\update-versions.ps1 -PackagesRoot $ProjectRoot -PrereleaseTag $PrereleaseTag -Revision $Revision -BuildNumber $BuildNumber

# Loop through package directories and copy documentation
# Loop through package directories, copy documentation, and package
Get-ChildItem -Path $ProjectRoot/*/package.json | ForEach-Object {
$packageName = Select-String -Pattern "org\.mixedrealitytoolkit\.\w+(\.\w+)*" -Path $_ | Select-Object -First 1

Expand All @@ -58,7 +58,7 @@ try {
}

$packageName = $packageName.Matches[0].Value
$packagePath = $_.Directory
$packagePath = $_.DirectoryName
$docFolder = "$packagePath/Documentation~"

Write-Host ""
Expand All @@ -73,28 +73,15 @@ try {
else {
Copy-Item -Path "$ProjectRoot/Pipelines/UPM/Documentation~" -Destination $docFolder -Recurse
}
}

# Package the package directories
Get-ChildItem -Path $ProjectRoot/*/package.json | ForEach-Object {
$currentPackageName = Select-String -Pattern "org\.mixedrealitytoolkit\.\w+(\.\w+)*" -Path $_ | Select-Object -First 1

if (-not $currentPackageName) {
return # this is not an MRTK package, so skip
}

Write-Host ""
Write-Host -ForegroundColor Green "======================================="
Write-Host -ForegroundColor Green "Packing Package"
Write-Host -ForegroundColor Green "======================================="
Write-Host "Package name: $currentPackageName"
Write-Host "Package name: $packageName"

$currentPackageName = $currentPackageName.Matches[0].Value
$packageFriendlyName = (Select-String -Pattern "`"displayName`": `"(.+)`"" -Path $_ | Select-Object -First 1).Matches.Groups[1].Value

$packagePath = $_.Directory
$docFolder = "$packagePath/Documentation~"

# build the package
npm pack $packagePath

Expand Down
Loading