Skip to content

Separate test schemas for extensions to the independent repository #1198

Separate test schemas for extensions to the independent repository

Separate test schemas for extensions to the independent repository #1198

Workflow file for this run

name: Windows
on:
push:
branches: [ master, '*-ci' ]
pull_request:
branches: [ master, '*-ci' ]
workflow_dispatch:
jobs:
zserio:
uses: "./.github/workflows/build_windows_zserio.yml"
cpp:
needs: [zserio]
uses: "./.github/workflows/build_windows_cpp.yml"
java:
needs: [zserio]
uses: "./.github/workflows/build_windows_java.yml"
python:
needs: [zserio]
uses: "./.github/workflows/build_windows_python.yml"
doc:
needs: [zserio]
uses: "./.github/workflows/build_windows_doc.yml"
xml:
needs: [zserio]
uses: "./.github/workflows/build_windows_xml.yml"
release:
needs: [cpp, java, python, doc, xml]
runs-on: "windows-2022"
steps:
- name: Install dependencies
shell: bash
run: |
choco install zip
# update when https://github.com/actions/download-artifact/issues/315 is fixed
- name: "Download Zserio release artifacts"
uses: actions/download-artifact@v3
with:
name: zserio-bin-java8
path: zserio-bin-java8
- name: "Download Java runtime release artifacts"
uses: actions/download-artifact@v3
with:
name: zserio-runtime-java8
path: zserio-runtime-java8
- name: "Download C++ runtime release artifacts"
uses: actions/download-artifact@v3
with:
name: zserio-runtime-cpp
path: zserio-runtime-cpp
- name: "Download Python runtime release artifacts"
uses: actions/download-artifact@v3
with:
name: zserio-runtime-python
path: zserio-runtime-python
- name: "Get Zserio version"
shell: bash
run: |
RELEASE_DIR=$(ls -1 zserio-bin-java8 | head -n 1)
ZSERIO_VERSION=${RELEASE_DIR#release-}
echo "ZSERIO_VERSION=${ZSERIO_VERSION}" >> ${GITHUB_ENV}
- name: "Compose final release"
shell: bash
run: |
RELEASE_DIR=release-${ZSERIO_VERSION}
mkdir ${RELEASE_DIR}
# zserio compiler with all extensions
cp zserio-bin-java8/release-*/zserio-*-bin.zip ${RELEASE_DIR}/.
# prepare all runtime libraries
mkdir runtime_libs
# add zserio java runtime library
unzip -q zserio-runtime-java8/release-*/zserio-*-runtime-libs.zip -d zserio-runtime-java8
cp -r zserio-runtime-java8/runtime_libs/java runtime_libs/.
# add zserio cpp runtime library
unzip -q zserio-runtime-cpp/release-*/zserio-*-runtime-libs.zip -d zserio-runtime-cpp
cp -r zserio-runtime-cpp/runtime_libs/cpp runtime_libs/.
# add zserio python runtime library
unzip -q zserio-runtime-python/release-*/zserio-*-runtime-libs.zip -d zserio-runtime-python
cp -r zserio-runtime-python/runtime_libs/python runtime_libs/.
# zip runtime libraries
zip -rq ${RELEASE_DIR}/zserio-${ZSERIO_VERSION}-runtime-libs.zip "runtime_libs"
- name: "Archive release artifacts"
# update when https://github.com/actions/upload-artifact/issues/543 is fixed
uses: actions/upload-artifact@v3
with:
name: windows-release-${{env.ZSERIO_VERSION}}
path: release-${{env.ZSERIO_VERSION}}