From 4c63bef04f29059dfac6cca9c4323b65bf2c8311 Mon Sep 17 00:00:00 2001 From: Chunxue Wang Date: Thu, 10 Jul 2025 18:53:32 +0800 Subject: [PATCH 01/18] delete versionMinor --- azure-pipelines-pr.yml | 13 ++++++------- azure-pipelines-release.yml | 9 ++++----- 2 files changed, 10 insertions(+), 12 deletions(-) diff --git a/azure-pipelines-pr.yml b/azure-pipelines-pr.yml index f8bec87..85c59a3 100644 --- a/azure-pipelines-pr.yml +++ b/azure-pipelines-pr.yml @@ -11,14 +11,13 @@ trigger: variables: - name: versionMajor value: 2 - - template: ../../../Build/BuildNumber.yml - name: versionBuild - value: $[counter(format('{0}.{1}.{2}', variables['versionMajor'], variables['versionMinor'], eq(variables['build.reason'], 'PullRequest')), 1)] + value: $[counter(format('{0}.{1}.{2}', variables['versionMajor'], eq(variables['build.reason'], 'PullRequest')), 1)] - name: versionRevision value: 0 - name: jdkVersion value: '1.17' -name: '$(versionMajor).$(versionMinor).$(versionBuild).$(versionRevision).$(build.reason)' +name: '$(versionMajor).$(versionBuild).$(versionRevision).$(build.reason)' resources: repositories: - repository: 1esPipelines @@ -66,7 +65,7 @@ extends: inputs: gradleWrapperFile: gradlew workingDirectory: $(Build.Repository.LocalPath) - options: '-PbuildNumber=$(versionMajor).$(versionMinor).$(versionBuild).$(versionRevision) -Pado_reader=$(ado_reader) -Pado_reader_mmxsdk_pass=$(ado_reader_mmxsdk_pass) -Pado_reader_ms_pass=$(ado_reader_ms_pass)' + options: '-PbuildNumber=$(versionMajor).$(versionBuild).$(versionRevision) -Pado_reader=$(ado_reader) -Pado_reader_mmxsdk_pass=$(ado_reader_mmxsdk_pass) -Pado_reader_ms_pass=$(ado_reader_ms_pass)' jdkVersionOption: $(jdkVersion) tasks: 'assembleRelease' publishJUnitResults: false @@ -76,7 +75,7 @@ extends: inputs: gradleWrapperFile: gradlew workingDirectory: $(Build.Repository.LocalPath) - options: '-PbuildNumber=$(versionMajor).$(versionMinor).$(versionBuild).$(versionRevision) -Pado_reader=$(ado_reader) -Pado_reader_mmxsdk_pass=$(ado_reader_mmxsdk_pass) -Pado_reader_ms_pass=$(ado_reader_ms_pass)' + options: '-PbuildNumber=$(versionMajor).$(versionBuild).$(versionRevision) -Pado_reader=$(ado_reader) -Pado_reader_mmxsdk_pass=$(ado_reader_mmxsdk_pass) -Pado_reader_ms_pass=$(ado_reader_ms_pass)' jdkVersionOption: $(jdkVersion) tasks: 'assembleDebug' publishJUnitResults: false @@ -109,7 +108,7 @@ extends: gradleWrapperFile: gradlew workingDirectory: $(Build.Repository.LocalPath) tasks: 'ktlintCheck' - options: '-PbuildNumber=$(versionMajor).$(versionMinor).$(versionBuild).$(versionRevision) -Pado_reader=$(ado_reader) -Pado_reader_mmxsdk_pass=$(ado_reader_mmxsdk_pass) -Pado_reader_ms_pass=$(ado_reader_ms_pass)' + options: '-PbuildNumber=$(versionMajor).$(versionBuild).$(versionRevision) -Pado_reader=$(ado_reader) -Pado_reader_mmxsdk_pass=$(ado_reader_mmxsdk_pass) -Pado_reader_ms_pass=$(ado_reader_ms_pass)' jdkVersionOption: $(jdkVersion) condition: succeededOrFailed() @@ -119,6 +118,6 @@ extends: gradleWrapperFile: gradlew workingDirectory: $(Build.Repository.LocalPath) tasks: 'detekt' - options: '-PbuildNumber=$(versionMajor).$(versionMinor).$(versionBuild).$(versionRevision) -Pado_reader=$(ado_reader) -Pado_reader_mmxsdk_pass=$(ado_reader_mmxsdk_pass) -Pado_reader_ms_pass=$(ado_reader_ms_pass)' + options: '-PbuildNumber=$(versionMajor).$(versionBuild).$(versionRevision) -Pado_reader=$(ado_reader) -Pado_reader_mmxsdk_pass=$(ado_reader_mmxsdk_pass) -Pado_reader_ms_pass=$(ado_reader_ms_pass)' jdkVersionOption: $(jdkVersion) condition: succeededOrFailed() \ No newline at end of file diff --git a/azure-pipelines-release.yml b/azure-pipelines-release.yml index 9497b9f..7562d2d 100644 --- a/azure-pipelines-release.yml +++ b/azure-pipelines-release.yml @@ -4,14 +4,13 @@ trigger: none variables: - name: versionMajor value: 2 - - template: ../../../Build/BuildNumber.yml - name: versionBuild - value: $[counter(format('{0}.{1}.{2}', variables['versionMajor'], variables['versionMinor'], eq(variables['build.reason'], 'PullRequest')), 1)] + value: $[counter(format('{0}.{1}.{2}', variables['versionMajor'], eq(variables['build.reason'], 'PullRequest')), 1)] - name: versionRevision value: 0 - name: jdkVersion value: '1.17' -name: '$(versionMajor).$(versionMinor).$(versionBuild).$(versionRevision).$(build.reason)' +name: '$(versionMajor).$(versionBuild).$(versionRevision).$(build.reason)' resources: repositories: - repository: 1esPipelines @@ -59,7 +58,7 @@ extends: inputs: gradleWrapperFile: gradlew workingDirectory: $(Build.Repository.LocalPath) - options: '-PbuildNumber=$(versionMajor).$(versionMinor).$(versionBuild).$(versionRevision) -Pado_reader=$(ado_reader) -Pado_reader_mmxsdk_pass=$(ado_reader_mmxsdk_pass) -Pado_reader_ms_pass=$(ado_reader_ms_pass)' + options: '-PbuildNumber=$(versionMajor).$(versionBuild).$(versionRevision) -Pado_reader=$(ado_reader) -Pado_reader_mmxsdk_pass=$(ado_reader_mmxsdk_pass) -Pado_reader_ms_pass=$(ado_reader_ms_pass)' jdkVersionOption: $(jdkVersion) tasks: 'assemble' publishJUnitResults: false @@ -69,7 +68,7 @@ extends: inputs: gradleWrapperFile: gradlew workingDirectory: $(Build.Repository.LocalPath) - options: '-PbuildNumber=$(versionMajor).$(versionMinor).$(versionBuild).$(versionRevision) -Pado_reader=$(ado_reader) -Pado_reader_mmxsdk_pass=$(ado_reader_mmxsdk_pass) -Pado_reader_ms_pass=$(ado_reader_ms_pass)' + options: '-PbuildNumber=$(versionMajor).$(versionBuild).$(versionRevision) -Pado_reader=$(ado_reader) -Pado_reader_mmxsdk_pass=$(ado_reader_mmxsdk_pass) -Pado_reader_ms_pass=$(ado_reader_ms_pass)' jdkVersionOption: $(jdkVersion) tasks: 'generateKotlinDocs' publishJUnitResults: false From 7d622361915b2459e457214985fd50b680dd313d Mon Sep 17 00:00:00 2001 From: Chunxue Wang Date: Thu, 10 Jul 2025 18:54:41 +0800 Subject: [PATCH 02/18] delete {2} --- azure-pipelines-pr.yml | 2 +- azure-pipelines-release.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/azure-pipelines-pr.yml b/azure-pipelines-pr.yml index 85c59a3..8ddfd17 100644 --- a/azure-pipelines-pr.yml +++ b/azure-pipelines-pr.yml @@ -12,7 +12,7 @@ variables: - name: versionMajor value: 2 - name: versionBuild - value: $[counter(format('{0}.{1}.{2}', variables['versionMajor'], eq(variables['build.reason'], 'PullRequest')), 1)] + value: $[counter(format('{0}.{1}', variables['versionMajor'], eq(variables['build.reason'], 'PullRequest')), 1)] - name: versionRevision value: 0 - name: jdkVersion diff --git a/azure-pipelines-release.yml b/azure-pipelines-release.yml index 7562d2d..65e29c4 100644 --- a/azure-pipelines-release.yml +++ b/azure-pipelines-release.yml @@ -5,7 +5,7 @@ variables: - name: versionMajor value: 2 - name: versionBuild - value: $[counter(format('{0}.{1}.{2}', variables['versionMajor'], eq(variables['build.reason'], 'PullRequest')), 1)] + value: $[counter(format('{0}.{1}', variables['versionMajor'], eq(variables['build.reason'], 'PullRequest')), 1)] - name: versionRevision value: 0 - name: jdkVersion From 853e6e8a59fbad90c5d94be03e9c30456aaace1a Mon Sep 17 00:00:00 2001 From: Chunxue Wang Date: Thu, 10 Jul 2025 19:16:52 +0800 Subject: [PATCH 03/18] update build number format --- azure-pipelines-pr.yml | 18 +++++++++--------- azure-pipelines-release.yml | 14 +++++++------- 2 files changed, 16 insertions(+), 16 deletions(-) diff --git a/azure-pipelines-pr.yml b/azure-pipelines-pr.yml index 8ddfd17..75f4d04 100644 --- a/azure-pipelines-pr.yml +++ b/azure-pipelines-pr.yml @@ -10,14 +10,14 @@ trigger: - /* variables: - name: versionMajor - value: 2 - - name: versionBuild - value: $[counter(format('{0}.{1}', variables['versionMajor'], eq(variables['build.reason'], 'PullRequest')), 1)] - - name: versionRevision + value: 3 + - name: versionMinor value: 0 + - name: versionBuild + value: format('{0}.{1}.{2}', variables['versionMajor'], variables['versionMinor'], eq(variables['build.reason'], 'PullRequest')), 1)] - name: jdkVersion value: '1.17' -name: '$(versionMajor).$(versionBuild).$(versionRevision).$(build.reason)' +name: '$(versionMajor).$(versionMinor).$(versionBuild).$(build.reason)' resources: repositories: - repository: 1esPipelines @@ -65,7 +65,7 @@ extends: inputs: gradleWrapperFile: gradlew workingDirectory: $(Build.Repository.LocalPath) - options: '-PbuildNumber=$(versionMajor).$(versionBuild).$(versionRevision) -Pado_reader=$(ado_reader) -Pado_reader_mmxsdk_pass=$(ado_reader_mmxsdk_pass) -Pado_reader_ms_pass=$(ado_reader_ms_pass)' + options: '-PbuildNumber=$(versionMajor).$(versionMinor).$(versionBuild) -Pado_reader=$(ado_reader) -Pado_reader_mmxsdk_pass=$(ado_reader_mmxsdk_pass) -Pado_reader_ms_pass=$(ado_reader_ms_pass)' jdkVersionOption: $(jdkVersion) tasks: 'assembleRelease' publishJUnitResults: false @@ -75,7 +75,7 @@ extends: inputs: gradleWrapperFile: gradlew workingDirectory: $(Build.Repository.LocalPath) - options: '-PbuildNumber=$(versionMajor).$(versionBuild).$(versionRevision) -Pado_reader=$(ado_reader) -Pado_reader_mmxsdk_pass=$(ado_reader_mmxsdk_pass) -Pado_reader_ms_pass=$(ado_reader_ms_pass)' + options: '-PbuildNumber=$(versionMajor).$(versionMinor).$(versionBuild) -Pado_reader=$(ado_reader) -Pado_reader_mmxsdk_pass=$(ado_reader_mmxsdk_pass) -Pado_reader_ms_pass=$(ado_reader_ms_pass)' jdkVersionOption: $(jdkVersion) tasks: 'assembleDebug' publishJUnitResults: false @@ -108,7 +108,7 @@ extends: gradleWrapperFile: gradlew workingDirectory: $(Build.Repository.LocalPath) tasks: 'ktlintCheck' - options: '-PbuildNumber=$(versionMajor).$(versionBuild).$(versionRevision) -Pado_reader=$(ado_reader) -Pado_reader_mmxsdk_pass=$(ado_reader_mmxsdk_pass) -Pado_reader_ms_pass=$(ado_reader_ms_pass)' + options: '-PbuildNumber=$(versionMajor).$(versionMinor).$(versionBuild) -Pado_reader=$(ado_reader) -Pado_reader_mmxsdk_pass=$(ado_reader_mmxsdk_pass) -Pado_reader_ms_pass=$(ado_reader_ms_pass)' jdkVersionOption: $(jdkVersion) condition: succeededOrFailed() @@ -118,6 +118,6 @@ extends: gradleWrapperFile: gradlew workingDirectory: $(Build.Repository.LocalPath) tasks: 'detekt' - options: '-PbuildNumber=$(versionMajor).$(versionBuild).$(versionRevision) -Pado_reader=$(ado_reader) -Pado_reader_mmxsdk_pass=$(ado_reader_mmxsdk_pass) -Pado_reader_ms_pass=$(ado_reader_ms_pass)' + options: '-PbuildNumber=$(versionMajor).$(versionMinor).$(versionBuild) -Pado_reader=$(ado_reader) -Pado_reader_mmxsdk_pass=$(ado_reader_mmxsdk_pass) -Pado_reader_ms_pass=$(ado_reader_ms_pass)' jdkVersionOption: $(jdkVersion) condition: succeededOrFailed() \ No newline at end of file diff --git a/azure-pipelines-release.yml b/azure-pipelines-release.yml index 65e29c4..3ca380d 100644 --- a/azure-pipelines-release.yml +++ b/azure-pipelines-release.yml @@ -3,14 +3,14 @@ trigger: none variables: - name: versionMajor - value: 2 - - name: versionBuild - value: $[counter(format('{0}.{1}', variables['versionMajor'], eq(variables['build.reason'], 'PullRequest')), 1)] - - name: versionRevision + value: 3 + - name: versionMinor value: 0 + - name: versionBuild + value: format('{0}.{1}.{2}', variables['versionMajor'], variables['versionMinor'], eq(variables['build.reason'], 'PullRequest')), 1)] - name: jdkVersion value: '1.17' -name: '$(versionMajor).$(versionBuild).$(versionRevision).$(build.reason)' +name: '$(versionMajor).$(versionMinor).$(versionBuild).$(build.reason)' resources: repositories: - repository: 1esPipelines @@ -58,7 +58,7 @@ extends: inputs: gradleWrapperFile: gradlew workingDirectory: $(Build.Repository.LocalPath) - options: '-PbuildNumber=$(versionMajor).$(versionBuild).$(versionRevision) -Pado_reader=$(ado_reader) -Pado_reader_mmxsdk_pass=$(ado_reader_mmxsdk_pass) -Pado_reader_ms_pass=$(ado_reader_ms_pass)' + options: '-PbuildNumber=$(versionMajor).$(versionMinor).$(versionBuild) -Pado_reader=$(ado_reader) -Pado_reader_mmxsdk_pass=$(ado_reader_mmxsdk_pass) -Pado_reader_ms_pass=$(ado_reader_ms_pass)' jdkVersionOption: $(jdkVersion) tasks: 'assemble' publishJUnitResults: false @@ -68,7 +68,7 @@ extends: inputs: gradleWrapperFile: gradlew workingDirectory: $(Build.Repository.LocalPath) - options: '-PbuildNumber=$(versionMajor).$(versionBuild).$(versionRevision) -Pado_reader=$(ado_reader) -Pado_reader_mmxsdk_pass=$(ado_reader_mmxsdk_pass) -Pado_reader_ms_pass=$(ado_reader_ms_pass)' + options: '-PbuildNumber=$(versionMajor).$(versionMinor).$(versionBuild) -Pado_reader=$(ado_reader) -Pado_reader_mmxsdk_pass=$(ado_reader_mmxsdk_pass) -Pado_reader_ms_pass=$(ado_reader_ms_pass)' jdkVersionOption: $(jdkVersion) tasks: 'generateKotlinDocs' publishJUnitResults: false From 2d1876041090bcd777ec7bbcce9128d8d1713387 Mon Sep 17 00:00:00 2001 From: Chunxue Wang Date: Thu, 10 Jul 2025 19:19:10 +0800 Subject: [PATCH 04/18] update build value --- azure-pipelines-pr.yml | 2 +- azure-pipelines-release.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/azure-pipelines-pr.yml b/azure-pipelines-pr.yml index 75f4d04..e850311 100644 --- a/azure-pipelines-pr.yml +++ b/azure-pipelines-pr.yml @@ -14,7 +14,7 @@ variables: - name: versionMinor value: 0 - name: versionBuild - value: format('{0}.{1}.{2}', variables['versionMajor'], variables['versionMinor'], eq(variables['build.reason'], 'PullRequest')), 1)] + value: $[counter(format('{0}.{1}.{2}', variables['versionMajor'], variables['versionMinor'], eq(variables['build.reason'], 'PullRequest')), 1)] - name: jdkVersion value: '1.17' name: '$(versionMajor).$(versionMinor).$(versionBuild).$(build.reason)' diff --git a/azure-pipelines-release.yml b/azure-pipelines-release.yml index 3ca380d..5bb12ed 100644 --- a/azure-pipelines-release.yml +++ b/azure-pipelines-release.yml @@ -7,7 +7,7 @@ variables: - name: versionMinor value: 0 - name: versionBuild - value: format('{0}.{1}.{2}', variables['versionMajor'], variables['versionMinor'], eq(variables['build.reason'], 'PullRequest')), 1)] + value: $[counter(format('{0}.{1}.{2}', variables['versionMajor'], variables['versionMinor'], eq(variables['build.reason'], 'PullRequest')), 1)] - name: jdkVersion value: '1.17' name: '$(versionMajor).$(versionMinor).$(versionBuild).$(build.reason)' From bc1ef5fd22c1e88874d928f78cb410b3aa7be3da Mon Sep 17 00:00:00 2001 From: Chunxue Wang Date: Fri, 11 Jul 2025 11:24:50 +0800 Subject: [PATCH 05/18] tmp test number --- azure-pipelines-release.yml | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/azure-pipelines-release.yml b/azure-pipelines-release.yml index 5bb12ed..99c9ece 100644 --- a/azure-pipelines-release.yml +++ b/azure-pipelines-release.yml @@ -3,7 +3,7 @@ trigger: none variables: - name: versionMajor - value: 3 + value: 2 - name: versionMinor value: 0 - name: versionBuild @@ -87,10 +87,21 @@ extends: Contents: '**/*.zip' TargetFolder: '$(build.artifactstagingdirectory)' condition: and(succeeded(), ne(variables['Build.Reason'], 'PullRequest')) + - task: GitHubRelease@0 + displayName: 'Create GitHub Release' + inputs: + gitHubConnection: '' + repositoryName: '' + tag: '$(Build.BuildId)' + title: 'Release $(Build.BuildId)' + assets: '$(Build.ArtifactStagingDirectory)/**' + isDraft: false + isPrerelease: false + condition: and(succeeded(), ne(variables['Build.Reason'], 'PullRequest')) templateContext: outputs: - output: pipelineArtifact displayName: 'Publish Artifact: SDK (AzureArtifacts)' condition: and(succeeded(), ne(variables['Build.Reason'], 'PullRequest')) targetPath: '$(Build.ArtifactStagingDirectory)' - artifactName: SDK \ No newline at end of file + artifactName: SDK From dadfe637345b7a505d16453b0cc5671e405841f1 Mon Sep 17 00:00:00 2001 From: Chunxue Wang Date: Fri, 11 Jul 2025 13:35:00 +0800 Subject: [PATCH 06/18] update ado id --- azure-pipelines-pr.yml | 2 +- azure-pipelines-release.yml | 14 ++------------ 2 files changed, 3 insertions(+), 13 deletions(-) diff --git a/azure-pipelines-pr.yml b/azure-pipelines-pr.yml index e850311..6e01d8e 100644 --- a/azure-pipelines-pr.yml +++ b/azure-pipelines-pr.yml @@ -1,4 +1,4 @@ -# Link To ADO Pipeline: https://dev.azure.com/microsoft/OS/_build?definitionId=176466 +# Link To ADO Pipeline: https://dev.azure.com/microsoft/OS/_build?definitionId=177937 trigger: batch: true branches: diff --git a/azure-pipelines-release.yml b/azure-pipelines-release.yml index 99c9ece..1c63dc3 100644 --- a/azure-pipelines-release.yml +++ b/azure-pipelines-release.yml @@ -1,4 +1,4 @@ -# Link To ADO Pipeline: https://dev.azure.com/microsoft/OS/_build?definitionId=125214185 +# Link To ADO Pipeline: https://dev.azure.com/microsoft/OS/_build?definitionId=177977 trigger: none variables: @@ -79,6 +79,7 @@ extends: SourceFolder: '$(Build.Repository.LocalPath)' Contents: '**/build/outputs/aar/**/*.aar' TargetFolder: '$(build.artifactstagingdirectory)' + flattenFolders: true condition: and(succeeded(), ne(variables['Build.Reason'], 'PullRequest')) - task: CopyFiles@2 displayName: 'Copy kotlin doc zip to: $(build.artifactstagingdirectory)' @@ -87,17 +88,6 @@ extends: Contents: '**/*.zip' TargetFolder: '$(build.artifactstagingdirectory)' condition: and(succeeded(), ne(variables['Build.Reason'], 'PullRequest')) - - task: GitHubRelease@0 - displayName: 'Create GitHub Release' - inputs: - gitHubConnection: '' - repositoryName: '' - tag: '$(Build.BuildId)' - title: 'Release $(Build.BuildId)' - assets: '$(Build.ArtifactStagingDirectory)/**' - isDraft: false - isPrerelease: false - condition: and(succeeded(), ne(variables['Build.Reason'], 'PullRequest')) templateContext: outputs: - output: pipelineArtifact From e449422ff998c1cb14b87896936d31c2ff267b8d Mon Sep 17 00:00:00 2001 From: Chunxue Wang Date: Fri, 11 Jul 2025 13:42:03 +0800 Subject: [PATCH 07/18] update pr check --- azure-pipelines-pr.yml | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/azure-pipelines-pr.yml b/azure-pipelines-pr.yml index 6e01d8e..3d197ee 100644 --- a/azure-pipelines-pr.yml +++ b/azure-pipelines-pr.yml @@ -8,6 +8,16 @@ trigger: paths: include: - /* + +pr: + branches: + include: + - main + - release/* + paths: + include: + - /* + variables: - name: versionMajor value: 3 From 944682315d8c35630271c37401d83ce953486e79 Mon Sep 17 00:00:00 2001 From: Chunxue Wang Date: Fri, 11 Jul 2025 14:16:40 +0800 Subject: [PATCH 08/18] update versionMajor --- azure-pipelines-release.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/azure-pipelines-release.yml b/azure-pipelines-release.yml index 1c63dc3..a77ec3a 100644 --- a/azure-pipelines-release.yml +++ b/azure-pipelines-release.yml @@ -3,7 +3,7 @@ trigger: none variables: - name: versionMajor - value: 2 + value: 3 - name: versionMinor value: 0 - name: versionBuild From de233f9ca56adf221ee8b0ee022a1f259aa4d5c9 Mon Sep 17 00:00:00 2001 From: Chunxue Wang Date: Fri, 11 Jul 2025 14:28:35 +0800 Subject: [PATCH 09/18] update github release --- azure-pipelines-release.yml | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/azure-pipelines-release.yml b/azure-pipelines-release.yml index a77ec3a..d04f506 100644 --- a/azure-pipelines-release.yml +++ b/azure-pipelines-release.yml @@ -88,6 +88,17 @@ extends: Contents: '**/*.zip' TargetFolder: '$(build.artifactstagingdirectory)' condition: and(succeeded(), ne(variables['Build.Reason'], 'PullRequest')) + - task: GitHubRelease@1 + inputs: + gitHubConnection: 'Github-Windows-Cross-Device' + repositoryName: 'microsoft/Windows-Cross-Device' + action: 'create' + target: '$(Build.SourceVersion)' + tagSource: 'userSpecifiedTag' + tag: '$(buildNumber)' + assets: '$(Build.ArtifactStagingDirectory)/*.aar' + changeLogCompareToRelease: 'lastFullRelease' + changeLogType: 'commitBased' templateContext: outputs: - output: pipelineArtifact From 431dd870e59b45ea05279ac9656a616cff05c9d2 Mon Sep 17 00:00:00 2001 From: Chunxue Wang Date: Fri, 11 Jul 2025 14:44:33 +0800 Subject: [PATCH 10/18] add release job --- azure-pipelines-release.yml | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/azure-pipelines-release.yml b/azure-pipelines-release.yml index d04f506..1611e6f 100644 --- a/azure-pipelines-release.yml +++ b/azure-pipelines-release.yml @@ -10,13 +10,18 @@ variables: value: $[counter(format('{0}.{1}.{2}', variables['versionMajor'], variables['versionMinor'], eq(variables['build.reason'], 'PullRequest')), 1)] - name: jdkVersion value: '1.17' + - name: buildNumber + value: '$(versionMajor).$(versionMinor).$(versionBuild)' + name: '$(versionMajor).$(versionMinor).$(versionBuild).$(build.reason)' + resources: repositories: - repository: 1esPipelines type: git name: 1ESPipelineTemplates/1ESPipelineTemplates ref: refs/tags/release + extends: template: v1/1ES.Official.PipelineTemplate.yml@1esPipelines parameters: @@ -58,7 +63,7 @@ extends: inputs: gradleWrapperFile: gradlew workingDirectory: $(Build.Repository.LocalPath) - options: '-PbuildNumber=$(versionMajor).$(versionMinor).$(versionBuild) -Pado_reader=$(ado_reader) -Pado_reader_mmxsdk_pass=$(ado_reader_mmxsdk_pass) -Pado_reader_ms_pass=$(ado_reader_ms_pass)' + options: '-PbuildNumber=$(buildNumber) -Pado_reader=$(ado_reader) -Pado_reader_mmxsdk_pass=$(ado_reader_mmxsdk_pass) -Pado_reader_ms_pass=$(ado_reader_ms_pass)' jdkVersionOption: $(jdkVersion) tasks: 'assemble' publishJUnitResults: false @@ -68,7 +73,7 @@ extends: inputs: gradleWrapperFile: gradlew workingDirectory: $(Build.Repository.LocalPath) - options: '-PbuildNumber=$(versionMajor).$(versionMinor).$(versionBuild) -Pado_reader=$(ado_reader) -Pado_reader_mmxsdk_pass=$(ado_reader_mmxsdk_pass) -Pado_reader_ms_pass=$(ado_reader_ms_pass)' + options: '-PbuildNumber=$(buildNumber) -Pado_reader=$(ado_reader) -Pado_reader_mmxsdk_pass=$(ado_reader_mmxsdk_pass) -Pado_reader_ms_pass=$(ado_reader_ms_pass)' jdkVersionOption: $(jdkVersion) tasks: 'generateKotlinDocs' publishJUnitResults: false @@ -88,7 +93,16 @@ extends: Contents: '**/*.zip' TargetFolder: '$(build.artifactstagingdirectory)' condition: and(succeeded(), ne(variables['Build.Reason'], 'PullRequest')) + + - stage: Release + jobs: + - job: ReleaseJob + displayName: Release + pool: + vmImage: 'ubuntu-latest' + steps: - task: GitHubRelease@1 + displayName: 'Create GitHub Release' inputs: gitHubConnection: 'Github-Windows-Cross-Device' repositoryName: 'microsoft/Windows-Cross-Device' From c3b448f1a4af01666e1fe74cff335cf1a2a0e053 Mon Sep 17 00:00:00 2001 From: Chunxue Wang Date: Fri, 11 Jul 2025 15:07:30 +0800 Subject: [PATCH 11/18] update release job --- azure-pipelines-release.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/azure-pipelines-release.yml b/azure-pipelines-release.yml index 1611e6f..eb65c75 100644 --- a/azure-pipelines-release.yml +++ b/azure-pipelines-release.yml @@ -98,8 +98,8 @@ extends: jobs: - job: ReleaseJob displayName: Release - pool: - vmImage: 'ubuntu-latest' + timeoutInMinutes: 180 + cancelTimeoutInMinutes: 5 steps: - task: GitHubRelease@1 displayName: 'Create GitHub Release' From 786572b54aef40e2e5ffebb5ec37ea48e61387e4 Mon Sep 17 00:00:00 2001 From: Chunxue Wang Date: Fri, 11 Jul 2025 15:15:40 +0800 Subject: [PATCH 12/18] Mark as release job --- azure-pipelines-release.yml | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/azure-pipelines-release.yml b/azure-pipelines-release.yml index eb65c75..8a3bcde 100644 --- a/azure-pipelines-release.yml +++ b/azure-pipelines-release.yml @@ -93,6 +93,13 @@ extends: Contents: '**/*.zip' TargetFolder: '$(build.artifactstagingdirectory)' condition: and(succeeded(), ne(variables['Build.Reason'], 'PullRequest')) + templateContext: + outputs: + - output: pipelineArtifact + displayName: 'Publish Artifact: SDK (AzureArtifacts)' + condition: and(succeeded(), ne(variables['Build.Reason'], 'PullRequest')) + targetPath: '$(Build.ArtifactStagingDirectory)' + artifactName: SDK - stage: Release jobs: @@ -100,6 +107,12 @@ extends: displayName: Release timeoutInMinutes: 180 cancelTimeoutInMinutes: 5 + templateContext: + type: releaseJob + isProduction: true + inputs: + - input: pipelineArtifact + artifactName: SDK steps: - task: GitHubRelease@1 displayName: 'Create GitHub Release' @@ -113,10 +126,4 @@ extends: assets: '$(Build.ArtifactStagingDirectory)/*.aar' changeLogCompareToRelease: 'lastFullRelease' changeLogType: 'commitBased' - templateContext: - outputs: - - output: pipelineArtifact - displayName: 'Publish Artifact: SDK (AzureArtifacts)' - condition: and(succeeded(), ne(variables['Build.Reason'], 'PullRequest')) - targetPath: '$(Build.ArtifactStagingDirectory)' - artifactName: SDK + From 9eca1ea0a924cce03f61d8ef8dd9d027507c1786 Mon Sep 17 00:00:00 2001 From: Chunxue Wang Date: Fri, 11 Jul 2025 15:32:49 +0800 Subject: [PATCH 13/18] add depends on --- azure-pipelines-release.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/azure-pipelines-release.yml b/azure-pipelines-release.yml index 8a3bcde..6c4e5cc 100644 --- a/azure-pipelines-release.yml +++ b/azure-pipelines-release.yml @@ -102,6 +102,7 @@ extends: artifactName: SDK - stage: Release + dependsOn: [Build] jobs: - job: ReleaseJob displayName: Release @@ -126,4 +127,3 @@ extends: assets: '$(Build.ArtifactStagingDirectory)/*.aar' changeLogCompareToRelease: 'lastFullRelease' changeLogType: 'commitBased' - From dc4b522d820a3e3165ea832752810e3546b93982 Mon Sep 17 00:00:00 2001 From: Chunxue Wang Date: Fri, 11 Jul 2025 16:04:42 +0800 Subject: [PATCH 14/18] change aar folder --- azure-pipelines-release.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/azure-pipelines-release.yml b/azure-pipelines-release.yml index 6c4e5cc..c382061 100644 --- a/azure-pipelines-release.yml +++ b/azure-pipelines-release.yml @@ -124,6 +124,6 @@ extends: target: '$(Build.SourceVersion)' tagSource: 'userSpecifiedTag' tag: '$(buildNumber)' - assets: '$(Build.ArtifactStagingDirectory)/*.aar' + assets: '$(Build.ArtifactStagingDirectory)/SDK/*.aar' changeLogCompareToRelease: 'lastFullRelease' changeLogType: 'commitBased' From 6f8ba95e337e83561d2de114f881a6642f3f2736 Mon Sep 17 00:00:00 2001 From: Chunxue Wang Date: Fri, 11 Jul 2025 16:49:37 +0800 Subject: [PATCH 15/18] update folder to work space --- azure-pipelines-release.yml | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/azure-pipelines-release.yml b/azure-pipelines-release.yml index c382061..a4aab8a 100644 --- a/azure-pipelines-release.yml +++ b/azure-pipelines-release.yml @@ -102,10 +102,11 @@ extends: artifactName: SDK - stage: Release - dependsOn: [Build] + dependsOn: [ Build ] + jobs: - - job: ReleaseJob - displayName: Release + - job: + ReleaseJob displayName: Release timeoutInMinutes: 180 cancelTimeoutInMinutes: 5 templateContext: @@ -124,6 +125,6 @@ extends: target: '$(Build.SourceVersion)' tagSource: 'userSpecifiedTag' tag: '$(buildNumber)' - assets: '$(Build.ArtifactStagingDirectory)/SDK/*.aar' + assets: '$(Pipeline.Workspace)/*.aar' changeLogCompareToRelease: 'lastFullRelease' changeLogType: 'commitBased' From 78028b35d88445d925600fe9b55013b952156bee Mon Sep 17 00:00:00 2001 From: Chunxue Wang Date: Fri, 11 Jul 2025 16:50:44 +0800 Subject: [PATCH 16/18] fix bug --- azure-pipelines-release.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/azure-pipelines-release.yml b/azure-pipelines-release.yml index a4aab8a..870ba06 100644 --- a/azure-pipelines-release.yml +++ b/azure-pipelines-release.yml @@ -105,8 +105,8 @@ extends: dependsOn: [ Build ] jobs: - - job: - ReleaseJob displayName: Release + - job: ReleaseJob + displayName: Release timeoutInMinutes: 180 cancelTimeoutInMinutes: 5 templateContext: From 21bb622737d6958cd183f6b429b81a0ef15da48f Mon Sep 17 00:00:00 2001 From: Chunxue Wang Date: Fri, 11 Jul 2025 17:32:48 +0800 Subject: [PATCH 17/18] Add maven publish --- azure-pipelines-release.yml | 10 ++++++++++ build.gradle.kts | 27 +++++++++++++++++++++++++++ continuity/build.gradle.kts | 2 ++ gradle/maven-publish.gradle | 25 +++++++++++++++++++++++++ 4 files changed, 64 insertions(+) create mode 100644 gradle/maven-publish.gradle diff --git a/azure-pipelines-release.yml b/azure-pipelines-release.yml index 870ba06..18a2369 100644 --- a/azure-pipelines-release.yml +++ b/azure-pipelines-release.yml @@ -78,6 +78,16 @@ extends: tasks: 'generateKotlinDocs' publishJUnitResults: false condition: and(succeeded(), ne(variables['Build.Reason'], 'PullRequest')) + - task: Gradle@2 + displayName: 'Publish to Maven' + inputs: + gradleWrapperFile: gradlew + workingDirectory: $(Build.Repository.LocalPath) + options: '-PbuildNumber=$(buildNumber) -Pado_reader=$(ado_reader) -Pado_reader_mmxsdk_pass=$(ado_reader_mmxsdk_pass) -Pado_reader_ms_pass=$(ado_reader_ms_pass)' + jdkVersionOption: $(jdkVersion) + tasks: 'publishAllToMaven' + publishJUnitResults: false + condition: and(succeeded(), ne(variables['Build.Reason'], 'PullRequest')) - task: CopyFiles@2 displayName: 'Copy AAR Files to: $(build.artifactstagingdirectory)' inputs: diff --git a/build.gradle.kts b/build.gradle.kts index c9f5c1d..48d60ff 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -164,3 +164,30 @@ tasks.register("separateDocZipped") { } } } + +tasks.register("publishAllToMaven") { + subprojects { + val subproject = this + if (subproject.plugins.hasPlugin("com.android.library")) { + dependsOn("${subproject.name}:publish") + } + } +} + +subprojects { + afterEvaluate { + if (plugins.hasPlugin("com.android.library")) { + extensions.configure { + publishing { + multipleVariants("releaseAndDebug") { + includeBuildTypeValues("debug", "release") + } + } + + buildFeatures { + buildConfig = true + } + } + } + } +} diff --git a/continuity/build.gradle.kts b/continuity/build.gradle.kts index 90bbd62..82923ad 100644 --- a/continuity/build.gradle.kts +++ b/continuity/build.gradle.kts @@ -5,6 +5,8 @@ plugins { alias(libs.plugins.dokka) } +apply(from = "${rootDir}/gradle/maven-publish.gradle") + android { namespace = "com.microsoft.crossdevicesdk.continuity" compileSdk = libs.versions.compileSdk.get().toInt() diff --git a/gradle/maven-publish.gradle b/gradle/maven-publish.gradle new file mode 100644 index 0000000..08ca17c --- /dev/null +++ b/gradle/maven-publish.gradle @@ -0,0 +1,25 @@ +apply plugin: "maven-publish" + +publishing { + publications { + releaseAndDebug(MavenPublication) { + groupId "${rootProject.ext.mavenGroupId}" + artifactId "${rootProject.ext.build_sdkName}-${project.name}" + version "${rootProject.ext.componentizedSDKVersion}" + afterEvaluate { + from(components.releaseAndDebug) + } + } + } + + repositories { + maven { + name "mmxsdk-visualstudio.com-mmx_sdk" + url "https://mmxsdk.pkgs.visualstudio.com/_packaging/MMX_SDK/maven/v1" + credentials { + username ado_reader + password ado_reader_mmxsdk_pass + } + } + } +} \ No newline at end of file From 976f7f23dc3d691a5459b401a9be4b2c05fc8381 Mon Sep 17 00:00:00 2001 From: Chunxue Wang Date: Fri, 11 Jul 2025 19:02:58 +0800 Subject: [PATCH 18/18] delete legacy workflow --- .../workflows/prevent-unauthorized-PRs.yml | 28 ------------------- 1 file changed, 28 deletions(-) delete mode 100644 .github/workflows/prevent-unauthorized-PRs.yml diff --git a/.github/workflows/prevent-unauthorized-PRs.yml b/.github/workflows/prevent-unauthorized-PRs.yml deleted file mode 100644 index ea07368..0000000 --- a/.github/workflows/prevent-unauthorized-PRs.yml +++ /dev/null @@ -1,28 +0,0 @@ -name: Prevent Unauthorized PRs - -on: - pull_request: - types: - - opened - - reopened - - synchronize - - edited - -jobs: - check-membership: - runs-on: ubuntu-latest - steps: - - name: Check if user is a member of Microsoft organization - id: check_membership - run: | - USERNAME=${{ github.actor }} - USER_TOKEN=${{ secrets.USER_TOKEN }} - RESPONSE=$(curl -s -H "Authorization: token $USER_TOKEN" https://api.github.com/orgs/microsoft/memberships/$USERNAME) - if echo "$RESPONSE" | jq -e '.state == "active"' > /dev/null; then - echo "User is an active member of the Microsoft organization." - echo "::set-output name=member::true" - else - echo "User is not a member of the Microsoft organization." - echo "::set-output name=member::false" - exit 1 - fi \ No newline at end of file