aboutsummaryrefslogtreecommitdiffhomepage
path: root/.ci/templates
diff options
context:
space:
mode:
authorZach Hilman <[email protected]>2019-09-22 16:01:29 -0400
committerFlame Sage <[email protected]>2019-09-22 20:01:29 +0000
commitcc3db2aa43ee617ed5086976e0354c72feba713c (patch)
tree4e61181ceb6784282cb034cf5231d9b259ce6e1d /.ci/templates
parentaaec1562f8631303d1a5abb6c75f2422d6d7cf71 (diff)
downloadyuzu-android-cc3db2aa43ee617ed5086976e0354c72feba713c.tar.gz
yuzu-android-cc3db2aa43ee617ed5086976e0354c72feba713c.zip
ci: Split mainline pipeline and add support for GitHub releases (#2900)
* ci: Add mock build alternative for fast testing * ci: Always cache build * ci: Extract steps to download build stage artifacts * ci: Add template to release to GitHub * ci: Add template to release to Azure Universal Artifacts * ci: Split mainline to two pipelines
Diffstat (limited to '.ci/templates')
-rw-r--r--.ci/templates/build-mock.yml5
-rw-r--r--.ci/templates/build-single.yml13
-rw-r--r--.ci/templates/release-download.yml13
-rw-r--r--.ci/templates/release-github.yml11
-rw-r--r--.ci/templates/release-universal.yml10
5 files changed, 45 insertions, 7 deletions
diff --git a/.ci/templates/build-mock.yml b/.ci/templates/build-mock.yml
new file mode 100644
index 000000000..e7aba93de
--- /dev/null
+++ b/.ci/templates/build-mock.yml
@@ -0,0 +1,5 @@
+steps:
+ - script: mkdir artifacts || echo 'X' > artifacts/T1.txt
+ - publish: artifacts
+ artifact: 'yuzu-$(BuildName)-$(BuildSuffix)'
+ displayName: 'Upload Artifacts' \ No newline at end of file
diff --git a/.ci/templates/build-single.yml b/.ci/templates/build-single.yml
index 357731eb9..cd9d1df88 100644
--- a/.ci/templates/build-single.yml
+++ b/.ci/templates/build-single.yml
@@ -7,13 +7,12 @@ steps:
displayName: 'Prepare Environment'
inputs:
dockerVersion: '17.09.0-ce'
-- ${{ if eq(parameters.cache, 'true') }}:
- - task: CacheBeta@0
- displayName: 'Cache Build System'
- inputs:
- key: yuzu-v1-$(BuildName)-$(BuildSuffix)-$(CacheSuffix)
- path: $(System.DefaultWorkingDirectory)/ccache
- cacheHitVar: CACHE_RESTORED
+- task: CacheBeta@0
+ displayName: 'Cache Build System'
+ inputs:
+ key: yuzu-v1-$(BuildName)-$(BuildSuffix)-$(CacheSuffix)
+ path: $(System.DefaultWorkingDirectory)/ccache
+ cacheHitVar: CACHE_RESTORED
- script: chmod a+x ./.ci/scripts/$(ScriptFolder)/exec.sh && ./.ci/scripts/$(ScriptFolder)/exec.sh
displayName: 'Build'
- script: chmod a+x ./.ci/scripts/$(ScriptFolder)/upload.sh && RELEASE_NAME=$(BuildName) ./.ci/scripts/$(ScriptFolder)/upload.sh
diff --git a/.ci/templates/release-download.yml b/.ci/templates/release-download.yml
new file mode 100644
index 000000000..50ca06bb2
--- /dev/null
+++ b/.ci/templates/release-download.yml
@@ -0,0 +1,13 @@
+steps:
+ - task: DownloadPipelineArtifact@2
+ displayName: 'Download Windows Release'
+ inputs:
+ artifactName: 'yuzu-$(BuildName)-windows-mingw'
+ buildType: 'current'
+ targetPath: '$(Build.ArtifactStagingDirectory)'
+ - task: DownloadPipelineArtifact@2
+ displayName: 'Download Linux Release'
+ inputs:
+ artifactName: 'yuzu-$(BuildName)-linux'
+ buildType: 'current'
+ targetPath: '$(Build.ArtifactStagingDirectory)' \ No newline at end of file
diff --git a/.ci/templates/release-github.yml b/.ci/templates/release-github.yml
new file mode 100644
index 000000000..39fd47f1c
--- /dev/null
+++ b/.ci/templates/release-github.yml
@@ -0,0 +1,11 @@
+steps:
+ - template: ./release-download.yml
+ - task: GitHubRelease@0
+ inputs:
+ action: 'create'
+ title: 'yuzu $(BuildName) #$(Build.BuildId)'
+ assets: '$(Build.ArtifactStagingDirectory)/*'
+ gitHubConnection: $(GitHubReleaseConnectionName)
+ repositoryName: '$(Build.Repository.Name)'
+ target: '$(Build.SourceVersion)'
+ tagSource: 'auto' \ No newline at end of file
diff --git a/.ci/templates/release-universal.yml b/.ci/templates/release-universal.yml
new file mode 100644
index 000000000..707697007
--- /dev/null
+++ b/.ci/templates/release-universal.yml
@@ -0,0 +1,10 @@
+steps:
+ - template: ./release-download.yml
+ - task: UniversalPackages@0
+ displayName: Publish Artifacts
+ inputs:
+ command: publish
+ publishDirectory: '$(Build.ArtifactStagingDirectory)'
+ vstsFeedPublish: 'yuzu-$(BuildName)'
+ vstsFeedPackagePublish: 'main'
+ packagePublishDescription: 'Yuzu Windows and Linux Executable Packages' \ No newline at end of file