Simplify actions

This commit is contained in:
sxyazi 2023-10-21 12:01:49 +08:00
parent 1e3835a2fb
commit 04ad67e427
No known key found for this signature in database
5 changed files with 28 additions and 44 deletions

View file

@ -21,14 +21,7 @@ jobs:
target: aarch64-apple-darwin
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Bootstrap
uses: actions-rs/toolchain@v1
with:
toolchain: stable
target: ${{ matrix.target }}
- uses: actions/checkout@v3
- name: Cache Dependencies
uses: Swatinem/rust-cache@v2
@ -36,25 +29,14 @@ jobs:
- name: Build
run: cargo build --release --locked --target ${{ matrix.target }}
- name: Pack Artifacts [Linux]
if: matrix.os == 'ubuntu-latest'
env:
RELEASE_NAME: yazi-${{ matrix.target }}
run: |
mkdir $RELEASE_NAME
cp target/${{ matrix.target }}/release/yazi -t $RELEASE_NAME
cp -r config/completions -t $RELEASE_NAME
cp README.md LICENSE -t $RELEASE_NAME
zip -r $RELEASE_NAME.zip $RELEASE_NAME
- name: Pack Artifacts [macOS]
if: matrix.os == 'macos-latest'
- name: Pack Artifacts [Linux & macOS]
if: matrix.os == 'ubuntu-latest' || matrix.os == 'macos-latest'
env:
RELEASE_NAME: yazi-${{ matrix.target }}
run: |
mkdir $RELEASE_NAME
cp target/${{ matrix.target }}/release/yazi $RELEASE_NAME
cp -R config/completions $RELEASE_NAME
cp -r config/completions $RELEASE_NAME
cp README.md LICENSE $RELEASE_NAME
zip -r $RELEASE_NAME.zip $RELEASE_NAME

View file

@ -1,4 +1,4 @@
name: Rust
name: Test
on:
push:
@ -19,7 +19,12 @@ jobs:
steps:
- uses: actions/checkout@v3
- name: Cache Dependencies
uses: Swatinem/rust-cache@v2
- name: Build
run: cargo build --verbose
- name: Run tests
run: cargo test --verbose

2
.gitignore vendored
View file

@ -1,6 +1,8 @@
target/
config/completions
.DS_Store
result
result-*
.devenv*

View file

@ -22,7 +22,7 @@ toml = { version = "^0", features = [ "preserve_order" ] }
validator = { version = "^0", features = [ "derive" ] }
[build-dependencies]
clap = { version = "^4", features = [ "derive" ] }
clap_complete = "^4"
clap_complete_nushell = "^4"
clap_complete_fig = "^4"
clap = { version = "^4", features = [ "derive" ] }
clap_complete = "^4"
clap_complete_nushell = "^4"
clap_complete_fig = "^4"

View file

@ -4,26 +4,21 @@ mod cli;
use std::{fs, io};
use clap::CommandFactory;
use clap_complete::{generate_to, Shell::*};
use clap_complete_fig::Fig;
use clap_complete_nushell::Nushell;
use self::cli::Args;
use clap_complete::{generate_to, Shell};
fn main() -> io::Result<()> {
let cmd = &mut Args::command();
let name = "yazi";
let dir = "completions";
let cmd = &mut cli::Args::command();
let bin = "yazi";
let out = "completions";
fs::create_dir_all(dir)?;
generate_to(Bash, cmd, name, dir)?;
generate_to(Fish, cmd, name, dir)?;
generate_to(Zsh, cmd, name, dir)?;
generate_to(Elvish, cmd, name, dir)?;
generate_to(PowerShell, cmd, name, dir)?;
generate_to(Nushell, cmd, name, dir)?;
generate_to(Fig, cmd, name, dir)?;
fs::create_dir_all(out)?;
generate_to(Shell::Bash, cmd, bin, out)?;
generate_to(Shell::Fish, cmd, bin, out)?;
generate_to(Shell::Zsh, cmd, bin, out)?;
generate_to(Shell::Elvish, cmd, bin, out)?;
generate_to(Shell::PowerShell, cmd, bin, out)?;
generate_to(clap_complete_nushell::Nushell, cmd, bin, out)?;
generate_to(clap_complete_fig::Fig, cmd, bin, out)?;
Ok(())
}