mirror of
https://github.com/rust-lang/rust-analyzer
synced 2024-12-25 20:43:21 +00:00
Don't strip nightly releases
This commit is contained in:
parent
d89c189ad1
commit
ffb7ea678b
5 changed files with 21 additions and 24 deletions
4
.github/workflows/release.yaml
vendored
4
.github/workflows/release.yaml
vendored
|
@ -50,11 +50,11 @@ jobs:
|
|||
|
||||
- name: Dist
|
||||
if: matrix.os == 'ubuntu-latest' && github.ref == 'refs/heads/release'
|
||||
run: cargo xtask dist --client --version 0.2.$GITHUB_RUN_NUMBER --tag $(date --iso --utc)
|
||||
run: cargo xtask dist --client 0.2.$GITHUB_RUN_NUMBER
|
||||
|
||||
- name: Dist
|
||||
if: matrix.os == 'ubuntu-latest' && github.ref != 'refs/heads/release'
|
||||
run: cargo xtask dist --client --version 0.3.$GITHUB_RUN_NUMBER-nightly --tag nightly
|
||||
run: cargo xtask dist --nightly --client 0.3.$GITHUB_RUN_NUMBER-nightly
|
||||
|
||||
- name: Dist
|
||||
if: matrix.os != 'ubuntu-latest'
|
||||
|
|
|
@ -3,24 +3,21 @@ use std::path::PathBuf;
|
|||
use anyhow::Result;
|
||||
|
||||
use crate::{
|
||||
not_bash::{fs2, pushd, rm_rf, run},
|
||||
not_bash::{date_iso, fs2, pushd, rm_rf, run},
|
||||
project_root,
|
||||
};
|
||||
|
||||
pub struct ClientOpts {
|
||||
pub version: String,
|
||||
pub release_tag: String,
|
||||
}
|
||||
|
||||
pub fn run_dist(client_opts: Option<ClientOpts>) -> Result<()> {
|
||||
pub fn run_dist(nightly: bool, client_version: Option<String>) -> Result<()> {
|
||||
let dist = project_root().join("dist");
|
||||
rm_rf(&dist)?;
|
||||
fs2::create_dir_all(&dist)?;
|
||||
|
||||
if let Some(ClientOpts { version, release_tag }) = client_opts {
|
||||
if let Some(version) = client_version {
|
||||
let release_tag = if nightly { "nightly".to_string() } else { date_iso()? };
|
||||
dist_client(&version, &release_tag)?;
|
||||
}
|
||||
dist_server()?;
|
||||
dist_server(nightly)?;
|
||||
Ok(())
|
||||
}
|
||||
|
||||
|
@ -50,7 +47,7 @@ fn dist_client(version: &str, release_tag: &str) -> Result<()> {
|
|||
Ok(())
|
||||
}
|
||||
|
||||
fn dist_server() -> Result<()> {
|
||||
fn dist_server(nightly: bool) -> Result<()> {
|
||||
if cfg!(target_os = "linux") {
|
||||
std::env::set_var("CC", "clang");
|
||||
run!(
|
||||
|
@ -60,7 +57,9 @@ fn dist_server() -> Result<()> {
|
|||
// We'd want to add, but that requires setting the right linker somehow
|
||||
// --features=jemalloc
|
||||
)?;
|
||||
if !nightly {
|
||||
run!("strip ./target/x86_64-unknown-linux-musl/release/rust-analyzer")?;
|
||||
}
|
||||
} else {
|
||||
run!("cargo build --manifest-path ./crates/rust-analyzer/Cargo.toml --bin rust-analyzer --release")?;
|
||||
}
|
||||
|
|
|
@ -21,7 +21,7 @@ use walkdir::{DirEntry, WalkDir};
|
|||
|
||||
use crate::{
|
||||
codegen::Mode,
|
||||
not_bash::{fs2, pushd, rm_rf, run},
|
||||
not_bash::{date_iso, fs2, pushd, rm_rf, run},
|
||||
};
|
||||
|
||||
pub use anyhow::Result;
|
||||
|
@ -180,7 +180,7 @@ pub fn run_release(dry_run: bool) -> Result<()> {
|
|||
let website_root = project_root().join("../rust-analyzer.github.io");
|
||||
let changelog_dir = website_root.join("./thisweek/_posts");
|
||||
|
||||
let today = run!("date --iso")?;
|
||||
let today = date_iso()?;
|
||||
let commit = run!("git rev-parse HEAD")?;
|
||||
let changelog_n = fs2::read_dir(changelog_dir.as_path())?.count();
|
||||
|
||||
|
|
|
@ -13,7 +13,7 @@ use std::env;
|
|||
use pico_args::Arguments;
|
||||
use xtask::{
|
||||
codegen::{self, Mode},
|
||||
dist::{run_dist, ClientOpts},
|
||||
dist::run_dist,
|
||||
install::{ClientOpt, InstallCmd, ServerOpt},
|
||||
not_bash::pushd,
|
||||
pre_commit, project_root, run_clippy, run_fuzzer, run_pre_cache, run_release, run_rustfmt,
|
||||
|
@ -103,16 +103,10 @@ FLAGS:
|
|||
run_release(dry_run)
|
||||
}
|
||||
"dist" => {
|
||||
let client_opts = if args.contains("--client") {
|
||||
Some(ClientOpts {
|
||||
version: args.value_from_str("--version")?,
|
||||
release_tag: args.value_from_str("--tag")?,
|
||||
})
|
||||
} else {
|
||||
None
|
||||
};
|
||||
let nightly = args.contains("--nightly");
|
||||
let client_version: Option<String> = args.opt_value_from_str("--client")?;
|
||||
args.finish()?;
|
||||
run_dist(client_opts)
|
||||
run_dist(nightly, client_version)
|
||||
}
|
||||
_ => {
|
||||
eprintln!(
|
||||
|
|
|
@ -94,6 +94,10 @@ pub fn run_process(cmd: String, echo: bool) -> Result<String> {
|
|||
run_process_inner(&cmd, echo).with_context(|| format!("process `{}` failed", cmd))
|
||||
}
|
||||
|
||||
pub fn date_iso() -> Result<String> {
|
||||
run!("date --iso --utc")
|
||||
}
|
||||
|
||||
fn run_process_inner(cmd: &str, echo: bool) -> Result<String> {
|
||||
let mut args = shelx(cmd);
|
||||
let binary = args.remove(0);
|
||||
|
|
Loading…
Reference in a new issue