Skip to content

Add create-draft-releases workflow for v3.8.0 satellite repos #1

Add create-draft-releases workflow for v3.8.0 satellite repos

Add create-draft-releases workflow for v3.8.0 satellite repos #1

name: Create v3.8.0 Draft Releases
# This workflow creates draft GitHub Releases in the satellite repositories
# for the v3.8.0 / v1.6.0 release cycle. Run it once; it is idempotent
# (skips repos that already have a release for the tag).
#
# NOTE: The OSMP release title uses the codename placeholder "Kinetic Kobayashi"
# – update it to the official codename before publishing.
on:
workflow_dispatch:
jobs:
create-draft-releases:
name: Create draft releases in satellite repositories
runs-on: ubuntu-latest
permissions: {} # no permissions on THIS repo needed
steps:
# -----------------------------------------------------------------------
# 1. osi-documentation v3.8.0
# -----------------------------------------------------------------------
- name: Draft release – osi-documentation v3.8.0
env:
GH_TOKEN: ${{ secrets.MACHINE_USER_PAT }}
run: |
if gh release view v3.8.0 --repo OpenSimulationInterface/osi-documentation > /dev/null 2>&1; then
echo "Release v3.8.0 already exists in osi-documentation – skipping."
else
cat > /tmp/osi-doc-notes.md << 'NOTES_EOF'
The central documentation pipeline that collects all applicable documentation from the various OSI repositories and compiles it. This release accompanies the v3.8.0 release of ASAM OSI and the v1.6.0 release of OSMP.

Check failure on line 32 in .github/workflows/create-draft-releases.yml

View workflow run for this annotation

GitHub Actions / .github/workflows/create-draft-releases.yml

Invalid workflow file

