diff --git a/.github/workflows/release_cli.yml b/.github/workflows/release_cli.yml index aaf9b15a..485a844a 100644 --- a/.github/workflows/release_cli.yml +++ b/.github/workflows/release_cli.yml @@ -2,7 +2,7 @@ name: Create CLI Release on: workflow_dispatch: - + jobs: release: permissions: @@ -10,7 +10,7 @@ jobs: strategy: fail-fast: false matrix: - platform: [ubuntu-20.04] + platform: [ubuntu-20.04, windows-latest] runs-on: ${{ matrix.platform }} steps: @@ -29,10 +29,6 @@ jobs: if: matrix.platform == 'ubuntu-20.04' run: cargo install cargo-deb - - name: Get Package Version - id: pkg-version - run: echo "version=$(cargo metadata --no-deps --format-version=1 --no-default-features | jq -r '.packages[] | select(.name=="owmods_cli") | .version')" >> $GITHUB_OUTPUT - - name: Build CLI run: cargo build -p owmods_cli --release env: @@ -52,6 +48,10 @@ jobs: env: ANALYTICS_API_KEY: ${{ secrets.ANALYTICS_API_KEY }} + - name: Get Package Version + id: pkg-version + run: echo "verison=$(cargo xtask cli_version)" >> $GITHUB_OUTPUT + - name: Upload CLI uses: softprops/action-gh-release@v1 with: @@ -65,7 +65,3 @@ jobs: target/debian/owmods-cli_${{ steps.pkg-version.outputs.version }}_amd64.deb target/release/owmods target/release/owmods.exe - - - - diff --git a/owmods_cli/src/logging.rs b/owmods_cli/src/logging.rs index c3e49ea7..1bfd3533 100644 --- a/owmods_cli/src/logging.rs +++ b/owmods_cli/src/logging.rs @@ -103,7 +103,7 @@ impl log::Log for Logger { ProgressPayload::Finish(payload) => self.finish(payload), ProgressPayload::Unknown => {} }; - } else if self.enabled(record.metadata()) { + } else if self.enabled(record.metadata()) && record.target().starts_with("owmods") { let args = format!("{}", record.args()); let msg = match record.level() { Level::Error => args.red(), diff --git a/owmods_core/src/analytics.rs b/owmods_core/src/analytics.rs index ac65536e..90261cef 100644 --- a/owmods_core/src/analytics.rs +++ b/owmods_core/src/analytics.rs @@ -29,19 +29,19 @@ pub enum AnalyticsEventName { ModUpdate, } -#[derive(Serialize)] +#[derive(Debug, Serialize)] struct AnalyticsEventParams { mod_unique_name: String, manager_version: String, } -#[derive(Serialize)] +#[derive(Debug, Serialize)] struct AnalyticsEvent { name: AnalyticsEventName, params: AnalyticsEventParams, } -#[derive(Serialize)] +#[derive(Debug, Serialize)] struct AnalyticsPayload { client_id: String, timestamp_micros: u128, @@ -77,6 +77,7 @@ pub async fn send_analytics_event(event_name: AnalyticsEventName, unique_name: & let url = format!("https://www.google-analytics.com/mp/collect?measurement_id={MEASUREMENT_ID}&api_secret={api_key}"); let client = Client::new(); let payload = AnalyticsPayload::new(&event_name, unique_name); + debug!("Sending {:?}", payload); let resp = client.post(url).json(&payload).send().await?; if resp.status().is_success() { debug!( diff --git a/xtask/src/cli_tasks.rs b/xtask/src/cli_tasks.rs index 96f2e682..0af1d5de 100644 --- a/xtask/src/cli_tasks.rs +++ b/xtask/src/cli_tasks.rs @@ -53,3 +53,9 @@ pub fn generate_cli_pkg_build() -> Result<()> { write!(file, "{}", pkgbuild)?; Ok(()) } + +pub fn print_version() -> Result<()> { + let version = get_pkg_version(include_str!("../../owmods_cli/Cargo.toml")); + println!("{}", version); + Ok(()) +} diff --git a/xtask/src/main.rs b/xtask/src/main.rs index 772e7a22..47dcc58d 100644 --- a/xtask/src/main.rs +++ b/xtask/src/main.rs @@ -1,7 +1,7 @@ use std::path::PathBuf; use anyhow::Result; -use cli_tasks::{generate_cli_pkg_build, generate_completions, generate_man_files}; +use cli_tasks::{generate_cli_pkg_build, generate_completions, generate_man_files, print_version}; use gui_tasks::generate_gui_pkg_build; use regex::RegexBuilder; @@ -39,6 +39,7 @@ fn main() -> Result<()> { } "cli_pkg_build" => generate_cli_pkg_build()?, "gui_pkg_build" => generate_gui_pkg_build()?, + "cli_version" => print_version()?, _ => panic!("Invalid Command: {cmd}"), } Ok(())