diff options
| author | Joshua M. Boniface <joshua@boniface.me> | 2020-10-04 19:03:39 -0400 |
|---|---|---|
| committer | Joshua M. Boniface <joshua@boniface.me> | 2020-10-04 19:03:39 -0400 |
| commit | fc28ffea53861ea7e8c35d71dcf863e4900f4d8f (patch) | |
| tree | b70c6728f6a72905a23046ec4d67c8b0f062cc98 | |
| parent | d11adeb85ee82c3699f5a3a2e4f660623a19df78 (diff) | |
Improve handling of apiclient generator
1. Replace the separate stable/unstable scripts with a single script and
handle the difference with argument parsing.
2. Unify the calls and pass the Azure arguments in on the CLI.
| -rw-r--r-- | .ci/azure-pipelines-api-client.yml | 4 | ||||
| -rw-r--r-- | apiclient/templates/typescript/axios/generate.sh | 19 | ||||
| -rw-r--r-- | apiclient/templates/typescript/axios/stable.sh | 9 | ||||
| -rw-r--r-- | apiclient/templates/typescript/axios/unstable.sh | 9 |
4 files changed, 21 insertions, 20 deletions
diff --git a/.ci/azure-pipelines-api-client.yml b/.ci/azure-pipelines-api-client.yml index 7f428aec1..d120593ea 100644 --- a/.ci/azure-pipelines-api-client.yml +++ b/.ci/azure-pipelines-api-client.yml @@ -34,7 +34,7 @@ jobs: displayName: 'Build unstable typescript axios client' condition: startsWith(variables['Build.SourceBranch'], 'refs/heads/master') inputs: - script: 'bash ./apiclient/templates/typescript/axios/unstable.sh' + script: "bash ./apiclient/templates/typescript/axios/generate.sh $(System.ArtifactsDirectory) $(Build.BuildNumber)" - task: Npm@1 displayName: 'Publish unstable typescript axios client' @@ -50,7 +50,7 @@ jobs: displayName: 'Build stable typescript axios client' condition: startsWith(variables['Build.SourceBranch'], 'refs/tags/v') inputs: - script: 'bash ./apiclient/templates/typescript/axios/stable.sh' + script: "bash ./apiclient/templates/typescript/axios/generate.sh $(System.ArtifactsDirectory)" - task: Npm@1 displayName: 'Publish stable typescript axios client' diff --git a/apiclient/templates/typescript/axios/generate.sh b/apiclient/templates/typescript/axios/generate.sh new file mode 100644 index 000000000..c514b10d5 --- /dev/null +++ b/apiclient/templates/typescript/axios/generate.sh @@ -0,0 +1,19 @@ +#!/bin/bash + +artifactsDirectory="${1}" +buildNumber="${2}" +if [[ -n ${buildNumber} ]]; then + # Unstable build + additionalProperties=",snapshotVersion=\"-SNAPSHOT.${buildNumber}\",npmRepository=\"https://pkgs.dev.azure.com/jellyfin-project/jellyfin/_packaging/unstable/npm/registry/\"" +else + # Stable build + additionalProperties="" +fi + +java -jar openapi-generator-cli.jar generate \ + --input-spec ${artifactsDirectory}/openapispec/openapi.json \ + --generator-name typescript-axios \ + --output ./apiclient/generated/typescript/axios \ + --template-dir ./apiclient/templates/typescript/axios \ + --ignore-file-override ./apiclient/.openapi-generator-ignore \ + --additional-properties=useSingleRequestParameter="true",withSeparateModelsAndApi="true",npmName="axios"${additionalProperties} diff --git a/apiclient/templates/typescript/axios/stable.sh b/apiclient/templates/typescript/axios/stable.sh deleted file mode 100644 index 118ef219f..000000000 --- a/apiclient/templates/typescript/axios/stable.sh +++ /dev/null @@ -1,9 +0,0 @@ -#!/bin/bash - -java -jar openapi-generator-cli.jar generate \ - --input-spec $(System.ArtifactsDirectory)/openapispec/openapi.json \ - --generator-name typescript-axios \ - --output ./apiclient/generated/typescript/axios \ - --template-dir ./apiclient/templates/typescript/axios \ - --ignore-file-override ./apiclient/.openapi-generator-ignore \ - --additional-properties=useSingleRequestParameter="true",withSeparateModelsAndApi="true",npmName="axios" diff --git a/apiclient/templates/typescript/axios/unstable.sh b/apiclient/templates/typescript/axios/unstable.sh deleted file mode 100644 index be9f9be43..000000000 --- a/apiclient/templates/typescript/axios/unstable.sh +++ /dev/null @@ -1,9 +0,0 @@ -#!/bin/bash - -java -jar openapi-generator-cli.jar generate \ - --input-spec $(System.ArtifactsDirectory)/openapispec/openapi.json \ - --generator-name typescript-axios \ - --output ./apiclient/generated/typescript/axios \ - --template-dir ./apiclient/templates/typescript/axios \ - --ignore-file-override ./apiclient/.openapi-generator-ignore \ - --additional-properties=useSingleRequestParameter="true",withSeparateModelsAndApi="true",npmName="axios",snapshotVersion="-SNAPSHOT.$(Build.BuildNumber)",npmRepository="https://pkgs.dev.azure.com/jellyfin-project/jellyfin/_packaging/unstable/npm/registry/" |
