ci(azure-pipelines): templatify caching; use cache template for dependencies
This commit is contained in:
parent
fb2647803b
commit
248c8ca42e
@ -5,8 +5,6 @@
|
|||||||
parameters:
|
parameters:
|
||||||
- name: serviceName
|
- name: serviceName
|
||||||
type: string
|
type: string
|
||||||
# - name: dependenciesArtifacts
|
|
||||||
# type: string
|
|
||||||
- name: dependenciesCaches
|
- name: dependenciesCaches
|
||||||
type: object
|
type: object
|
||||||
default: []
|
default: []
|
||||||
@ -20,18 +18,6 @@ parameters:
|
|||||||
- name: dependenciesBuildTimeout
|
- name: dependenciesBuildTimeout
|
||||||
type: number
|
type: number
|
||||||
default: 60
|
default: 60
|
||||||
# - name: dependenciesSource
|
|
||||||
# type: string
|
|
||||||
# default: 'current'
|
|
||||||
# values:
|
|
||||||
# - 'current'
|
|
||||||
# - 'specific'
|
|
||||||
# - name: dependenciesVersion
|
|
||||||
# type: string
|
|
||||||
# default: 'latest'
|
|
||||||
# values:
|
|
||||||
# - 'latest'
|
|
||||||
# - 'latestFromBranch'
|
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
- job: SetupDependencies_${{parameters.serviceName}}
|
- job: SetupDependencies_${{parameters.serviceName}}
|
||||||
@ -54,26 +40,11 @@ jobs:
|
|||||||
steps:
|
steps:
|
||||||
# Restore previously-built dependencies from caches
|
# Restore previously-built dependencies from caches
|
||||||
- ${{ each cache in parameters.dependenciesCaches }}:
|
- ${{ each cache in parameters.dependenciesCaches }}:
|
||||||
- task: Cache@2
|
- template: ./../../steps/cache.yaml
|
||||||
displayName: Restore cached ${{parameters.serviceName}} dependencies
|
parameters:
|
||||||
inputs:
|
cacheIdent: '${{parameters.serviceName}}-dependencies'
|
||||||
key: '"${{parameters.serviceName}}-dependencies" | ${{cache.key}}'
|
cacheKeys: '${{cache.key}}'
|
||||||
path: '${{cache.path}}'
|
cachePath: '${{cache.path}}'
|
||||||
# - task: DownloadPipelineArtifact@2
|
|
||||||
# displayName: Download previously built ${{parameters.serviceName}} dependencies
|
|
||||||
# condition: eq(variables.useCachedDependencies, true)
|
|
||||||
# continueOnError: true
|
|
||||||
# inputs:
|
|
||||||
# artifactName: '${{parameters.serviceName}}-dependencies'
|
|
||||||
# source: ${{parameters.dependenciesSource}}
|
|
||||||
# project: 'Fahrerausbildung' # TODO: hardcoded for now, could not figure out which predefined variable to use
|
|
||||||
# pipeline: $(System.DefinitionId)
|
|
||||||
# buildVersionToDownload: '${{parameters.dependenciesVersion}}'
|
|
||||||
# # tags: '${{dependenciesArtifacts}}'
|
|
||||||
# allowPartiallySucceededBuilds: true
|
|
||||||
# allowFailedBuilds: true
|
|
||||||
# patterns: '${{parameters.dependenciesArtifacts}}'
|
|
||||||
# targetPath: '$(Build.Repository.LocalPath)'
|
|
||||||
|
|
||||||
# Compile dependencies
|
# Compile dependencies
|
||||||
- template: ./../../steps/make.yaml
|
- template: ./../../steps/make.yaml
|
||||||
@ -81,17 +52,4 @@ jobs:
|
|||||||
makeJob: dependencies
|
makeJob: dependencies
|
||||||
makeService: ${{parameters.serviceName}}
|
makeService: ${{parameters.serviceName}}
|
||||||
|
|
||||||
# (Note: a post-job for updating the dependency cache is automatically created, so no further step is due here.)
|
# (Note: a post-job for updating the dependency cache is automatically created, so no further step is due here.)
|
||||||
|
|
||||||
# Upload newly-built dependencies as artifacts
|
|
||||||
# - task: CopyFiles@2
|
|
||||||
# displayName: Copy ${{parameters.serviceName}} dependencies for upload
|
|
||||||
# inputs:
|
|
||||||
# Contents: '${{parameters.dependenciesArtifacts}}'
|
|
||||||
# TargetFolder: '$(Build.ArtifactStagingDirectory)'
|
|
||||||
# - task: PublishBuildArtifacts@1
|
|
||||||
# displayName: Upload ${{parameters.serviceName}} dependencies as artifacts
|
|
||||||
# inputs:
|
|
||||||
# PathtoPublish: '$(Build.ArtifactStagingDirectory)'
|
|
||||||
# ArtifactName: '${{parameters.serviceName}}-dependencies'
|
|
||||||
# publishLocation: 'Container'
|
|
||||||
18
.azure-pipelines/templates/steps/cache.yaml
Normal file
18
.azure-pipelines/templates/steps/cache.yaml
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
# SPDX-FileCopyrightText: 2025 Sarah Vaupel <sarah.vaupel@uniworx.de>
|
||||||
|
#
|
||||||
|
# SPDX-License-Identifier: AGPL-3.0-or-later
|
||||||
|
|
||||||
|
parameters:
|
||||||
|
- name: cacheIdent
|
||||||
|
type: string
|
||||||
|
- name: cacheKeys
|
||||||
|
type: string
|
||||||
|
- name: cachePath
|
||||||
|
type: string
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- task: Cache@2
|
||||||
|
displayName: Restore ${{parameters.cacheIdent}} cache
|
||||||
|
inputs:
|
||||||
|
key: '"${{parameters.cacheIdent}}" | ${{cacheKeys}}'
|
||||||
|
path: '${{cachePath}}'
|
||||||
Reference in New Issue
Block a user