diff --git a/.github/workflows/_extension_distribution.yml b/.github/workflows/_extension_distribution.yml index c16f569..0663553 100644 --- a/.github/workflows/_extension_distribution.yml +++ b/.github/workflows/_extension_distribution.yml @@ -85,6 +85,16 @@ on: required: false type: boolean default: false + # Optional tag the build extension should have -- this is easy to misuse, and subject to change, for internal use only + extension_tag: + required: false + type: string + default: "" + # Optional tag the referenced duckdb should have -- this is a easy to misuse, and subject to change, for internal use only + duckdb_tag: + required: false + type: string + default: "" # DEPRECATED: use extra_toolchains instead enable_rust: required: false @@ -121,6 +131,22 @@ jobs: cd duckdb git checkout ${{ inputs.duckdb_version }} + - name: Tag extension + if: ${{inputs.extension_tag != ''}} + run: | + git tag ${{ inputs.extension_tag }} + + - name: Tag DuckDB extension + if: ${{inputs.duckdb_tag != '' && (inputs.duckdb_version == 'main' || inputs.duckdb_version[0] == 'v') }} + run: | + echo "When duckdb_tag is provied an explcit git ref is expected" && exit 1 + + - name: Tag DuckDB extension + if: ${{inputs.duckdb_tag != ''}} + run: | + cd duckdb + git tag ${{ inputs.duckdb_tag }} + - id: parse-matrices run: | python3 ${{ inputs.matrix_parse_script }} --input ./duckdb/.github/config/distribution_matrix.json --select_os linux --output linux_matrix.json --exclude "${{ inputs.exclude_archs }}" --pretty @@ -188,6 +214,17 @@ jobs: cd duckdb git checkout ${{ inputs.duckdb_version }} + - name: Tag extension + if: ${{inputs.extension_tag != ''}} + run: | + git tag ${{ inputs.extension_tag }} + + - name: Tag DuckDB extension + if: ${{inputs.duckdb_tag != ''}} + run: | + cd duckdb + git tag ${{ inputs.duckdb_tag }} + - uses: actions/checkout@v4 name: Checkout Extension CI tools with: @@ -319,6 +356,18 @@ jobs: cd duckdb git checkout ${{ inputs.duckdb_version }} + - name: Tag extension + if: ${{inputs.extension_tag != ''}} + run: | + git tag ${{ inputs.extension_tag }} + + - name: Tag DuckDB extension + if: ${{inputs.duckdb_tag != ''}} + run: | + cd duckdb + git tag ${{ inputs.duckdb_tag }} + + - name: Setup vcpkg uses: lukka/run-vcpkg@v11.1 with: @@ -481,6 +530,18 @@ jobs: cd duckdb git checkout ${{ inputs.duckdb_version }} + - name: Tag extension + if: ${{inputs.extension_tag != ''}} + run: | + git tag ${{ inputs.extension_tag }} + + - name: Tag DuckDB extension + if: ${{inputs.duckdb_tag != ''}} + run: | + cd duckdb + git tag ${{ inputs.duckdb_tag }} + + - name: Setup Ccache uses: hendrikmuhs/ccache-action@main continue-on-error: true @@ -565,6 +626,17 @@ jobs: cd duckdb git checkout ${{ inputs.duckdb_version }} + - name: Tag extension + if: ${{inputs.extension_tag != ''}} + run: | + git tag ${{ inputs.extension_tag }} + + - name: Tag DuckDB extension + if: ${{inputs.duckdb_tag != ''}} + run: | + cd duckdb + git tag ${{ inputs.duckdb_tag }} + - uses: mymindstorm/setup-emsdk@v13 with: version: 'latest'