breadx 0.3.0

Implementation of the X Window System Protocol
Documentation
parameters:
  toolchain: stable
  components: []
  targets: []

steps:
  - script: |
      set -e
      curl https://sh.rustup.rs -sSf | sh -s -- -y --default-toolchain $RUSTUP_TOOLCHAIN
      echo "##vso[task.setvariable variable=PATH;]$PATH:$HOME/.cargo/bin"
    env:
      RUSTUP_TOOLCHAIN: ${{parameters.toolchain}}
    displayName: "Install Rust (Linux and MacOS)"
    condition: not(eq(variables['Agent.OS'], 'Windows_NT'))

  - script: |
      curl -sSf -o rustup-init.exe https://win.rustup.rs
      rustup-init.exe -y --default-toolchain %RUSTUP_TOOLCHAIN%
      set PATH=%PATH%;%USERPROFILE%\.cargo\bin
      echo "##vso[task.setvariable variable=PATH;]%PATH%;%USERPROFILE%\.cargo\bin"
    env:
      RUSTUP_TOOLCHAIN: ${{parameters.toolchain}}
    displayName: "Install Rust (Windows)"
    condition: eq(variables['Agent.OS'], 'Windows_NT')

  - bash: |
      rustup default $TOOLCHAIN
      rustup update $TOOLCHAIN
    env:
      TOOLCHAIN: ${{ parameters.toolchain }}
    displayName: "Set correct Rust version"

  - script: |
      echo "Rustup Version"
      rustup -V
      echo "Rustup Installed Components"
      rustup component list --installed
      echo "Rustc Version"
      rustc -Vv
      echo "Cargo version"
      cargo -V
    displayName: "Ensure integrity of Rust toolchain"