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

Commit 6e47117

Browse files
Merge remote-tracking branch 'origin/main'
2 parents 10dea90 + 176b04f commit 6e47117

File tree

1 file changed

+33
-6
lines changed

1 file changed

+33
-6
lines changed

README.md

Lines changed: 33 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@ API for supporting reef suitability assessments.
44

55
[![Documentation](https://img.shields.io/badge/docs-dev-blue)](https://open-aims.github.io/ReefGuideAPI.jl/dev/)
66

7-
87
## Table of Contents
98

109
- [Quick Start](#quick-start)
@@ -96,6 +95,25 @@ Pay attention to the issuer and wkt endpoints. The first should exactly match th
9695
- Tokens must be included in the Authorisation header format: `Authorization: Bearer <token>`
9796
- For testing purposes, you can disable authentication by setting `JWT_ENABLED = false`
9897

98+
## Publishing a new version
99+
100+
1. Identify the previous version
101+
2. Identify the intended version bump (new tag)
102+
3. Create tag
103+
104+
```bash
105+
git tag v1.x.y -a
106+
# Then fill in description
107+
```
108+
109+
4. Push to remote
110+
111+
```bash
112+
git push origin --tags
113+
```
114+
115+
5. On GitHub - draft the new release targeting this as the new version
116+
99117
## API Usage
100118

101119
### Dynamic COG Generation
@@ -172,8 +190,8 @@ The following processing is required before use:
172190
- A parquet GeoDataFrame must be loaded and filtered for unsuitable pixels based on user criteria thresholds using a Dict and `within_thresholds()`.
173191
- `lons` and `lats` columns (FLoat64) must be added to the GeoDataFrame.
174192
- E.g. `valid_pixels.lons = first.(GI.coordinates.(valid_pixels.geometry))`
175-
The column used for masking should be the same as the column specified as geometry_col in
176-
`identify_edge_aligned_sites` (default = `:geometry`).
193+
The column used for masking should be the same as the column specified as geometry_col in
194+
`identify_edge_aligned_sites` (default = `:geometry`).
177195

178196
## Docker Build and Run
179197

@@ -217,11 +235,13 @@ When running the commands below, it is assumed you have `data` available locally
217235
#### Build from Source Files
218236

219237
Using Docker:
238+
220239
```bash
221240
docker build . --target reefguide-src -t reefguide
222241
```
223242

224243
Using Docker Compose:
244+
225245
```bash
226246
docker compose build reefguide-src
227247
# Or to build and run in one command:
@@ -231,11 +251,13 @@ docker compose up --build reefguide-src
231251
#### Run Server with Mounted Files
232252

233253
Using Docker:
254+
234255
```bash
235256
docker run -p 8000:8000 -v ./data:/data/reefguide reefguide
236257
```
237258

238259
Using Docker Compose:
260+
239261
```bash
240262
docker compose up reefguide-src
241263
```
@@ -262,32 +284,37 @@ ReefGuideAPI.start_server("/data/reefguide/config.toml")
262284
#### Configuration Problems
263285

264286
**Issue**: Server fails to start with configuration error
287+
265288
- **Solution**: Double-check that your config file has the correct path format for your OS (Windows uses backslashes, Unix uses forward slashes)
266289
- **Solution**: Ensure all required directories specified in the config actually exist on your system
267290

268291
**Issue**: Data not found
292+
269293
- **Solution**: Verify the `PREPPED_DATA_DIR` path is correct and contains the required MPA dataset files
270294
- **Solution**: When using Docker, check that the volume mount path (`-v ./data:/data/reefguide`) is correct and the `data` directory contains your files
271295

272296
#### Docker-Specific Issues
273297

274298
**Issue**: Docker container exits immediately after starting
299+
275300
- **Solution**: Check Docker logs with `docker logs <container-id>` to see the specific error
276301
- **Solution**: Verify that your `config.toml` is named correctly (not `.config.toml`) in the data directory
277302

278303
**Issue**: "Permission denied" errors when accessing data directory
304+
279305
- **Solution**: Check file permissions on your data directory and ensure the Docker user has read/write access
280306

281307
#### Performance Issues
282308

283309
**Issue**: Slow COG generation
310+
284311
- **Solution**: Increase the `COG_THREADS` value in your config (recommend 2-4)
285312
- **Solution**: Ensure the server has sufficient memory for processing (minimum 4GB recommended)
286313

287-
288314
#### Authentication Issues
289315

290316
**Issue**: JWT token rejected as invalid
317+
291318
- **Solution**: Verify the token's issuer (`iss` claim) matches exactly what's in your config
292319
- **Solution**: Check that the token is not expired
293320
- **Solution**: Ensure the `WKT_ENDPOINT` is accessible from the server
@@ -297,5 +324,5 @@ ReefGuideAPI.start_server("/data/reefguide/config.toml")
297324
If you encounter issues not covered here, please:
298325

299326
1. Check the Julia REPL output for specific error messages
300-
2. Enable debug logs with `ENV["JULIA_DEBUG"] = "ReefGuideAPI"`
301-
3. Open an issue on the GitHub repository with a detailed description of the problem
327+
2. Enable debug logs with `ENV["JULIA_DEBUG"] = "ReefGuideAPI"`
328+
3. Open an issue on the GitHub repository with a detailed description of the problem

0 commit comments

Comments
 (0)