Мой рабочий процесс
Я недавно начал изучать ржавчину. Если вы заинтересованы в том, чтобы следить за моим путешествием, посмотрите серию Rust здесь, на Dev.
Ржавчина 1 — базовый синтаксис
Петр Яник ・ 6 августа 2020 года.
Я начал с предложенного Rust.yml
действие.
name: Rust on: push: branches: [ master ] pull_request: branches: [ master ] env: CARGO_TERM_COLOR: always jobs: build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - name: Build, test, clippy all run: sh -x ./scripts/ci.sh
Мой сборка
Работа включает в себя один шаг, называемый Строитель, тест, Clippy All
и он выполняет сценарий из -за репозитория. Сценарий выглядит следующим образом:
build_test_clippy(){ while read path; do printf "Project: %s\n" "$path" cargo build --verbose --manifest-path "$path" cargo test --verbose --manifest-path "$path" cargo clippy --verbose --manifest-path "$path" done } find . -name 'Cargo.toml' | sort -u | build_test_clippy
Во -первых, команда Find находит все каталоги, содержащие Cargo.toml
файл. Это как Package.json
Если вы знакомы с JavaScript. В каталогах, которые он находит, он выполняет Грузовая сборка
который строит проект, Тест груза
который запускает тесты и груз clippy
который является линтером для ржавчины.
Категория подачи:
Дурацкие подстановки
Ссылка на код
Petr7555/Learning-rust
Оригинал: «https://dev.to/petr7555/github-action-for-multi-project-rust-repository-28d5»