firefly_cli 0.3.0

CLI tool for working with Firefly Zero
# https://taskfile.dev
version: '3'

tasks:
  release:
    desc: build and publish release
    vars:
      TRIPLE:
        sh: "rustc -vV | sed -n 's|host: ||p'"
      BIN_NAME: firefly_cli-{{.TRIPLE}}.bin
    cmds:
      - test {{.CLI_ARGS}}
      - grep -F '"{{.CLI_ARGS}}"' Cargo.toml
      - cargo build --release
      - cargo publish
      - git tag {{.CLI_ARGS}}
      - git push
      - git push --tags
      - gh release create --generate-notes {{.CLI_ARGS}}
      - cp target/release/firefly_cli {{.BIN_NAME}}
      - defer: rm {{.BIN_NAME}}
      - gh release upload {{.CLI_ARGS}} {{.BIN_NAME}}
  format:
    desc: run code formatters
    cmds:
      - cargo fmt
  test:
    desc: run tests
    cmds:
      - cargo test
  lint:
    desc: run linters
    cmds:
      - cargo clippy
  all:
    cmds:
      - task: format
      - task: lint
      - task: test
  default:
    - task: all