galactic-war 0.1.0

A casual game of Galactic War
Documentation
# https://taskfile.dev

version: "3"

tasks:
  default:
    cmd: task --list
    silent: true
  ci:full:
    desc: Run CI locally in containers
    cmd: act
  ci:local:
    desc: Run CI locally
    aliases: [ci]
    deps:
      [
        audit,
        doc,
        fmt,
        test,
        nix:check,
        nix:build,
        clippy,
        pre-commit,
        build,
        build:docker,
      ]
  nix:check:
    desc: Run Nix CI checks
    sources:
      - ./**/*
    cmds:
      - nix flake check
  nix:build:
    desc: Run Nix Build
    cmds:
      - nix build
  clippy:
    desc: Run clippy
    sources:
      - ./**/*.rs
    cmd: cargo clippy
  pre-commit:
    desc: Run pre-commit
    cmd: pre-commit run --all-files --show-diff-on-failure
  fmt:
    desc: Run all formatters
    sources:
      - ./**/*.rs
      - ./**/*.nix
    cmds:
      - cargo fmt --all
      - alejandra .
  test:
    desc: Run all tests
    aliases: [t]
    sources:
      - ./**/*.rs
    cmd: cargo nextest run
  doc:
    desc: Build the documentation
    cmd: cargo doc
  audit:
    desc: Run cargo security audit
    sources:
      - Cargo.lock
      - flake.lock
    cmd: cargo audit
  build:
    desc: Build the project
    aliases: [b]
    sources:
      - ./**/*.rs
      - ./Cargo*
    cmd: cargo build
  run:
    desc: Run the binary
    aliases: [r]
    cmd: cargo run
  build:docker:
    desc: Build the docker image
    cmd: docker build -t galactic-war .
  run:docker:
    desc: Run the docker image
    cmd: docker run --rm -p 3050:3050 --name galactic-war galactic-war:latest
    deps: [build:docker]