Skip to content

Commit 0bcad26

Browse files
authored
Add create-draft-releases workflow for v3.8.0 satellite repos
1 parent 689eab7 commit 0bcad26

1 file changed

Lines changed: 143 additions & 0 deletions

File tree

Lines changed: 143 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,143 @@
1+
name: Create v3.8.0 Draft Releases
2+
3+
# This workflow creates draft GitHub Releases in the satellite repositories
4+
# for the v3.8.0 / v1.6.0 release cycle. Run it once; it is idempotent
5+
# (skips repos that already have a release for the tag).
6+
#
7+
# NOTE: The OSMP release title uses the codename placeholder "Kinetic Kobayashi"
8+
# – update it to the official codename before publishing.
9+
10+
on:
11+
workflow_dispatch:
12+
13+
jobs:
14+
create-draft-releases:
15+
name: Create draft releases in satellite repositories
16+
runs-on: ubuntu-latest
17+
permissions: {} # no permissions on THIS repo needed
18+
19+
steps:
20+
21+
# -----------------------------------------------------------------------
22+
# 1. osi-documentation v3.8.0
23+
# -----------------------------------------------------------------------
24+
- name: Draft release – osi-documentation v3.8.0
25+
env:
26+
GH_TOKEN: ${{ secrets.MACHINE_USER_PAT }}
27+
run: |
28+
if gh release view v3.8.0 --repo OpenSimulationInterface/osi-documentation > /dev/null 2>&1; then
29+
echo "Release v3.8.0 already exists in osi-documentation – skipping."
30+
else
31+
cat > /tmp/osi-doc-notes.md << 'NOTES_EOF'
32+
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.
33+
NOTES_EOF
34+
gh release create v3.8.0 \
35+
--repo OpenSimulationInterface/osi-documentation \
36+
--title 'v3.8.0 - ASAM OSI "Krisp Kobayashi"' \
37+
--draft \
38+
--notes-file /tmp/osi-doc-notes.md
39+
echo "Created draft release v3.8.0 in osi-documentation."
40+
fi
41+
42+
# -----------------------------------------------------------------------
43+
# 2. osi-sensor-model-packaging v1.6.0
44+
# -----------------------------------------------------------------------
45+
- name: Draft release – osi-sensor-model-packaging v1.6.0
46+
env:
47+
GH_TOKEN: ${{ secrets.MACHINE_USER_PAT }}
48+
run: |
49+
if gh release view v1.6.0 --repo OpenSimulationInterface/osi-sensor-model-packaging > /dev/null 2>&1; then
50+
echo "Release v1.6.0 already exists in osi-sensor-model-packaging – skipping."
51+
else
52+
cat > /tmp/osmp-notes.md << 'NOTES_EOF'
53+
## Purpose
54+
55+
This release updates build infrastructure for the new OSI repository split (separate `osi-cpp` and `osi-python` repositories).
56+
57+
This release is a production release based on the 3.8.0 "Krisp Kobayashi" release of ASAM OSI:
58+
59+
- Adjusted build to new separate `osi-cpp` repository setup.
60+
- Switched to modern build infrastructure.
61+
- Fixed badge references.
62+
- Re-added upload of example FMU artifacts on release.
63+
- Updated referenced ASAM OSI release to 3.8.0.
64+
65+
## [Content/Changes](https://github.com/OpenSimulationInterface/osi-sensor-model-packaging/milestone/10?closed=1)
66+
67+
* Adjust build to new separate repo setup by @pmai in https://github.com/OpenSimulationInterface/osi-sensor-model-packaging/pull/119
68+
* Switch to modern build infrastructure by @pmai in https://github.com/OpenSimulationInterface/osi-sensor-model-packaging/pull/120
69+
* fix badge by @TimmRuppert in https://github.com/OpenSimulationInterface/osi-sensor-model-packaging/pull/121
70+
* Readd upload of example artifacts on release by @pmai in https://github.com/OpenSimulationInterface/osi-sensor-model-packaging/pull/122
71+
72+
**Full Changelog**: https://github.com/OpenSimulationInterface/osi-sensor-model-packaging/compare/v1.5.0...v1.6.0
73+
NOTES_EOF
74+
gh release create v1.6.0 \
75+
--repo OpenSimulationInterface/osi-sensor-model-packaging \
76+
--title 'ASAM OSMP v1.6.0 "Kinetic Kobayashi"' \
77+
--draft \
78+
--notes-file /tmp/osmp-notes.md
79+
echo "Created draft release v1.6.0 in osi-sensor-model-packaging."
80+
fi
81+
82+
# -----------------------------------------------------------------------
83+
# 3. osi-cpp v3.8.0 (first release)
84+
# -----------------------------------------------------------------------
85+
- name: Draft release – osi-cpp v3.8.0
86+
env:
87+
GH_TOKEN: ${{ secrets.MACHINE_USER_PAT }}
88+
run: |
89+
if gh release view v3.8.0 --repo OpenSimulationInterface/osi-cpp > /dev/null 2>&1; then
90+
echo "Release v3.8.0 already exists in osi-cpp – skipping."
91+
else
92+
cat > /tmp/osi-cpp-notes.md << 'NOTES_EOF'
93+
## Initial Release
94+
95+
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)).
96+
97+
This package provides C++ protobuf bindings for ASAM OSI 3.8.0 "Krisp Kobayashi":
98+
99+
- C++ protobuf bindings generated from the OSI 3.8.0 protobuf definitions
100+
- Standalone CMake package with `find_package` support
101+
- The `open-simulation-interface` protobuf source included as a git submodule (commit `083481d`)
102+
- vcpkg support for Windows dependency management
103+
104+
For more information, see the [official OSI documentation](https://opensimulationinterface.github.io/osi-antora-generator/asamosi/latest/specification/index.html).
105+
NOTES_EOF
106+
gh release create v3.8.0 \
107+
--repo OpenSimulationInterface/osi-cpp \
108+
--title 'v3.8.0 - ASAM OSI C++ Bindings "Krisp Kobayashi"' \
109+
--draft \
110+
--notes-file /tmp/osi-cpp-notes.md
111+
echo "Created draft release v3.8.0 in osi-cpp."
112+
fi
113+
114+
# -----------------------------------------------------------------------
115+
# 4. osi-python v3.8.0 (first release)
116+
# -----------------------------------------------------------------------
117+
- name: Draft release – osi-python v3.8.0
118+
env:
119+
GH_TOKEN: ${{ secrets.MACHINE_USER_PAT }}
120+
run: |
121+
if gh release view v3.8.0 --repo OpenSimulationInterface/osi-python > /dev/null 2>&1; then
122+
echo "Release v3.8.0 already exists in osi-python – skipping."
123+
else
124+
cat > /tmp/osi-python-notes.md << 'NOTES_EOF'
125+
## Initial Release
126+
127+
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)).
128+
129+
This package provides Python protobuf bindings and trace file tooling for ASAM OSI 3.8.0 "Krisp Kobayashi":
130+
131+
- Python protobuf bindings (`osi3`) generated from the OSI 3.8.0 protobuf definitions, including `.pyi` stub files for improved IDE support
132+
- MCAP trace reader/writer (`osi3trace`) for the new multi-channel trace file format introduced in OSI 3.8.0
133+
- Available as a Python package on PyPI
134+
135+
For more information, see the [official OSI documentation](https://opensimulationinterface.github.io/osi-antora-generator/asamosi/latest/specification/index.html).
136+
NOTES_EOF
137+
gh release create v3.8.0 \
138+
--repo OpenSimulationInterface/osi-python \
139+
--title 'v3.8.0 - ASAM OSI Python Bindings "Krisp Kobayashi"' \
140+
--draft \
141+
--notes-file /tmp/osi-python-notes.md
142+
echo "Created draft release v3.8.0 in osi-python."
143+
fi

0 commit comments

Comments
 (0)