Skip to content

Commit 9a80e07

Browse files
authored
Merge pull request #257 from microsoftgraph/rsh/deploymentStagesYml
Updating build-and-package.yml to include all Stages
2 parents 59ec51a + e12d853 commit 9a80e07

File tree

9 files changed

+136
-57
lines changed

9 files changed

+136
-57
lines changed

.azure-pipelines/buildAndPackage.yml

Lines changed: 64 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -30,10 +30,67 @@ pr: none
3030
pool:
3131
vmImage: windows-latest
3232

33-
steps:
34-
- template: templates/checkout-and-credscan.yml
35-
- template: templates/install-java.yml
36-
- template: templates/secure-files.yml
37-
- template: templates/build-and-coverage.yml
38-
- template: templates/publish-artefacts.yml
39-
- template: templates/alert-failure.yml
33+
stages:
34+
- stage: Build
35+
jobs:
36+
- job: Build
37+
steps:
38+
- template: templates/build/checkout-and-credscan.yml
39+
- template: templates/build/install-java.yml
40+
- template: templates/secure-files.yml
41+
parameters:
42+
stageID: 'build'
43+
- template: templates/build/build-and-coverage.yml
44+
- template: templates/build/publish-artefacts.yml
45+
- template: templates/alert-failure.yml
46+
47+
- stage: Maven-Preview
48+
condition: and(succeeded(), eq(variables['Build.SourceBranch'], 'refs/heads/dev'))
49+
jobs:
50+
- deployment: Maven-Preview
51+
environment: 'MSGraph SDK Development - Java'
52+
pool:
53+
vmImage: windows-latest
54+
strategy:
55+
runOnce:
56+
deploy:
57+
steps:
58+
- template: templates/secure-files.yml
59+
- template: templates/copy-and-build.yml
60+
parameters:
61+
task: 'publishSnapshotPublicationToSonatypeSnapshotRepository'
62+
- template: templates/alert-failure.yml
63+
64+
- stage: Maven-Release-And-Github-Release
65+
dependsOn: []
66+
condition: and(succeeded(), eq(variables['Build.SourceBranch'], 'refs/heads/master'))
67+
jobs:
68+
- deployment: Maven-Release
69+
environment: 'MSGraph SDK Development - Java'
70+
pool:
71+
vmImage: windows-latest
72+
strategy:
73+
runOnce:
74+
deploy:
75+
steps:
76+
- template: templates/secure-files.yml
77+
parameters:
78+
stageID: 'release'
79+
- template: templates/copy-and-build.yml
80+
parameters:
81+
task: 'publishMavenCentralReleasePublicationToSonatypeRepository'
82+
- template: templates/alert-failure.yml
83+
84+
- deployment: Github-Release
85+
dependsOn: Maven-Release
86+
environment: 'MSGraph SDK Development - Java'
87+
pool:
88+
vmImage: windows-latest
89+
strategy:
90+
runOnce:
91+
deploy:
92+
steps:
93+
- template: templates/version-and-release.yml
94+
parameters:
95+
gitConnection: 'ramsessanchez'
96+
- template: templates/alert-failure.yml

.azure-pipelines/prValidate.yml

Lines changed: 0 additions & 35 deletions
This file was deleted.
File renamed without changes.

.azure-pipelines/templates/checkout-and-credscan.yml renamed to .azure-pipelines/templates/build/checkout-and-credscan.yml

File renamed without changes.
File renamed without changes.

.azure-pipelines/templates/publish-artefacts.yml renamed to .azure-pipelines/templates/build/publish-artefacts.yml

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,6 @@ steps:
1515
Scripts/**
1616
TargetFolder: '$(Build.ArtifactStagingDirectory)/'
1717

18-
- task: PublishBuildArtifacts@1
19-
displayName: 'Publish Artifact: drop'
20-
inputs:
21-
PathtoPublish: '$(Build.ArtifactStagingDirectory)'
18+
- publish: $(Build.ArtifactStagingDirectory)
19+
artifact: Drop
20+
displayName: Publish Build Artifact
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
parameters:
2+
- name: task
3+
type: string
4+
default: ''
5+
6+
steps:
7+
- task: CopyFiles@2
8+
inputs:
9+
SourceFolder: '$(Agent.TempDirectory)'
10+
Contents: '**'
11+
TargetFolder: '$(DROP_PATH)/'
12+
13+
- task: Gradle@2
14+
inputs:
15+
gradleWrapperFile: '$(DROP_PATH)/gradlew'
16+
workingDirectory: '$(DROP_PATH)'
17+
options: '-x jar -x javadoc -x javadocJar -x compileJava -x processResources -x classes -x sourceJar'
18+
tasks: ${{ parameters.task }}
19+
publishJUnitResults: true
20+
testResultsFiles: '**/TEST-*.xml'
21+
javaHomeOption: 'JDKVersion'
22+
sonarQubeRunAnalysis: false
23+
spotBugsAnalysis: false

.azure-pipelines/templates/secure-files.yml

Lines changed: 22 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,29 @@
1+
parameters:
2+
- name: stageID
3+
type: string
4+
default: ''
5+
16
steps:
27
- task: DownloadSecureFile@1
38
inputs:
49
secureFile: 'local.properties'
10+
retryCount: '5'
511

6-
- task: DownloadSecureFile@1
7-
inputs:
8-
secureFile: 'secring.gpg'
12+
- ${{ if or(eq(parameters.stageID, 'build'), eq(parameters.stageID, 'release') }}:
13+
- task: DownloadSecureFile@1
14+
inputs:
15+
secureFile: 'secring.gpg'
16+
retryCount: '5'
17+
18+
- task: DownloadSecureFile@1
19+
inputs:
20+
secureFile: 'secring.gpg.lock'
21+
retryCount: '5'
922

10-
- task: DownloadSecureFile@1
11-
inputs:
12-
secureFile: 'secring.gpg.lock'
23+
- ${{ if eq(parameters.stageID, 'build') }}:
24+
- task: CopyFiles@2
25+
inputs:
26+
SourceFolder: '$(Agent.TempDirectory)'
27+
Contents: '**'
28+
TargetFolder: '$(System.DefaultWorkingDirectory)'
1329

14-
- task: CopyFiles@2
15-
inputs:
16-
SourceFolder: '$(Agent.TempDirectory)'
17-
Contents: '**'
18-
TargetFolder: '$(System.DefaultWorkingDirectory)'
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
parameters:
2+
- name: gitConnection
3+
type: string
4+
default: ''
5+
6+
steps:
7+
- task: PowerShell@2
8+
inputs:
9+
filePath: '$(DROP_PATH)/Scripts/getLatestVersion.ps1'
10+
arguments: '-propertiesPath "$(PROPERTIES_PATH)"'
11+
12+
- task: GitHubRelease@1
13+
inputs:
14+
gitHubConnection: ${{ parameters.gitConnection }}
15+
repositoryName: '$(Build.Repository.Name)'
16+
action: 'create'
17+
target: '$(Build.SourceVersion)'
18+
tagSource: 'userSpecifiedTag'
19+
tag: '$(VERSION_STRING)'
20+
assets: |
21+
!**/**
22+
$(Build.ArtifactStagingDirectory)/*
23+
changeLogCompareToRelease: 'lastFullRelease'
24+
changeLogType: 'commitBased'

0 commit comments

Comments
 (0)