You have an error in your yaml syntax on line 32
NOTES_EOF
gh release create v3.8.0 \
--repo OpenSimulationInterface/osi-documentation \
--title 'v3.8.0 - ASAM OSI "Krisp Kobayashi"' \
--draft \
--notes-file /tmp/osi-doc-notes.md
echo "Created draft release v3.8.0 in osi-documentation."
fi
# -----------------------------------------------------------------------
# 2. osi-sensor-model-packaging v1.6.0
# -----------------------------------------------------------------------
- name: Draft release – osi-sensor-model-packaging v1.6.0
env:
GH_TOKEN: ${{ secrets.MACHINE_USER_PAT }}
run: |
if gh release view v1.6.0 --repo OpenSimulationInterface/osi-sensor-model-packaging > /dev/null 2>&1; then
echo "Release v1.6.0 already exists in osi-sensor-model-packaging – skipping."
else
cat > /tmp/osmp-notes.md << 'NOTES_EOF'
## Purpose
This release updates build infrastructure for the new OSI repository split (separate `osi-cpp` and `osi-python` repositories).
This release is a production release based on the 3.8.0 "Krisp Kobayashi" release of ASAM OSI:
- Adjusted build to new separate `osi-cpp` repository setup.
- Switched to modern build infrastructure.
- Fixed badge references.
- Re-added upload of example FMU artifacts on release.
- Updated referenced ASAM OSI release to 3.8.0.
## [Content/Changes](https://github.com/OpenSimulationInterface/osi-sensor-model-packaging/milestone/10?closed=1)
* Adjust build to new separate repo setup by @pmai in https://github.com/OpenSimulationInterface/osi-sensor-model-packaging/pull/119
* Switch to modern build infrastructure by @pmai in https://github.com/OpenSimulationInterface/osi-sensor-model-packaging/pull/120
* fix badge by @TimmRuppert in https://github.com/OpenSimulationInterface/osi-sensor-model-packaging/pull/121
* Readd upload of example artifacts on release by @pmai in https://github.com/OpenSimulationInterface/osi-sensor-model-packaging/pull/122
**Full Changelog**: https://github.com/OpenSimulationInterface/osi-sensor-model-packaging/compare/v1.5.0...v1.6.0
NOTES_EOF
gh release create v1.6.0 \
--repo OpenSimulationInterface/osi-sensor-model-packaging \
--title 'ASAM OSMP v1.6.0 "Kinetic Kobayashi"' \
--draft \
--notes-file /tmp/osmp-notes.md
echo "Created draft release v1.6.0 in osi-sensor-model-packaging."
fi
# -----------------------------------------------------------------------
# 3. osi-cpp v3.8.0 (first release)
# -----------------------------------------------------------------------
- name: Draft release – osi-cpp v3.8.0
env:
GH_TOKEN: ${{ secrets.MACHINE_USER_PAT }}
run: |
if gh release view v3.8.0 --repo OpenSimulationInterface/osi-cpp > /dev/null 2>&1; then
echo "Release v3.8.0 already exists in osi-cpp – skipping."
else
cat > /tmp/osi-cpp-notes.md << 'NOTES_EOF'
## Initial Release
This is the first release of the `osi-cpp` repository. The C++ bindings have been extracted from the main [open-simulation-interface](https://github.com/OpenSimulationInterface/open-simulation-interface) repository as a standalone package, as part of the OSI 3.8.0 repository split (PR [#870](https://github.com/OpenSimulationInterface/open-simulation-interface/pull/870)).
This package provides C++ protobuf bindings for ASAM OSI 3.8.0 "Krisp Kobayashi":
- C++ protobuf bindings generated from the OSI 3.8.0 protobuf definitions
- Standalone CMake package with `find_package` support
- The `open-simulation-interface` protobuf source included as a git submodule (commit `083481d`)
- vcpkg support for Windows dependency management
For more information, see the [official OSI documentation](https://opensimulationinterface.github.io/osi-antora-generator/asamosi/latest/specification/index.html).
NOTES_EOF
gh release create v3.8.0 \
--repo OpenSimulationInterface/osi-cpp \
--title 'v3.8.0 - ASAM OSI C++ Bindings "Krisp Kobayashi"' \
--draft \
--notes-file /tmp/osi-cpp-notes.md
echo "Created draft release v3.8.0 in osi-cpp."
fi
# -----------------------------------------------------------------------
# 4. osi-python v3.8.0 (first release)
# -----------------------------------------------------------------------
- name: Draft release – osi-python v3.8.0
env:
GH_TOKEN: ${{ secrets.MACHINE_USER_PAT }}
run: |
if gh release view v3.8.0 --repo OpenSimulationInterface/osi-python > /dev/null 2>&1; then
echo "Release v3.8.0 already exists in osi-python – skipping."
else
cat > /tmp/osi-python-notes.md << 'NOTES_EOF'
## Initial Release
This is the first release of the `osi-python` repository. The Python bindings have been extracted from the main [open-simulation-interface](https://github.com/OpenSimulationInterface/open-simulation-interface) repository as a standalone package, as part of the OSI 3.8.0 repository split (PR [#870](https://github.com/OpenSimulationInterface/open-simulation-interface/pull/870)).
This package provides Python protobuf bindings and trace file tooling for ASAM OSI 3.8.0 "Krisp Kobayashi":
- Python protobuf bindings (`osi3`) generated from the OSI 3.8.0 protobuf definitions, including `.pyi` stub files for improved IDE support
- MCAP trace reader/writer (`osi3trace`) for the new multi-channel trace file format introduced in OSI 3.8.0
- Available as a Python package on PyPI
For more information, see the [official OSI documentation](https://opensimulationinterface.github.io/osi-antora-generator/asamosi/latest/specification/index.html).
NOTES_EOF
gh release create v3.8.0 \
--repo OpenSimulationInterface/osi-python \
--title 'v3.8.0 - ASAM OSI Python Bindings "Krisp Kobayashi"' \
--draft \
--notes-file /tmp/osi-python-notes.md
echo "Created draft release v3.8.0 in osi-python."
fi