|
9 | 9 | workflow_dispatch: |
10 | 10 | push: |
11 | 11 | branches: ["main"] |
12 | | - #paths: |
13 | | - # - 'ts/**' # only run on changes to ts/ folder |
14 | 12 | pull_request_target: |
15 | 13 | branches: ["main"] |
16 | | - #paths: |
17 | | - # - 'ts/**' # only run on changes to ts/ folder |
18 | 14 | merge_group: |
19 | 15 | branches: ["main"] |
20 | 16 | concurrency: |
@@ -87,67 +83,75 @@ jobs: |
87 | 83 | filters: | |
88 | 84 | ts: |
89 | 85 | - "ts/**" |
90 | | - - ".github/workflows/build-ts.yml" |
| 86 | + - ".github/workflows/smoke-tests.yml" |
91 | 87 |
|
92 | 88 | - uses: pnpm/action-setup@v4 |
| 89 | + if: ${{ steps.filter.outputs.ts != 'false' }} |
93 | 90 | name: Install pnpm |
94 | 91 | with: |
95 | 92 | package_json_file: ts/package.json |
96 | 93 |
|
97 | 94 | - uses: actions/setup-node@v4 |
| 95 | + if: ${{ steps.filter.outputs.ts != 'false' }} |
98 | 96 | with: |
99 | 97 | node-version: ${{ matrix.version }} |
100 | 98 | cache: "pnpm" |
101 | 99 | cache-dependency-path: ts/pnpm-lock.yaml |
102 | 100 |
|
103 | 101 | - name: Install dependencies |
| 102 | + if: ${{ steps.filter.outputs.ts != 'false' }} |
104 | 103 | working-directory: ts |
105 | 104 | run: | |
106 | 105 | pnpm install --frozen-lockfile --strict-peer-dependencies |
107 | 106 |
|
108 | 107 | - name: Install Playwright Browsers |
| 108 | + if: ${{ steps.filter.outputs.ts != 'false' }} |
109 | 109 | run: pnpm exec playwright install --with-deps |
110 | 110 | working-directory: ts/packages/shell |
111 | 111 |
|
112 | 112 | - name: Build |
| 113 | + if: ${{ steps.filter.outputs.ts != 'false' }} |
113 | 114 | working-directory: ts |
114 | 115 | run: | |
115 | 116 | npm run build |
116 | 117 |
|
117 | 118 | - name: Login to Azure |
| 119 | + if: ${{ steps.filter.outputs.ts != 'false' }} |
118 | 120 | uses: azure/login@v2.2.0 |
119 | 121 | with: |
120 | 122 | client-id: ${{ secrets.AZUREAPPSERVICE_CLIENTID_5B0D2D6BA40F4710B45721D2112356DD }} |
121 | 123 | tenant-id: ${{ secrets.AZUREAPPSERVICE_TENANTID_39BB903136F14B6EAD8F53A8AB78E3AA }} |
122 | 124 | subscription-id: ${{ secrets.AZUREAPPSERVICE_SUBSCRIPTIONID_F36C1F2C4B2C49CA8DD5C52FAB98FA30 }} |
123 | 125 |
|
124 | 126 | - name: Get Keys |
| 127 | + if: ${{ steps.filter.outputs.ts != 'false' }} |
125 | 128 | run: | |
126 | 129 | node tools/scripts/getKeys.mjs --vault build-pipeline-kv |
127 | 130 | working-directory: ts |
128 | 131 |
|
129 | | - - name: Test CLI - smoke |
| 132 | + - name: Test CLI - smoke |
| 133 | + if: ${{ steps.filter.outputs.ts != 'false' }} |
130 | 134 | run: | |
131 | 135 | npm run start:dev 'prompt' 'why is the sky blue' |
132 | 136 | working-directory: ts/packages/cli |
133 | 137 |
|
134 | 138 | - name: Shell Tests - full (windows) |
135 | | - if: ${{ runner.os == 'windows' }} |
| 139 | + if: ${{ steps.filter.outputs.ts != 'false' && runner.os == 'windows'}} |
136 | 140 | timeout-minutes: 60 |
137 | 141 | run: | |
138 | 142 | npm run shell:test |
139 | 143 | working-directory: ts/packages/shell |
140 | 144 |
|
141 | 145 | - name: Shell Tests - smoke (linux) |
142 | | - if: ${{ runner.os == 'Linux' }} |
| 146 | + if: ${{ steps.filter.outputs.ts != 'false' && runner.os == 'Linux' }} |
143 | 147 | timeout-minutes: 60 |
144 | 148 | run: | |
145 | 149 | Xvfb :99 -screen 0 1600x1200x24 & export DISPLAY=:99 |
146 | 150 | npm run shell:smoke |
147 | 151 | working-directory: ts/packages/shell |
148 | 152 |
|
149 | 153 | - name: Live Tests (Linux) |
150 | | - if: ${{ runner.os == 'Linux' }} |
| 154 | + if: ${{ steps.filter.outputs.ts != 'false' && runner.os == 'Linux' }} |
151 | 155 | timeout-minutes: 60 |
152 | 156 | run: | |
153 | 157 | npm run test:live |
|
0 commit comments