# Copyright (c) .NET Foundation and Contributors # See LICENSE file in the project root for full license information. trigger: branches: include: - main - develop - release-* paths: exclude: - .github_changelog_generator - .gitignore - CHANGELOG.md - CODE_OF_CONDUCT.md - LICENSE.md - README.md - NuGet.Config - assets/* - config/* - .github/* - Tests/* # PR always trigger build pr: autoCancel: true # add nf-tools repo to resources (for Azure Pipelines templates) resources: repositories: - repository: templates type: github name: nanoframework/nf-tools endpoint: nanoframework pool: vmImage: 'windows-latest' variables: - group: sign-client-credentials - name: DOTNET_NOLOGO value: true - name: buildPlatform value: 'Any CPU' - name: buildConfiguration value: 'Release' - name: solution value: 'nanoFramework.M5Stack.sln' - name: nugetPackageName value: 'nanoFramework.M5Core' steps: # step from template @ nf-tools repo # build steps only - template: azure-pipelines-templates/class-lib-build-only.yml@templates parameters: sonarCloudProject: 'nanoframework_lib-nanoFramework.M5Stack' # package steps - template: azure-pipelines-templates/class-lib-package.yml@templates parameters: nugetPackageName: 'nanoFramework.M5Core' - template: azure-pipelines-templates/class-lib-package.yml@templates parameters: nugetPackageName: 'nanoFramework.M5StickC' - template: azure-pipelines-templates/class-lib-package.yml@templates parameters: nugetPackageName: 'nanoFramework.M5StickCPlus' - template: azure-pipelines-templates/class-lib-package.yml@templates parameters: nugetPackageName: 'nanoFramework.M5Core2' - template: azure-pipelines-templates/class-lib-package.yml@templates parameters: nugetPackageName: 'nanoFramework.AtomLite' - template: azure-pipelines-templates/class-lib-package.yml@templates parameters: nugetPackageName: 'nanoFramework.AtomMatrix' - template: azure-pipelines-templates/class-lib-package.yml@templates parameters: nugetPackageName: 'nanoFramework.Fire' - template: azure-pipelines-templates/class-lib-package.yml@templates parameters: nugetPackageName: 'nanoFramework.Tough' - template: azure-pipelines-templates/class-lib-publish.yml@templates # create GitHub release from main branche - task: GithubRelease@1 condition: >- and( succeeded(), eq(variables['System.PullRequest.PullRequestId'], ''), startsWith(variables['Build.SourceBranch'], 'refs/heads/main'), not(contains(variables['Build.SourceBranch'], 'preview')), ne(variables['StartReleaseCandidate'], true) ) displayName: Create GitHub stable release inputs: action: edit gitHubConnection: 'github.com_nano-$(System.TeamProject)' tagSource: userSpecifiedTag tag: v$(MY_NUGET_VERSION) title: 'M5Stack Board Support Packages v$(MY_NUGET_VERSION)' releaseNotesSource: inline releaseNotesInline: 'Check the [changelog]($(Build.Repository.Uri)/blob/$(Build.SourceBranchName)/CHANGELOG.md).

Install from NuGet


The following NuGet packages are available for download from this release:
:package: [M5Core](https://www.nuget.org/packages/nanoFramework.M5Core/$(MY_NUGET_VERSION)) v$(MY_NUGET_VERSION).
:package: [M5Core2](https://www.nuget.org/packages/nanoFramework.M5Core2/$(MY_NUGET_VERSION)) v$(MY_NUGET_VERSION).
:package: [M5StickC](https://www.nuget.org/packages/nanoFramework.M5StickC/$(MY_NUGET_VERSION)) v$(MY_NUGET_VERSION)
:package: [M5StickCPlus](https://www.nuget.org/packages/nanoFramework.M5StickCPlus/$(MY_NUGET_VERSION)) v$(MY_NUGET_VERSION)
:package: [M5Stack Fire](https://www.nuget.org/packages/nanoFramework.Fire/$(MY_NUGET_VERSION)) v$(MY_NUGET_VERSION)
:package: [Atom Lite](https://www.nuget.org/packages/nanoFramework.AtomLite/$(MY_NUGET_VERSION)) v$(MY_NUGET_VERSION)
:package: [Atom Matrix](https://www.nuget.org/packages/nanoFramework.AtomMatrix/$(MY_NUGET_VERSION)) v$(MY_NUGET_VERSION)
:package: [Tough](https://www.nuget.org/packages/nanoFramework.Tough/$(MY_NUGET_VERSION)) v$(MY_NUGET_VERSION)' assets: '$(Build.ArtifactStagingDirectory)/$(nugetPackageName).$(MY_NUGET_VERSION).nupkg' isPreRelease: false addChangeLog: false # step from template @ nf-tools repo # report error - template: azure-pipelines-templates/discord-webhook-task.yml@templates parameters: status: 'failure' webhookUrl: '$(DiscordWebhook)' message: ''