|
@@ -1,59 +0,0 @@
|
|
|
-parameters:
|
|
|
- - name: LinuxImage
|
|
|
- type: string
|
|
|
- default: "ubuntu-latest"
|
|
|
- - name: GeneratorVersion
|
|
|
- type: string
|
|
|
- default: "5.0.1"
|
|
|
-
|
|
|
-jobs:
|
|
|
-- job: GenerateApiClients
|
|
|
- displayName: 'Generate Api Clients'
|
|
|
- condition: startsWith(variables['Build.SourceBranch'], 'refs/tags/v')
|
|
|
- dependsOn: Test
|
|
|
-
|
|
|
- pool:
|
|
|
- vmImage: "${{ parameters.LinuxImage }}"
|
|
|
-
|
|
|
- steps:
|
|
|
- - task: DownloadPipelineArtifact@2
|
|
|
- displayName: 'Download OpenAPI Spec Artifact'
|
|
|
- inputs:
|
|
|
- source: 'current'
|
|
|
- artifact: "OpenAPI Spec"
|
|
|
- path: "$(System.ArtifactsDirectory)/openapispec"
|
|
|
- runVersion: "latest"
|
|
|
-
|
|
|
- - task: CmdLine@2
|
|
|
- displayName: 'Download OpenApi Generator'
|
|
|
- inputs:
|
|
|
- script: "wget https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/${{ parameters.GeneratorVersion }}/openapi-generator-cli-${{ parameters.GeneratorVersion }}.jar -O openapi-generator-cli.jar"
|
|
|
-
|
|
|
-## Authenticate with npm registry
|
|
|
- - task: npmAuthenticate@0
|
|
|
- inputs:
|
|
|
- workingFile: ./.npmrc
|
|
|
- customEndpoint: 'jellyfin-bot for NPM'
|
|
|
-
|
|
|
-## Generate npm api client
|
|
|
- - task: CmdLine@2
|
|
|
- displayName: 'Build stable typescript axios client'
|
|
|
- inputs:
|
|
|
- script: "bash ./apiclient/templates/typescript/axios/generate.sh $(System.ArtifactsDirectory)"
|
|
|
-
|
|
|
-## Run npm install
|
|
|
- - task: Npm@1
|
|
|
- displayName: 'Install npm dependencies'
|
|
|
- inputs:
|
|
|
- command: install
|
|
|
- workingDir: ./apiclient/generated/typescript/axios
|
|
|
-
|
|
|
-## Publish npm packages
|
|
|
- - task: Npm@1
|
|
|
- displayName: 'Publish stable typescript axios client'
|
|
|
- inputs:
|
|
|
- command: custom
|
|
|
- customCommand: publish --access public
|
|
|
- publishRegistry: useExternalRegistry
|
|
|
- publishEndpoint: 'jellyfin-bot for NPM'
|
|
|
- workingDir: ./apiclient/generated/typescript/axios
|