https://github.com/djaustin/tractor-beam
Continuous synchronisation of spreadsheet data to Redis
https://github.com/djaustin/tractor-beam
data-synchronization golang redis
Last synced: 12 months ago
JSON representation
Continuous synchronisation of spreadsheet data to Redis
- Host: GitHub
- URL: https://github.com/djaustin/tractor-beam
- Owner: djaustin
- License: mit
- Created: 2022-02-18T10:48:31.000Z (almost 4 years ago)
- Default Branch: main
- Last Pushed: 2023-03-06T23:41:20.000Z (almost 3 years ago)
- Last Synced: 2025-01-14T10:49:41.211Z (about 1 year ago)
- Topics: data-synchronization, golang, redis
- Language: Go
- Homepage:
- Size: 188 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# tractor-beam 🛸
An application for synchronising data from a spreadsheet into a Redis database.
Given a spreadsheet with a nominated key column and one or more value columns, tractor-beam will save the data as hashes to Redis.
## Usage
Install the application using the `go` CLI or download the appropriate binary from the [releases page.](https://github.com/djaustin/tractor-beam/releases)
```bash
go install github.com/djaustin/tractor-beam@latest
```
### One-time Sync
tractor-beam can be used to complete a single synchronisation of the database from a file.
```bash
tractor-beam sync
```
```bash
tractor-beam sync Book.xlsx localhost:6379
```
### Watch Mode
Given a spreadsheet file, tractor-beam can continually monitor the file for changes and keep the Redis instance up to date when any changes occur.
```bash
tractor-beam watch
```
```bash
tractor-beam watch Book.xlsx localhost:6379
```
## Configuration
The tractor-beam application can be configured using the following methods ranked in order of precedence (decreasing)
1. Command line flags
2. Environment variables
3. Configuration file
### Command line flags
In order to view the possible command line flags for a command, use the `-h` flag to view the help message.
```bash
tractor-beam -h
tractor-beam sync -h
tractor-beam watch -h
```
### Configuration Files
By default, tractor-beam looks for a file named either `tractor-beam` or `tractor-beam.yaml` in the following locations:
* The directory from which tractor-beam is run
* The user's home directory
* /etc/tractor-beam/
An reference configuration file is included in this repository ([tractor-beam.reference.yaml](tractor-beam.reference.yaml))