mirror of
https://github.com/juspay/hyperswitch.git
synced 2025-10-30 01:27:31 +08:00
feat: include version number in response headers and on application startup (#3045)
This commit is contained in:
@ -20,6 +20,9 @@ async fn main() -> DrainerResult<()> {
|
||||
let shutdown_intervals = conf.drainer.shutdown_interval;
|
||||
let loop_interval = conf.drainer.loop_interval;
|
||||
|
||||
#[cfg(feature = "vergen")]
|
||||
println!("Starting drainer (Version: {})", router_env::git_tag!());
|
||||
|
||||
let _guard = router_env::setup(
|
||||
&conf.log,
|
||||
router_env::service_name!(),
|
||||
|
||||
@ -16,7 +16,7 @@ email = ["external_services/email", "dep:aws-config", "olap"]
|
||||
frm = []
|
||||
basilisk = ["kms"]
|
||||
stripe = ["dep:serde_qs"]
|
||||
release = ["kms", "stripe", "basilisk", "s3", "email", "backwards_compatibility", "business_profile_routing", "accounts_cache", "kv_store", "connector_choice_mca_id", "profile_specific_fallback_routing"]
|
||||
release = ["kms", "stripe", "basilisk", "s3", "email", "backwards_compatibility", "business_profile_routing", "accounts_cache", "kv_store", "connector_choice_mca_id", "profile_specific_fallback_routing", "vergen"]
|
||||
olap = ["data_models/olap", "storage_impl/olap", "scheduler/olap", "dep:analytics"]
|
||||
oltp = ["storage_impl/oltp"]
|
||||
kv_store = ["scheduler/kv_store"]
|
||||
|
||||
@ -34,6 +34,9 @@ async fn main() -> ApplicationResult<()> {
|
||||
conf.validate()
|
||||
.expect("Failed to validate router configuration");
|
||||
|
||||
#[cfg(feature = "vergen")]
|
||||
println!("Starting router (Version: {})", router_env::git_tag!());
|
||||
|
||||
let _guard = router_env::setup(
|
||||
&conf.log,
|
||||
router_env::service_name!(),
|
||||
|
||||
@ -22,8 +22,6 @@ use tokio::sync::{mpsc, oneshot};
|
||||
const SCHEDULER_FLOW: &str = "SCHEDULER_FLOW";
|
||||
#[tokio::main]
|
||||
async fn main() -> CustomResult<(), ProcessTrackerError> {
|
||||
// console_subscriber::init();
|
||||
|
||||
let cmd_line = <CmdLineConf as clap::Parser>::parse();
|
||||
|
||||
#[allow(clippy::expect_used)]
|
||||
@ -58,6 +56,12 @@ async fn main() -> CustomResult<(), ProcessTrackerError> {
|
||||
let scheduler_flow = scheduler::SchedulerFlow::from_str(&scheduler_flow_str)
|
||||
.expect("Unable to parse SchedulerFlow from environment variable");
|
||||
|
||||
#[cfg(feature = "vergen")]
|
||||
println!(
|
||||
"Starting {scheduler_flow} (Version: {})",
|
||||
router_env::git_tag!()
|
||||
);
|
||||
|
||||
let _guard = router_env::setup(
|
||||
&state.conf.log,
|
||||
&scheduler_flow_str,
|
||||
|
||||
@ -70,7 +70,13 @@ where
|
||||
pub fn default_response_headers() -> actix_web::middleware::DefaultHeaders {
|
||||
use actix_web::http::header;
|
||||
|
||||
actix_web::middleware::DefaultHeaders::new()
|
||||
let default_headers_middleware = actix_web::middleware::DefaultHeaders::new();
|
||||
|
||||
#[cfg(feature = "vergen")]
|
||||
let default_headers_middleware =
|
||||
default_headers_middleware.add(("x-hyperswitch-version", router_env::git_tag!()));
|
||||
|
||||
default_headers_middleware
|
||||
// Max age of 1 year in seconds, equal to `60 * 60 * 24 * 365` seconds.
|
||||
.add((header::STRICT_TRANSPORT_SECURITY, "max-age=31536000"))
|
||||
.add((header::VIA, "HyperSwitch"))
|
||||
|
||||
@ -167,3 +167,13 @@ macro_rules! profile {
|
||||
env!("CARGO_PROFILE")
|
||||
};
|
||||
}
|
||||
|
||||
/// The latest git tag. If tags are not present in the repository, the short commit hash is used
|
||||
/// instead. Refer to the [`git describe`](https://git-scm.com/docs/git-describe) documentation for
|
||||
/// more details.
|
||||
#[macro_export]
|
||||
macro_rules! git_tag {
|
||||
() => {
|
||||
env!("VERGEN_GIT_DESCRIBE")
|
||||
};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user