Skip to content

Commit 190c444

Browse files
authored
CLOUDP-186948: add sdk generation workflow (#146)
1 parent 1396755 commit 190c444

File tree

1 file changed

+33
-1
lines changed

1 file changed

+33
-1
lines changed

tools/README.md

Lines changed: 33 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,39 @@ Typically a SDK is generated by:
1212
3. Generating SDK source code
1313
4. Validation and linting for generation process
1414

15-
## Using Tools
15+
## Tools folder structure
16+
17+
- `config` - OpenAPI generator config
18+
- `releaser` - release automation scripts and documentation
19+
- `transformer` - OpenAPI transformation engine and it's documentation
20+
21+
## SDK Generation Workflow
22+
23+
```mermaid
24+
flowchart TD
25+
0[Atlas API Release] --> |Perdiodical Check|A[New Atlas OpenAPI file]
26+
A[New Atlas OpenAPI file] -->|Generate Code and Docs| B[Generator Automation]
27+
B -->|Create| GithubPR[Github APIBot PR]
28+
GithubPR -->|Manual Review| D[APIBot PR Approval and Merge]
29+
D -->|Trigger| C[SDK Release Automation]
30+
C -->|Release SDK| End[Release Tag]
31+
```
32+
33+
1. **Fetch File**: We Periodically Fetch for the Changes in the Public OpenAPI file
34+
35+
2. **Generate Code and Docs**: The next step involves generating code and documentation based on the contents of the OpenAPI file. This is an automated process done by github actions.
36+
37+
3. **Create PR**: After the code and documentation are generated, a pull request (PR) is created on GitHub. The purpose of this PR is to visualize all changes before merging them to the main branch.
38+
39+
4. **Manual Review**: The pull request undergoes manual review by by the assigned team. The reviewers check the changes, verify their correctness, and assess their impact based on the PR description.
40+
41+
5. **APIBot PR Approval and Merge**: If the manual review is successful, and the changes are approved, the pull request is merged into the main repository.
42+
43+
6. **Trigger SDK Release Automation**: The successful merge of the pull request triggers the next step, which is the SDK Release Automation process.
44+
45+
7. **Release SDK**: SDK is released by creating Github Release.
46+
47+
## Manual Testing SDK Generation Workflow
1648

1749
### Fetching OpenAPI file
1850

0 commit comments

Comments
 (0)