From d391043ffd7630041917ec6e41053862c8af676d Mon Sep 17 00:00:00 2001 From: Nikolaj Bjorner Date: Sat, 8 Jan 2022 11:32:08 -0800 Subject: [PATCH] only one arch at a time --- scripts/mk_nuget_task.py | 17 +++--- scripts/nightly.yaml | 108 ++++++++++++++++++++++++++++++++++++--- 2 files changed, 108 insertions(+), 17 deletions(-) diff --git a/scripts/mk_nuget_task.py b/scripts/mk_nuget_task.py index 95e34e5ba..90aef8f69 100644 --- a/scripts/mk_nuget_task.py +++ b/scripts/mk_nuget_task.py @@ -137,25 +137,22 @@ class Env: self.commit = argv[5] self.source_root = argv[6] self.symbols = False + self.arch = "x64" if len(argv) > 7 and "symbols" == argv[7]: self.symbols = True + if len(argv) > 8: + self.arch = argv[8] - def create(self, arch): + def create(self): mk_dir(self.packages) - unpack(self.packages, self.symbols, arch) + unpack(self.packages, self.symbols, self.arch) mk_targets(self.source_root) mk_icon(self.source_root) - create_nuget_spec(self.version, self.repo, self.branch, self.commit, self.symbols, arch) - - def clear(self): - os.rmtree("out/runtimes") - os.rmtree("out/lib") + create_nuget_spec(self.version, self.repo, self.branch, self.commit, self.symbols, self.arch) def main(): env = Env(sys.argv) print(env.packages) - env.create("x64") - env.clear() - env.create("x86") + env.create() main() diff --git a/scripts/nightly.yaml b/scripts/nightly.yaml index 5509c374b..09149c0a2 100644 --- a/scripts/nightly.yaml +++ b/scripts/nightly.yaml @@ -132,8 +132,8 @@ stages: - stage: Package jobs: - - job: NuGet - displayName: "NuGet packaging" + - job: NuGet64 + displayName: "NuGet 64 packaging" pool: vmImage: "windows-latest" steps: @@ -148,11 +148,6 @@ stages: inputs: artifact: 'Windows64' path: $(Agent.TempDirectory)\package - - task: DownloadPipelineArtifact@2 - displayName: 'Download Win32 Build' - inputs: - artifact: 'Windows32' - path: $(Agent.TempDirectory)\package - task: DownloadPipelineArtifact@2 displayName: 'Download Ubuntu Build' inputs: @@ -245,6 +240,105 @@ stages: targetPath: $(Build.ArtifactStagingDirectory) artifactName: 'NuGet' + - job: NuGet32 + displayName: "NuGet 32 packaging" + pool: + vmImage: "windows-latest" + steps: + - powershell: write-host $(System.DefinitionId) + displayName: 'System.DefinitionId' + - powershell: write-host $(Build.BuildId) + displayName: 'Build.BuildId' + - powershell: write-host $(System.TeamProjectId) + displayName: 'System.TeamProjectId' + - task: DownloadPipelineArtifact@2 + displayName: 'Download Win32 Build' + inputs: + artifact: 'Windows32' + path: $(Agent.TempDirectory)\package + - task: NuGetToolInstaller@0 + inputs: + versionSpec: 5.x + checkLatest: false + - task: PythonScript@0 + displayName: 'Python: assemble files' + inputs: + scriptSource: 'filepath' + scriptPath: scripts\mk_nuget_task.py + workingDirectory: $(Agent.TempDirectory)\package + arguments: + $(Agent.TempDirectory)\package + $(ReleaseVersion) + $(Build.Repository.Uri) + $(Build.SourceBranchName) + $(Build.SourceVersion) + $(Build.SourcesDirectory) + symbols + x86 + - task: NugetCommand@2 + displayName: 'NuGet Pack Symbols' + inputs: + command: custom + arguments: 'pack $(Agent.TempDirectory)\package\out\Microsoft.Z3.x86.sym.nuspec -OutputDirectory $(Build.ArtifactStagingDirectory) -Verbosity detailed -Symbols -SymbolPackageFormat snupkg -BasePath $(Agent.TempDirectory)\package\out' + - task: EsrpCodeSigning@1 + displayName: 'Sign Package' + inputs: + ConnectedServiceName: 'z3-esrp-signing-2' + FolderPath: $(Build.ArtifactStagingDirectory) + Pattern: Microsoft.Z3.$(ReleaseVersion).nupkg + signConfigType: 'inlineSignParams' + inlineOperation: | + [ + { + "KeyCode" : "CP-401405", + "OperationCode" : "NuGetSign", + "Parameters" : {}, + "ToolName" : "sign", + "ToolVersion" : "1.0" + }, + { + "KeyCode" : "CP-401405", + "OperationCode" : "NuGetVerify", + "Parameters" : {}, + "ToolName" : "sign", + "ToolVersion" : "1.0" + } + ] + SessionTimeout: '60' + MaxConcurrency: '50' + MaxRetryAttempts: '5' + - task: EsrpCodeSigning@1 + displayName: 'Sign Symbol Package' + inputs: + ConnectedServiceName: 'z3-esrp-signing-2' + FolderPath: $(Build.ArtifactStagingDirectory) + Pattern: Microsoft.Z3.x86.$(ReleaseVersion).snupkg + signConfigType: 'inlineSignParams' + inlineOperation: | + [ + { + "KeyCode" : "CP-401405", + "OperationCode" : "NuGetSign", + "Parameters" : {}, + "ToolName" : "sign", + "ToolVersion" : "1.0" + }, + { + "KeyCode" : "CP-401405", + "OperationCode" : "NuGetVerify", + "Parameters" : {}, + "ToolName" : "sign", + "ToolVersion" : "1.0" + } + ] + SessionTimeout: '60' + MaxConcurrency: '50' + MaxRetryAttempts: '5' + - task: PublishPipelineArtifact@1 + inputs: + targetPath: $(Build.ArtifactStagingDirectory) + artifactName: 'NuGet' + - job: Python displayName: "Python packaging"