Moved to Ascently
All checks were successful
Ascently Docker Deploy / build-and-push (push) Successful in 2m31s
All checks were successful
Ascently Docker Deploy / build-and-push (push) Successful in 2m31s
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
# Required
|
||||
AUTH_TOKEN=your-secure-secret-token-here
|
||||
IMAGE="git.atri.dad/atridad/openclimb-sync:latest"
|
||||
IMAGE="git.atri.dad/atridad/ascently-sync:latest"
|
||||
APP_PORT=1337
|
||||
ROOT_DIR="./data"
|
||||
|
||||
|
||||
2
sync/.gitignore
vendored
2
sync/.gitignore
vendored
@@ -1,6 +1,6 @@
|
||||
# Binaries
|
||||
sync-server
|
||||
openclimb-sync
|
||||
ascently-sync
|
||||
|
||||
# Go workspace file
|
||||
go.work
|
||||
|
||||
@@ -1,21 +1,21 @@
|
||||
# Sync Server
|
||||
|
||||
A simple Go server for self-hosting your OpenClimb sync data.
|
||||
A simple Go server for self-hosting your Ascently sync data.
|
||||
|
||||
## How It Works
|
||||
|
||||
This server is dead simple. It uses a single `openclimb.json` file for your data and a directory for images. The last client to upload wins, overwriting the old data. Authentication is just a static bearer token.
|
||||
This server is dead simple. It uses a single `ascently.json` file for your data and a directory for images. The last client to upload wins, overwriting the old data. Authentication is just a static bearer token.
|
||||
|
||||
## Getting Started
|
||||
|
||||
1. Create a `.env` file in this directory:
|
||||
```
|
||||
IMAGE=git.atri.dad/atridad/openclimb-sync:latest
|
||||
IMAGE=git.atri.dad/atridad/ascently-sync:latest
|
||||
APP_PORT=8080
|
||||
AUTH_TOKEN=your-super-secret-token
|
||||
DATA_FILE=/data/openclimb.json
|
||||
DATA_FILE=/data/ascently.json
|
||||
IMAGES_DIR=/data/images
|
||||
ROOT_DIR=./openclimb-data
|
||||
ROOT_DIR=./ascently-data
|
||||
```
|
||||
Set `AUTH_TOKEN` to a long, random string. `ROOT_DIR` is where the server will store its data on your machine.
|
||||
|
||||
@@ -29,8 +29,8 @@ This server is dead simple. It uses a single `openclimb.json` file for your data
|
||||
|
||||
The API is minimal, just enough for the app to work. All endpoints require an `Authorization: Bearer <your-auth-token>` header.
|
||||
|
||||
- `GET /sync`: Download `openclimb.json`.
|
||||
- `POST /sync`: Upload `openclimb.json`.
|
||||
- `GET /sync`: Download `ascently.json`.
|
||||
- `POST /sync`: Upload `ascently.json`.
|
||||
- `GET /images/{imageName}`: Download an image.
|
||||
- `POST /images/{imageName}`: Upload an image.
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
services:
|
||||
openclimb-sync:
|
||||
ascently-sync:
|
||||
image: ${IMAGE}
|
||||
ports:
|
||||
- ${APP_PORT}:8080
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
module openclimb-sync
|
||||
module ascently-sync
|
||||
|
||||
go 1.25
|
||||
|
||||
@@ -358,7 +358,7 @@ func main() {
|
||||
http.HandleFunc("/images/upload", server.handleImageUpload)
|
||||
http.HandleFunc("/images/download", server.handleImageDownload)
|
||||
|
||||
fmt.Printf("OpenClimb sync server v%s starting on port %s\n", VERSION, port)
|
||||
fmt.Printf("Ascently sync server v%s starting on port %s\n", VERSION, port)
|
||||
fmt.Printf("Data file: %s\n", dataFile)
|
||||
fmt.Printf("Images directory: %s\n", imagesDir)
|
||||
fmt.Printf("Health check available at /health\n")
|
||||
|
||||
Reference in New Issue
Block a user