Make domain name configurable
The domain name can be set using the `--domain` or `-d` flags. It defaults to `hitsofocode.com`. Also the CLI options are now parsed inside a lazy_static context to be available for the templates.
This commit is contained in:
parent
b704d00531
commit
8d7f696dea
13
src/main.rs
13
src/main.rs
@ -39,9 +39,10 @@ const VERSION: &str = env!("CARGO_PKG_VERSION");
|
||||
|
||||
lazy_static! {
|
||||
static ref CLIENT: reqwest::Client = reqwest::Client::new();
|
||||
static ref OPT: Opt = Opt::from_args();
|
||||
static ref INDEX: Vec<u8> = {
|
||||
let mut buf = Vec::new();
|
||||
templates::index(&mut buf, COMMIT, VERSION).unwrap();
|
||||
templates::index(&mut buf, COMMIT, VERSION, &OPT.domain).unwrap();
|
||||
buf
|
||||
};
|
||||
static ref P404: Vec<u8> = {
|
||||
@ -87,6 +88,9 @@ struct Opt {
|
||||
#[structopt(short = "h", long = "host", default_value = "0.0.0.0")]
|
||||
/// Interface to listen on
|
||||
host: String,
|
||||
#[structopt(short = "d", long = "domain", default_value = "hitsofcode.com")]
|
||||
/// Interface to listen on
|
||||
domain: String,
|
||||
}
|
||||
|
||||
fn pull(path: impl AsRef<Path>) -> Result<(), Error> {
|
||||
@ -248,11 +252,10 @@ fn main() -> std::io::Result<()> {
|
||||
std::env::set_var("RUST_LOG", "actix_web=warn");
|
||||
pretty_env_logger::init();
|
||||
openssl_probe::init_ssl_cert_env_vars();
|
||||
let opt = Opt::from_args();
|
||||
let interface = format!("{}:{}", opt.host, opt.port);
|
||||
let interface = format!("{}:{}", OPT.host, OPT.port);
|
||||
let state = Arc::new(State {
|
||||
repos: opt.outdir.display().to_string(),
|
||||
cache: opt.cachedir.display().to_string(),
|
||||
repos: OPT.outdir.display().to_string(),
|
||||
cache: OPT.cachedir.display().to_string(),
|
||||
});
|
||||
HttpServer::new(move || {
|
||||
App::new()
|
||||
|
@ -1,6 +1,6 @@
|
||||
@use super::base;
|
||||
|
||||
@(commit: &str, version: &str)
|
||||
@(commit: &str, version: &str, domain: &str)
|
||||
|
||||
@:base("Hits-of-Code Badges", "Hits-of-Code Badges", {
|
||||
|
||||
@ -23,7 +23,7 @@ used for GitHub, GitLab and Bitbucket repositories. Just put the following code
|
||||
</p>
|
||||
|
||||
<pre>
|
||||
[![Hits-of-Code](https://hitsofcode.com/<service>/<user>/<repo>)](https://hitsofcode.com/view/<service>/<user>/<repo>)
|
||||
[![Hits-of-Code](https://@domain/<service>/<user>/<repo>)](https://@domain/view/<service>/<user>/<repo>)
|
||||
</pre>
|
||||
|
||||
<p>
|
||||
@ -32,7 +32,7 @@ following Markdown
|
||||
</p>
|
||||
|
||||
<pre>
|
||||
[![Hits-of-Code](https://hitsofcode.com/github/vbrandl/hoc)](https://hitsofcode.com/view/github/vbrandl/hoc)
|
||||
[![Hits-of-Code](https://@domain/github/vbrandl/hoc)](https://@domain/view/github/vbrandl/hoc)
|
||||
</pre>
|
||||
|
||||
<p>
|
||||
@ -40,7 +40,7 @@ would render this badge:
|
||||
</p>
|
||||
|
||||
<pre>
|
||||
<a href="https://hitsofcode.com/view/github/vbrandl/hoc"><img src="https://hitsofcode.com/github/vbrandl/hoc"
|
||||
<a href="https://@domain/view/github/vbrandl/hoc"><img src="https://@domain/github/vbrandl/hoc"
|
||||
alt="example badge" /></a>
|
||||
</pre>
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user