SDK typechecks in CI #14
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: SDK Typecheck | |
on: | |
pull_request: | |
paths: | |
- 'openapi/video-openapi-clientside.yaml' | |
concurrency: | |
group: ${{ github.ref }}-${{ github.workflow }} | |
cancel-in-progress: true | |
jobs: | |
video-sdk-typecheck: | |
name: Video SDK Typecheck | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
with: | |
path: protocol | |
- name: Compile definitions | |
run: | | |
docker run --rm \ | |
-v $(pwd)/protocol:/local openapitools/openapi-generator-cli generate \ | |
-i /local/openapi/video-openapi-clientside.yaml \ | |
-g typescript-fetch \ | |
-o /local/ts-sdk \ | |
--additional-properties=supportsES6=true \ | |
--additional-properties=modelPropertyNaming=original \ | |
--additional-properties=enumPropertyNaming=UPPERCASE \ | |
--additional-properties=withoutRuntimeChecks=true | |
- name: Checkout SDK | |
uses: actions/checkout@v4 | |
with: | |
repository: 'GetStream/stream-video-js' | |
path: stream-video-js | |
- name: Setup Node | |
uses: actions/setup-node@v4 | |
with: | |
node-version: 20.x | |
cache: 'yarn' | |
cache-dependency-path: stream-video-js/yarn.lock | |
- name: Install SDK dependencies and sneak in updated types | |
working-directory: stream-video-js | |
run: | | |
yarn install --immutable | |
rm -r packages/client/src/gen/coordinator | |
cp -r ../protocol/ts-sdk packages/client/src/gen/coordinator | |
- name: Typecheck | |
working-directory: stream-video-js | |
run: yarn run build:client |