diff --git a/.azure-pipelines/templates/jobs/setup_dependencies.yaml b/.azure-pipelines/templates/jobs/setup_dependencies.yaml index 63ea90ff4..d3b041e8b 100644 --- a/.azure-pipelines/templates/jobs/setup_dependencies.yaml +++ b/.azure-pipelines/templates/jobs/setup_dependencies.yaml @@ -5,8 +5,6 @@ parameters: - name: serviceName type: string - # - name: dependenciesArtifacts - # type: string - name: dependenciesCaches type: object default: [] @@ -20,18 +18,6 @@ parameters: - name: dependenciesBuildTimeout type: number default: 60 - # - name: dependenciesSource - # type: string - # default: 'current' - # values: - # - 'current' - # - 'specific' - # - name: dependenciesVersion - # type: string - # default: 'latest' - # values: - # - 'latest' - # - 'latestFromBranch' jobs: - job: SetupDependencies_${{parameters.serviceName}} @@ -54,26 +40,11 @@ jobs: steps: # Restore previously-built dependencies from caches - ${{ each cache in parameters.dependenciesCaches }}: - - task: Cache@2 - displayName: Restore cached ${{parameters.serviceName}} dependencies - inputs: - key: '"${{parameters.serviceName}}-dependencies" | ${{cache.key}}' - path: '${{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)' + - template: ./../../steps/cache.yaml + parameters: + cacheIdent: '${{parameters.serviceName}}-dependencies' + cacheKeys: '${{cache.key}}' + cachePath: '${{cache.path}}' # Compile dependencies - template: ./../../steps/make.yaml @@ -81,17 +52,4 @@ jobs: makeJob: dependencies makeService: ${{parameters.serviceName}} - # (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' \ No newline at end of file + # (Note: a post-job for updating the dependency cache is automatically created, so no further step is due here.) \ No newline at end of file diff --git a/.azure-pipelines/templates/steps/cache.yaml b/.azure-pipelines/templates/steps/cache.yaml new file mode 100644 index 000000000..a86689357 --- /dev/null +++ b/.azure-pipelines/templates/steps/cache.yaml @@ -0,0 +1,18 @@ +# SPDX-FileCopyrightText: 2025 Sarah Vaupel +# +# 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}}' \ No newline at end of file