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 debug twine
autoplay twine mode=dryrun
TWINE_USERNAME=... TWINE_PASSWORD=.. autoplay twine

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.2.0.tar.gz (5.3 kB view details)

Uploaded Source

File details

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

File metadata

  • Download URL: autoplay-0.2.0.tar.gz
  • Upload date:
  • Size: 5.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.1 setuptools/39.0.1 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.6.6

File hashes

Hashes for autoplay-0.2.0.tar.gz
Algorithm Hash digest
SHA256 f23b55775e153324c1ff1d9fbc034130bee572820667ac08f807eddd81da15e4
MD5 896d0cb2a0dd902b752c5a1158b3ae2a
BLAKE2b-256 c38a70058f98586a5736bea26f235d69b9966e8c5c715681912fa9541bd3936a

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