-
Notifications
You must be signed in to change notification settings - Fork 30
59 lines (51 loc) · 1.93 KB
/
deploy.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
name: Community Extension Deploy
on:
workflow_dispatch
jobs:
prepare:
name: Find extensions to deploy
runs-on: ubuntu-latest
outputs:
matrix: ${{ steps.set-matrix.outputs.matrix }}
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0
- id: set-matrix
run: |
pip install pyyaml
echo "{"include": [" >> matrix.json
for FILE in extensions/*/description.yml; do
ALL_CHANGED_FILES=$FILE python scripts/build.py
source env.sh
echo "{\"COMMUNITY_EXTENSION_NAME\" : \"$COMMUNITY_EXTENSION_NAME\",\"COMMUNITY_EXTENSION_GITHUB\" : \"$COMMUNITY_EXTENSION_GITHUB\",\"COMMUNITY_EXTENSION_REF\" : \"$COMMUNITY_EXTENSION_REF\"}", >> matrix.json
done
echo "]}" >> matrix.json
matrix="`cat matrix.json`"
echo matrix=$matrix >> $GITHUB_OUTPUT
echo `cat $GITHUB_OUTPUT`
build:
needs: prepare
uses: ./.github/workflows/_extension_distribution.yml
strategy:
matrix: ${{fromJson(needs.prepare.outputs.matrix)}}
with:
duckdb_version: main
extension_name: ${{ matrix.COMMUNITY_EXTENSION_NAME }}
exclude_archs: 'wasm_mvp;wasm_eh;wasm_threads;linux_amd64;linux_amd64_gcc4;linux_arm64;windows_amd64;windows_amd64_rtools'
repository: ${{ matrix.COMMUNITY_EXTENSION_GITHUB }}
ref: ${{ matrix.COMMUNITY_EXTENSION_REF }}
deploy:
needs:
- prepare
- build
uses: ./.github/workflows/_extension_deploy.yml.
strategy:
matrix: ${{fromJson(needs.prepare.outputs.matrix)}}
with:
deploy_latest: true
duckdb_version: main
extension_name: ${{ matrix.COMMUNITY_EXTENSION_NAME }}
exclude_archs: 'wasm_mvp;wasm_eh;wasm_threads;linux_amd64;linux_amd64_gcc4;linux_arm64;windows_amd64;windows_amd64_rtools'
repository: ${{ matrix.COMMUNITY_EXTENSION_GITHUB }}
ref: ${{ matrix.COMMUNITY_EXTENSION_REF }}