@@ -19,7 +19,7 @@ tags [here](https://hub.docker.com/r/thuan2172001/rust-server/tags).
19
19
20
20
** Release Binaries:**
21
21
For every release, separate ` cli ` binaries are built. These binaries can be downloaded
22
- from [ here] ( https://github.com/sonntuet1997/rust-web-api-microservice-template/releases ) and are available for various operating
22
+ from [ here] ( https://github.com/sonntuet1997/rust-web-api-microservice-template/releases ) and are available for various operating
23
23
systems and architectures. You are welcome to use the automated binaries or build your own.
24
24
25
25
** Contributions and PRs:**
@@ -95,26 +95,28 @@ options:
95
95
96
96
Hierarchical child config via env, separated by using ` __ ` . Specify list values by using ` , ` separator
97
97
98
- | ENV | DEFAULT VALUE | NOTE |
99
- | ------------------------------------------------------------------------| ---------------| -----------|
100
- | [ RUST_LOG] ( https://docs.rs/env_logger/latest/env_logger/ ) > LOG__ LEVEL | "INFO" | Log level |
101
- | SERVER__ URL | | |
102
- | SERVER__ PORT | | |
103
- | SERVICE_NAME | | |
104
- | EXPORTER_ENDPOINT | | |
105
- | DB__ PG__ URL | | |
106
- | DB__ PG__ MAX_SIZE | | |
98
+ | ENV | DEFAULT VALUE | NOTE |
99
+ | ------------------------------------------------------------------------ | ------------- | --------- |
100
+ | [ RUST_LOG] ( https://docs.rs/env_logger/latest/env_logger/ ) > LOG\_\_ LEVEL | "INFO" | Log level |
101
+ | SERVER\_\_ URL | | |
102
+ | SERVER\_\_ PORT | | |
103
+ | SERVICE_NAME | | |
104
+ | EXPORTER_ENDPOINT | | |
105
+ | DB\_\_ PG\_\_ URL | | |
106
+ | DB\_\_ PG\_\_ MAX_SIZE | | |
107
+ | REDIS\_\_ HOST | | |
108
+ | REDIS\_\_ PORT | | |
107
109
108
110
Make sure to set these environment variables according to your needs before running the server.
109
111
110
112
## GitHub Flow CI Configuration
111
113
112
114
1 . ** Set Docker Hub Secrets:**
113
- - Go to repository Settings > Secrets.
114
- - Add ` DOCKER_USERNAME ` and ` DOCKERHUB_TOKEN ` .
115
+ - Go to repository Settings > Secrets.
116
+ - Add ` DOCKER_USERNAME ` and ` DOCKERHUB_TOKEN ` .
115
117
116
118
2 . ** Enable Dependabot Alerts:**
117
- - In repository Insights, enable "Dependabot alerts" and "Security & Analysis."
119
+ - In repository Insights, enable "Dependabot alerts" and "Security & Analysis."
118
120
119
121
## Checklist
120
122
@@ -126,7 +128,7 @@ include:
126
128
1 . [x] Incorporating descriptive comments to enhance code readability.
127
129
2 . [x] Implementing tracing mechanisms for effective debugging.
128
130
3 . [x] Writing comprehensive test cases to validate functionality.
129
- 1 . [x] Using https://testcontainers.com for integration tests.
131
+ 1 . [x] Using https://testcontainers.com for integration tests.
130
132
4 . [x] Utilizing version control with [ Git] ( https://git-scm.com/ ) for code management.
131
133
5 . [x] Structuring code in a logical and maintainable manner.
132
134
6 . [x] Containerizing the application using [ Docker] ( https://www.docker.com/ ) for portability and scalability.
@@ -136,19 +138,19 @@ include:
136
138
Demonstrate proficiency in advanced development practices including:
137
139
138
140
1 . [x] CLI Interface.
139
- 1 . [x] Embed Git Info, Config Tool.
141
+ 1 . [x] Embed Git Info, Config Tool.
140
142
2 . [x] Load Configuration from a File.
141
143
3 . [x] Multiple Implementations.
142
144
4 . [x] Advanced Tracing.
143
145
5 . [x] CI/CD.
144
- 1 . [x] Publish binary artifacts in [ Github] ( https://github.com/ ) .
145
- 2 . [x] Push Docker images.
146
- 3 . [x] Build pipeline on amd arch.
147
- 4 . [ ] Build pipeline on arm arch.
146
+ 1 . [x] Publish binary artifacts in [ Github] ( https://github.com/ ) .
147
+ 2 . [x] Push Docker images.
148
+ 3 . [x] Build pipeline on amd arch.
149
+ 4 . [ ] Build pipeline on arm arch.
148
150
6 . [x] Docker Image Optimization.
149
151
7 . [x] Load test using [ K6] ( https://k6.io/ ) .
150
- 1 . [x] Use [ Flamegraph] ( https://github.com/flamegraph-rs/flamegraph ) for profiling.
151
- 2 . [ ] [ Better UI] ( https://medium.com/swlh/beautiful-load-testing-with-k6-and-docker-compose-4454edb3a2e3 ) .
152
+ 1 . [x] Use [ Flamegraph] ( https://github.com/flamegraph-rs/flamegraph ) for profiling.
153
+ 2 . [ ] [ Better UI] ( https://medium.com/swlh/beautiful-load-testing-with-k6-and-docker-compose-4454edb3a2e3 ) .
152
154
8 . [ ] Comprehensive DB query filter for list().
153
155
9 . [ ] Optimize release binary performance.
154
156
10 . [ ] Docs on how to use this repo, the design behind the scene.
@@ -162,4 +164,4 @@ Feel free to explore and expand upon these functionalities as needed for your pr
162
164
163
165
For load testing and profiling your Rust API server, refer to
164
166
the [ Load Testing and Profiling with K6 and Flamegraph] ( ./load-tests/README.md ) guide. This document provides
165
- detailed instructions on using K6 and Flamegraph for load testing and profiling purposes.
167
+ detailed instructions on using K6 and Flamegraph for load testing and profiling purposes.
0 commit comments