From 2989f30f3e1008149f9dd883fa42b0489a4a7b8d Mon Sep 17 00:00:00 2001 From: Benoy Bose Date: Sat, 15 Mar 2025 07:59:47 +0530 Subject: [PATCH] Reusing extendable template --- fitlien-services-pipeline.yaml | 95 +++++----------------------------- 1 file changed, 14 insertions(+), 81 deletions(-) diff --git a/fitlien-services-pipeline.yaml b/fitlien-services-pipeline.yaml index eaf9dce..f460254 100644 --- a/fitlien-services-pipeline.yaml +++ b/fitlien-services-pipeline.yaml @@ -11,85 +11,18 @@ variables: patch: $[counter(variables['prefix'], 100)] buildNumber: $(major).$(minor).$(patch) -steps: - - task: PowerShell@2 - displayName: "Setting build version" - inputs: - targetType: "inline" - script: | - Write-Host "##vso[build.updatebuildnumber]$(buildNumber)" +resources: + rrepositories: + - repository: templateRepo + endpoint: cosq-network + type: github + name: cosq-network/azure-build-pipeline-templates - - task: UseNode@1 - displayName: "Setting up node" - inputs: - version: "22" - - - task: Bash@3 - inputs: - targetType: "inline" - script: | - rm -rf node_modules - npm clean-install - workingDirectory: "$(System.DefaultWorkingDirectory)/functions" - - - task: PowerShell@2 - displayName: "Set version in package.json" - inputs: - targetType: "inline" - script: | - $pkg = Get-Content -Path "$(System.DefaultWorkingDirectory)/functions/package.json" -Raw | ConvertFrom-Json - $pkg.version = "$(buildNumber)" - $pkg | ConvertTo-Json -Depth 100 | Set-Content -Path "$(System.DefaultWorkingDirectory)/functions/package.json" - - - task: CmdLine@2 - displayName: "Copy .env.example to .env" - inputs: - script: | - cp "$(System.DefaultWorkingDirectory)/functions/.env.example" "$(System.DefaultWorkingDirectory)/functions/.env" - - - task: replacetokens@6 - displayName: "Replace tokens in .env file" - inputs: - root: "$(System.DefaultWorkingDirectory)/functions/" - sources: .env - - - task: CmdLine@2 - displayName: "install firebase tools" - inputs: - script: curl -sL firebase.tools | upgrade=true bash - workingDirectory: $(Agent.ToolsDirectory) - - - task: Bash@3 - displayName: "Deploy functions to firebase" - inputs: - targetType: "inline" - workingDirectory: "$(Build.SourcesDirectory)" - script: | - npm install -g typescript - cd functions - npm install - npx tsc - cd $(Build.SourcesDirectory) - firebase deploy --only functions --token "$(FIREBASE_TOKEN)" --force --non-interactive - - - task: DeleteFiles@1 - displayName: "Remove node_modules, *.log files, src directory from functions directory" - inputs: - SourceFolder: "$(System.DefaultWorkingDirectory)/functions" - Contents: | - node_modules/** - *.log - - - task: ArchiveFiles@2 - displayName: "Archive functions directory" - inputs: - rootFolderOrFile: "$(System.DefaultWorkingDirectory)/functions" - includeRootFolder: false - archiveFile: "$(System.DefaultWorkingDirectory)/fitlien-services-$(buildNumber).zip" - - - task: CopyFiles@2 - displayName: "Copy archive to staging directory" - inputs: - SourceFolder: "$(System.DefaultWorkingDirectory)" - Contents: "fitlien-services-$(buildNumber).zip" - TargetFolder: "$(System.ArtifactsDirectory)" +extends: + template: template.yaml@templateRepo + parameters: + nodeVersion: "20" + firebaseTokenSecret: $(FIREBASE_TOKEN) + functionsWorkingDirectory: "$(Build.SourcesDirectory)/functions" + envExamplePath: "$(Build.SourcesDirectory)/functions/.env.example" + envPath: "$(Build.SourcesDirectory)/functions/.env"