Skip to content
This repository has been archived by the owner on Mar 20, 2024. It is now read-only.

Update readme with archival notice #558

Merged
merged 2 commits into from
Mar 20, 2024
Merged
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
85 changes: 8 additions & 77 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,72 +1,17 @@
# ❗Attention

Check warning on line 1 in README.md

GitHub Actions / validate-repository-submission

File modification detected README.md

Please review intent for README.md.
As of **February 2024**, the Azure Certified Device program has been retired.

# Azure/iot-plugandplay-models repository

This repository includes [DTDL](https://aka.ms/dtdl) models that are made publicly available on [https://devicemodels.azure.com](https://devicemodels.azure.com). These models can be used to create Azure [IoT Plug and Play](https://aka.ms/iotpnp) solutions.

Related tools, samples, and specs can be found in the [Azure/iot-plugandplay-models-tools](https://github.com/Azure/iot-plugandplay-models-tools) repo. The current repo only stores DTDL models.

## Submit a model

1. Create a GitHub account if you do not have one yet: [Join GitHub](https://github.com/join).

[Learn more about GitHub](https://docs.microsoft.com/learn/modules/intro-to-git/)

1. Sign [Contributor License Agreement](https://cla.opensource.microsoft.com/Azure/iot-plugandplay-models?pullRequest=93)

1. Fork the public GitHub repo: [https://github.com/Azure/iot-plugandplay-models](https://github.com/Azure/iot-plugandplay-models).

[Learn more about forking a repo](https://docs.github.com/en/github/getting-started-with-github/fork-a-repo)

1. Clone the forked repo. Optionally create a new branch to keep your changes isolated from the `main` branch.

By forking and cloning the public GitHub repo, a copy of repo will be created in your GitHub account and a local copy is created in your dev machine. Please use this local copy to make modifications.

1. Author a new device model with an unique ID using [Digital Twin Model Identifier](https://github.com/Azure/opendigitaltwins-dtdl/blob/master/DTDL/v2/dtdlv2.md#digital-twin-model-identifier).

Review the [PR requirements](pr-reqs.md) for naming conventions.
Therefore, Microsoft is no longer accepting submissions of DTDL models to the [iot-plugandplay-models](https://github.com/Azure/iot-plugandplay-models) repository.

> [!TIP]
> [DTDL Editor for Visual Studio Code](https://marketplace.visualstudio.com/items?itemName=vsciot-vscode.vscode-dtdl) could help you with the language syntax (including auto-completion) and also validate the syntax with DTDL v2.
You can still search for and retrieve existing DTDL models from https://devicemodels.azure.com and use [DMR ecosystem tools](https://github.com/Azure/iot-plugandplay-models-tools) such as [Microsoft.IoT.ModelsRepository.CommandLine](https://www.nuget.org/packages/Microsoft.IoT.ModelsRepository.CommandLine) (aka `dmr-client`) or the [ModelsRepositoryClient](https://www.nuget.org/packages/Azure.IoT.ModelsRepository) SDK.

1. Save the device model JSON file to a local folder.
---

E.g.
`C:\iot-plugandplay-models\MyThermostat.json`

1. Validate the models locally using the `dmr-client` tool to [validate](#validate-models).
1. Add the new interfaces to the `dtmi` folder using the folder/filename convention. See the [import](#import-a-model-to-the-dtmi-folder) command below.
1. Review and cross check with the [PR requirements](pr-reqs.md) and ensure all elements are conform to [DTDL v2](https://aka.ms/dtdl) specification.
1. Commit the changes locally and push to your fork.
1. From your fork, create a PR that targets the `main` branch.

[Learn more about pull request](https://docs.github.com/en/desktop/contributing-and-collaborating-using-github-desktop/creating-an-issue-or-pull-request#creating-a-pull-request)

The PR triggers a series of GitHub actions that will validate the new submitted interfaces, and make sure your PR satisfies all the checks.

Microsoft will respond to a PR with all checks in 3 business days.

## GitHub Operation Workflow
# Azure/iot-plugandplay-models repository

```text
+-------------------------------------------------+
| iot-plugandplay-models repo (Microsoft) |
+-------------------------------------------------+
| β­‘
| Fork | Pull Request (PR)
πŸ‘“ |
+-------------------------------------------------+
| iot-plugandplay-models repo (your Github account) |
+-------------------------------------------------+
| β­‘
| Clone | Commit/Push
πŸ‘“ |
+-------------------------------------------------+
| Your development PC |
| - Author device model |
| - Import your model to the DTMI folder |
+-------------------------------------------------+
This repository includes [DTDL](https://aka.ms/dtdl) models that are made publicly available on [https://devicemodels.azure.com](https://devicemodels.azure.com). These models can be used to create Azure [IoT Plug and Play](https://aka.ms/iotpnp) solutions.

```
Related tools, samples, and specs can be found in the [Azure/iot-plugandplay-models-tools](https://github.com/Azure/iot-plugandplay-models-tools) repo. The current repo only stores DTDL models.

## Install the `dmr-client` command line tool

@@ -242,17 +187,3 @@
```

There are samples for .NET and Node in the [Azure/iot-plugandplay-models-tools](https://github.com/Azure/iot-plugandplay-models-tools) GitHub repository with code you can use to acquire models for your custom IoT solution.

## Contributing

This project welcomes contributions and suggestions. Most contributions require you to agree to a
Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us
the rights to use your contribution. For details, visit [https://cla.opensource.microsoft.com](https://cla.opensource.microsoft.com)

When you submit a pull request, a CLA bot will automatically determine whether you need to provide
a CLA and decorate the PR appropriately (e.g., status check, comment). Simply follow the instructions
provided by the bot. You will only need to do this once across all repos using our CLA.

This project has adopted the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/).
For more information see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/) or
contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any additional questions or comments.