Skip to main content

A low-fat task runner.

Project description

Skyr

Low-fat task runner.

Skyr is a task runner, similar to Make. Just like Make, it can have tasks that depend on each other and are executed only if a file changes. But, unlike Make, Skyr doesn't actually have to be installed on your machine to run. That's because Skyr uses Shell scripts to define build commands and looks for special comments for special features. This means you can very easily integrate Skyr into your existing project.

Install

Using pipx (recommended)

pipx install skyr

Using plain pip

pip install --user skyr

Drop-in executable

wget "https://raw.githubusercontent.com/kytta/skyr/main/skyr.py"

Usage

For example, to execute script/test:

skyr test

If you don't provide the script name, it will default to build:

skyr  # same as 'skyr build'

By default, Skyr searches for your scripts inside ./script. To change that, use --script-dir:

skyr --script-dir ./dev/ test

Roadmap

  • Basic script running: Run .sh, .bash, .zsh, and other files from the script/ directory.
  • Target dependencies: Run scripts if other depend on them.
  • Dependency age: Run scripts only if the files it depends on changed.
  • Script validation: Check that Skyr understands the scripts it was given.
  • Make mode: Support running very basic Makefiles.
  • Make migration mode: Support migrating from a Makefile to a script/ directory.
  • Just mode: Support running very basic Justfiles.
  • Just migration mode: Support migrating from just to a script/ directory.

Licence

© 2023 Nikita Karamov
Code licensed under the ISC License.


This project is hosted on GitHub: https://github.com/kytta/skyr.git

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

skyr-0.1.1.tar.gz (14.7 kB view details)

Uploaded Source

Built Distribution

skyr-0.1.1-py3-none-any.whl (4.3 kB view details)

Uploaded Python 3

File details

Details for the file skyr-0.1.1.tar.gz.

File metadata

  • Download URL: skyr-0.1.1.tar.gz
  • Upload date:
  • Size: 14.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.2

File hashes

Hashes for skyr-0.1.1.tar.gz
Algorithm Hash digest
SHA256 ff829917be1777b7662f6fc7207b28fe17bd4e02bd000f8a9f2e088649bf8c6e
MD5 b87a133cb2af263d7a4e231a2867b4cb
BLAKE2b-256 e88d7dfd1fe24d38363e28f29bb4f4d57f73936f567ae59e01d8e67ade12788e

See more details on using hashes here.

File details

Details for the file skyr-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: skyr-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 4.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.2

File hashes

Hashes for skyr-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 71a85b57ec735b3218b8fd5ef3c8478f6c263647d9247b91ed6fc6332a6d346a
MD5 cf716eb9c328f5c7e12dc749b924350a
BLAKE2b-256 1e6977aab77b64884c539a7e7199dd11a93705989612495294114d6ee0f98e99

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page