Skip to content
This repository was archived by the owner on Nov 27, 2025. It is now read-only.

Commit e7eb37d

Browse files
Create ADR 0004 for further clarification
1 parent 168a1c2 commit e7eb37d

File tree

1 file changed

+35
-0
lines changed

1 file changed

+35
-0
lines changed
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
# ADR-0004 - Technical solution for releasing and deployments
2+
3+
Date: 2024-11
4+
5+
## Status
6+
7+
TO_BE_REFINED
8+
9+
## Participants
10+
- ... link to github user
11+
12+
## Context
13+
14+
Based on the [decision](./0003-extract-plugins.md) to externalize plugins in proper plugins repository a new release and deployment strategy needs to be defined.
15+
This plugins repository is solved as mono repository.
16+
17+
## Decision
18+
19+
### Release process
20+
21+
Since OpenSCD is based on [NX](https://nx.dev/) the release strategy needs to rely on NX as well and must allow single releases of sub modules within this mono repository.
22+
Such feature is provided by [NX release](https://nx.dev/recipes/nx-release) specially when using the [NX independently release feature](https://nx.dev/recipes/nx-release/release-projects-independently).
23+
24+
A possible release command would look like:
25+
```
26+
nx release --projects=plugin-1,plugin-3
27+
```
28+
29+
## Consequences
30+
31+
- Process needs to be documented so that all developers can easily follow it
32+
- The building of complete OpenSCD Editor, OpenSCD Core + OpenSCD plugins, depends now on two repositories
33+
- Custom OpenSCD eg. CoMPAS OpenSCD will be cleaner and more code can be reused
34+
- Similar Look & Feel of plugins if shared UI-Components are used
35+
- Faster plugin development and integration into OpenSCD Core

0 commit comments

Comments
 (0)