Hermes is a toolset to port forward across boundaries
Find a file
imterah 538c5b6c51
All checks were successful
Release code / build (push) Successful in 11m41s
chore: Adds "day-one"/v2.0.1 bug fixes.
This fixes database error reporting, as well as majorly fixes users
not being able to authenticate to the API if you used the automated
migration setup, as the password would remain in hex encoding.

We now decode the hexadecimal and then change it to the far more
compact base64 encoding before adding it to the database. This should
fix login, and not cause 500 Interal Server Errors anymore.

Sorry folks!
2024-12-27 00:10:13 -05:00
.devcontainer fix: Reorders files again. 2024-04-28 14:32:38 -04:00
.forgejo/workflows fix: Change packages server to GitHub. 2024-12-25 20:19:01 -05:00
.githooks chore: Clean up usage of git commands in git hooks. 2024-06-02 11:24:53 -04:00
.vscode fix: Fixes vscode settings. 2024-12-22 11:35:57 -05:00
backend chore: Adds "day-one"/v2.0.1 bug fixes. 2024-12-27 00:10:13 -05:00
backend-legacy feature: Adds migration Docker image. 2024-12-25 20:00:16 -05:00
docs chore: Adds "day-one"/v2.0.1 bug fixes. 2024-12-27 00:10:13 -05:00
routes/Hermes API feature: Adds autostart support. 2024-12-23 22:03:59 -05:00
sshfrontend chore: Restructure files. 2024-12-21 18:27:40 -05:00
.gitconfig chore: Adds formatting. 2024-05-05 16:59:08 -04:00
.gitignore feature: Adds backup importing support. 2024-12-25 19:21:22 -05:00
.prettierrc chore: Adds formatting. 2024-05-05 16:59:08 -04:00
CHANGELOG.md chore: Update changelog for tag v1.1.2. 2024-09-29 13:03:38 +00:00
docker-compose.yml feature: Fixes all backup and API related things to make everything work in production. 2024-12-26 22:54:05 -05:00
init.sh fix: Fixes initializing script for backend-legacy. 2024-12-22 10:31:38 -05:00
LICENSE Initial commit 2024-04-16 09:03:21 -04:00
migration-entrypoint.sh feature: Fixes all backup and API related things to make everything work in production. 2024-12-26 22:54:05 -05:00
MigrationDockerfile fix: Fixes migration Dockerfile. 2024-12-26 21:56:47 -05:00
prod-docker.env chore: Adds documentation. 2024-12-26 14:37:38 -05:00
README.md chore: Adds documentation. 2024-12-26 14:37:38 -05:00
shell.nix chore: Bumps dependencies, rewrites development environment system. 2024-12-01 13:06:28 -05:00

Hermes

Docker Badge Golang Badge License Badge (licensed under BSD-3-Clause)

Port forwarding across boundaries.

Local Development

Note

Using Nix is recommended for the development environment. If you're not using it, install Go. For legacy maintence tasks, install NodeJS.

  1. Firstly, check if you have a working Nix environment if you're using Nix.

  2. Secondly, Run nix-shell, or alternatively source init.sh if you're not using Nix.

API Development

  1. After that, run the backend build script: ./build.sh.

  2. Then, go into the api/ directory, and then start it up: go run . -b ../backends.dev.json

Production Deployment

Warning

Deploying using Docker Compose is the only officially supported deployment method.

  1. Copy and change the default password (or username & db name too) from the template file prod-docker.env:
sed "s/POSTGRES_PASSWORD=hermes/POSTGRES_PASSWORD=$(head -c 500 /dev/random | sha512sum | cut -d " " -f 1)/g" prod-docker.env > .env
  1. Build the docker stack: docker compose --env-file .env up -d

Troubleshooting

This has been moved here.

Documentation

Go to the docs/ folder.