Skip to main content

yaml orchestration for bash

Project description

Sometimes I find make too old, autoplay unfrustrates me.

Getting started

Install with pip install autoplay.

It will look for jobs in autoplay.yml in the current directory or fallback on the autoplay/autoplay.yml file which defines a few default jobs. The twine job for example will build .po files and make a python package that it will upload with twine, to automate python package release:

autoplay run twine pypi_user=jpic pypi_pass=lol mode=dryrun

Create a file with name autoplay.yml containing:

---
env:
  someglobal: foo

---
name: example
env:
  example_var: ./autoplay-example
  multiline_var: |
    foo
    bar
setup:
- test -f $example_var || echo "$multiline_var" > $example_var
script:
- cat $example_var

---
name: test
requires:
- example

Then, see the commands it would execute with autoplay run example mode=dryrun

In-development

CLI Development Environment

We’re investing in a development command that would allow to run several jobs simultaneously, with an urwid based interface. It would allow to define jobs like this in your autoplay.yml:

---
name: dev
script:
- eslint --watch
- yarn start
- django-admin runserver
- py.test --watch

That you could run with autoplay run dev mode=ide.

Tox-like and docker based executors

The default executor is linux which executes in a bash subshell. However other executors are available such as executor=docker (for baking development environments) and executor=virtualenv (for build matrix).

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

autoplay-0.1.1.tar.gz (5.2 kB view details)

Uploaded Source

File details

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

File metadata

  • Download URL: autoplay-0.1.1.tar.gz
  • Upload date:
  • Size: 5.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.5.0 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.7.1

File hashes

Hashes for autoplay-0.1.1.tar.gz
Algorithm Hash digest
SHA256 9628d44e0fc7868dc1a16b5a56bfb0bcd796308a90e31aa39a26469699909a4d
MD5 4ebc019a61aa737c36e069c3b58bc89c
BLAKE2b-256 c7b0c4acc91c3ca68f8cd6ab633fd80929e59cca77b9656662c820a520381933

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