name : for_pr_push on : workflow_call : inputs : manifest_path : required : true type : string module_name : required : true type : string commit_message : required : true type : string with_smoke : required : false type : string default : true concurrency : group : for_pr_rust_push_${{ inputs.module_name }}_${{ github.ref }}_ ${{ contains( inputs.commit_message, '+test' ) || startsWith( inputs.commit_message, 'merge' ) }} cancel-in-progress : true env : RUST_BACKTRACE : 1 CARGO_TERM_COLOR : always WITH_SMOKE : ${{ inputs.with_smoke }} jobs : will_test : if : contains( inputs.commit_message, '+test' ) || contains( inputs.commit_message, 'merge' ) concurrency : group : for_pr_rust_push_${{ inputs.module_name }}_${{ github.ref }}_${{ matrix.os }} cancel-in-progress : true strategy : fail-fast : false matrix : os : [ ubuntu-latest, windows-latest, macos-latest ] runs-on : ${{ matrix.os }} steps : - name : Install latest stable toolchain uses : Wandalen/wretry.action/main@master with : action : actions-rs/toolchain@v1 with : | toolchain : stable override : true attempt_limit : 3 attempt_delay: 10000 - name: Install latest nightly toolchain uses: Wandalen/wretry.action/main@master with: action: actions-rs/toolchain@v1 with: | toolchain : nightly override : true attempt_limit: 3 attempt_delay: 10000 - uses: actions/checkout@v3 - name: Install will run: cargo install --git https://github.com/Wandalen/wTools --branch alpha willbe - name: Set MANIFEST_ROOT_PATH id: rootpath run: echo "::set-output name=path::$(dirname ${{ inputs.manifest_path }})" - name: Run tests with each feature run: will .test ${{ steps.rootpath.outputs.path }}/ dry:0 exclude:'' with_all_features:1 with_debug:1 with_nightly:0 with_none_features:1 with_release:0 with_stable:1