aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCara Salter <cara@devcara.com>2022-04-28 14:55:39 -0400
committerCara Salter <cara@devcara.com>2022-04-28 14:56:21 -0400
commit7f1fc0444f8ae7a4c1263881a151eb3d2991bbb8 (patch)
treee2114313871caa7b37da7097f5e7911f944d4235
parentbc3132f22f3470d8b1d8189e23393d3bb4577480 (diff)
downloadsolard-7f1fc0444f8ae7a4c1263881a151eb3d2991bbb8.tar.gz
solard-7f1fc0444f8ae7a4c1263881a151eb3d2991bbb8.zip
main: Make bind address an environment variable
-rw-r--r--Cargo.lock2
-rw-r--r--Cargo.toml2
-rw-r--r--README.md18
-rw-r--r--src/main.rs4
4 files changed, 22 insertions, 4 deletions
diff --git a/Cargo.lock b/Cargo.lock
index 76c36c7..8d1497e 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -1110,7 +1110,7 @@ dependencies = [
[[package]]
name = "waifud"
-version = "0.1.0"
+version = "0.2.0"
dependencies = [
"axum",
"color-eyre",
diff --git a/Cargo.toml b/Cargo.toml
index 9c48942..5d12238 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "waifud"
-version = "0.1.0"
+version = "0.2.0"
edition = "2021"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..17f47fa
--- /dev/null
+++ b/README.md
@@ -0,0 +1,18 @@
+# Waifud
+
+Providing a RESTful interface to a machine's virtual machines (waifus).
+
+## Flake Options
+
+Example:
+
+```nix
+{ config, pkgs, ... }:
+{
+ cara.services.waifud = {
+ enable = true;
+ environmentFileLocation = "/var/lib/waifud/.env";
+ port = 3000;
+ };
+}
+```
diff --git a/src/main.rs b/src/main.rs
index d2f83a4..ba319d9 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -7,7 +7,7 @@ use axum::{
};
use serde::{Deserialize, Serialize};
-use std::{net::SocketAddr, time::Duration};
+use std::{net::SocketAddr, time::Duration, str::FromStr};
use tower::{BoxError, ServiceBuilder};
use tower_http::trace::TraceLayer;
@@ -49,7 +49,7 @@ async fn main() {
.into_inner(),
);
- let addr = SocketAddr::from(([127,0,0,1], 3000));
+ let addr = SocketAddr::from_str(std::env::var("BIND_ADDR").unwrap().as_str().into()).unwrap();
tracing::info!("Listening on {}", addr);
axum::Server::bind(&addr)