[![Crates.io](https://img.shields.io/crates/v/server-starter-listener.svg)](https://crates.io/crates/server-starter-listener) [![server-starter-listener at docs.rs](https://docs.rs/server-starter-listener/badge.svg)](https://docs.rs/server-starter-listener) [![Build Status](https://travis-ci.org/krrrr38/server-starter-listener-rs.svg?branch=master)](https://travis-ci.org/krrrr38/server-starter-listener-rs) # server-starter-listener-rs Get Server::Starter listeners for rust application This crate providers [start_server](https://github.com/lestrrat-go/server-starter) / [start_server](https://metacpan.org/pod/start_server) listeners for rust server applications. ## Examples ```rust use actix_web::{HttpServer, App}; use server_starter_listener::{listeners, ServerStarterListener}; let listener = listeners().unwrap().pop().unwrap(); match listener { ServerStarterListener::Tcp(listener) => { HttpServer::new(|| App::new()).listen(listener).unwrap().run().unwrap(); } _ => unimplemented!(), } ``` You need to start application using [start_server](https://github.com/lestrrat-go/server-starter) / [start_server](https://metacpan.org/pod/start_server). ```sh > start_server --port=80 -- your_server_binary ``` Now you can do hot-deploy by send `SIGHUP` to `start_server` process. `start_server` share file descriptor to new process and send `SIGTERM` to old process. Current version: [![Crates.io](https://img.shields.io/crates/v/server-starter-listener.svg)](https://crates.io/crates/server-starter-listener) Some additional info here License: MIT OR Apache-2.0