Skip to content

Commit

Permalink
Standardize git repo, upgrade libraries, generate source code files
Browse files Browse the repository at this point in the history
  • Loading branch information
teddius committed Nov 4, 2024
1 parent 1416813 commit d782ea2
Show file tree
Hide file tree
Showing 3 changed files with 1,867 additions and 1,858 deletions.
29 changes: 19 additions & 10 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,9 @@ git clone https://github.com/ondewo/ondewo-csi-client-nodejs.git ## Clone reposi
cd ondewo-csi-client-nodejs ## Change into repo-directoy
make setup_developer_environment_locally ## Install dependencies
```

## Package structure

```
npm
├── api
Expand Down Expand Up @@ -109,27 +111,33 @@ npm
└── README.md
```

[comment]: <> (START OF GITHUB README)

## Build

The `make build` command is dependent on 2 `repositories` and their speciefied `version`:
- [ondewo-csi-api](https://github.com/ondewo/ondewo-csi-api) -- `CSI_API_GIT_BRANCH` in `Makefile`
- [ondewo-proto-compiler](https://github.com/ondewo/ondewo-proto-compiler) -- `ONDEWO_PROTO_COMPILER_GIT_BRANCH` in `Makefile`

- [ondewo-csi-api](https://github.com/ondewo/ondewo-csi-api) -- `CSI_API_GIT_BRANCH` in `Makefile`
- [ondewo-proto-compiler](https://github.com/ondewo/ondewo-proto-compiler) -- `ONDEWO_PROTO_COMPILER_GIT_BRANCH` in `Makefile`

Other than creating the proto-code, `build` also installs the `dev-dependencies` and changes the owner of the proto-code-files from `root` to the `current user`.

In the case that some `google .protos` were not automatically generated, exists the option of creating a `proto-deps.txt` inside of the `src` folder. There, import statements can be written the same way as they are in `.proto` files.
```
import "google/api/http.proto"; //Example
<---- New Line
```

```
import "google/api/http.proto"; //Example
<---- New Line
```

> :warning: The last line in the `proto-deps.txt` needs to be an empty new line, otherwise the compiler will fail
## GitHub Repository - Release Automation

The repository is published to GitHub and NPM by the Automated Release Process of ONDEWO.

TODO after PR merge:

- checkout master
```shell
git checkout master
Expand All @@ -140,19 +148,21 @@ TODO after PR merge:
```
- Adjust `ONDEWO_CSI_VERSION` in the `Makefile` <br><br>
- Add new Release Notes to `src/RELEASE.md` in following format:

```
## Release ONDEWO CSI Nodejs Client X.X.X <----- Beginning of Notes
...<NOTES>...
***************** <----- End of Notes
```

- release
```shell
make ondewo_release
```
<br>
The release process can be divided into 6 Steps:
<br>
The release process can be divided into 6 Steps:

1. `build` specified version of the `ondewo-csi-api`
2. `commit and push` all changes in code resulting from the `build`
Expand All @@ -161,7 +171,6 @@ The release process can be divided into 6 Steps:
5. Create and push the `release tag` e.g. `1.3.20`
6. Create a new `Release` on GitHub

> :warning: The Release Automation checks if the build has created all the proto-code files, but it does not check the code-integrity. Please build and test the generated code prior to starting the release process.
> :warning: The Release Automation checks if the build has created all the proto-code files, but it does not check the code-integrity. Please build and test the generated code prior to starting the release process.
[comment]: <> (END OF GITHUB README)
Loading

0 comments on commit d782ea2

Please sign in to comment.