Documentation

    PLEASE NOTE: This document applies to v2.8 version and not to the latest stable release v2.9

    Documentation for other releases can be found by using the version selector in the left bottom of any doc page.

    Bultins

    By default, every execution of rash exposes two variables to the Context: {{ rash }} and {{ env }}.

    rash

    {{ rash }} variables are builtin values retrieved from execution context.

    - assert:
        that:
          - 'rash.args | length == 0'
          - 'rash.dir == "/"'
          - 'rash.path == "/builtins_example.rh"'
          - 'rash.user.uid == 1000'
          - 'rash.user.gid == 1000'
    

    src/vars/builtin.rs:

    #[derive(Serialize, Deserialize)]
    pub struct Builtins {
        /// Args passed from command line execution.
        args: Vec<String>,
        /// Script directory absolute path.
        dir: String,
        /// Script absolute path.
        path: String,
        user: UserInfo,
    }
    
    #[derive(Serialize, Deserialize)]
    struct UserInfo {
        uid: u32,
        gid: u32,
    }
    

    env

    You can access any environment var as {{ env.MY_ENV_VAR }}.

    Also, you can use command line arguments to pass environment variables:

    rash -e MY_ENV_VAR=foo example.rh