From c086fe7ac491a7358553efe289c86a35e0ecfa22 Mon Sep 17 00:00:00 2001 From: Paul <paulmakles@gmail.com> Date: Mon, 3 May 2021 15:03:30 +0100 Subject: [PATCH] Move versioning to source. --- Cargo.lock | 2 +- Cargo.toml | 5 ++++- publish.sh | 6 ++---- set_version.sh | 3 +++ src/main.rs | 3 ++- src/routes/root.rs | 2 +- src/version.rs | 1 + 7 files changed, 14 insertions(+), 8 deletions(-) create mode 100755 set_version.sh create mode 100644 src/version.rs diff --git a/Cargo.lock b/Cargo.lock index 05168cc..6f366a9 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2475,7 +2475,7 @@ dependencies = [ [[package]] name = "revolt" -version = "0.4.1-alpha.3" +version = "0.0.0" dependencies = [ "async-std", "async-tungstenite", diff --git a/Cargo.toml b/Cargo.toml index 9073c23..cbde4f2 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,9 @@ [package] name = "revolt" -version = "0.4.1-alpha.3" +# To help optimise CI and Docker builds. +# Version here is left as 0.0.0, please +# adjust and run ./set_version.sh instead. +version = "0.0.0" authors = ["Paul Makles <paulmakles@gmail.com>"] edition = "2018" diff --git a/publish.sh b/publish.sh index 18bab40..227d0fa 100755 --- a/publish.sh +++ b/publish.sh @@ -1,7 +1,5 @@ #!/bin/bash -# Tip: for subsequent builds, don't update Cargo.toml -# in order to not download all the crates again. -# Update Cargo.toml on major release. -version=0.4.1-alpha.4-patch.0 +source set_version.sh + docker build -t revoltchat/server:${version} . && docker push revoltchat/server:${version} diff --git a/set_version.sh b/set_version.sh new file mode 100755 index 0000000..be25d6d --- /dev/null +++ b/set_version.sh @@ -0,0 +1,3 @@ +#!/bin/bash +export version=0.4.1-alpha.6 +echo "pub const VERSION: String = \"${version}\";" > src/version.rs diff --git a/src/main.rs b/src/main.rs index 48acd2b..386e531 100644 --- a/src/main.rs +++ b/src/main.rs @@ -15,6 +15,7 @@ extern crate ctrlc; pub mod database; pub mod notifications; +pub mod version; pub mod routes; pub mod util; @@ -39,7 +40,7 @@ async fn main() { dotenv::dotenv().ok(); env_logger::init_from_env(env_logger::Env::default().filter_or("RUST_LOG", "info")); - info!("Starting REVOLT server."); + info!("Starting REVOLT server [version {}].", crate::version::VERSION); util::variables::preflight_checks(); database::connect().await; diff --git a/src/routes/root.rs b/src/routes/root.rs index c25862c..9ca42d6 100644 --- a/src/routes/root.rs +++ b/src/routes/root.rs @@ -9,7 +9,7 @@ use rocket_contrib::json::JsonValue; #[get("/")] pub async fn root() -> JsonValue { json!({ - "revolt": "0.4.1-alpha.4", + "revolt": crate::version::VERSION, "features": { "registration": !*DISABLE_REGISTRATION, "captcha": { diff --git a/src/version.rs b/src/version.rs new file mode 100644 index 0000000..008c120 --- /dev/null +++ b/src/version.rs @@ -0,0 +1 @@ +pub const VERSION: &str = "0.4.1-alpha.6"; -- GitLab