Skip to main content

Simple monorepo build tool

Project description

drkns is a simple monorepo build tool.

Build Status

Build is driven through YAML files, that can have dependencies over other YAML files.

  • Steps are built after the dependencies.
  • A failure at a step prevents the execution of the next one.
  • The result of each execution step, if a directory is left unchanged no execution will be triggered again.
  • State can be persisted in Amazon S3 to have a shared memory between volatile build instances

Sample master drkns.yml

drkns.yml

dependencies:
  sub1: subProject1/drkns.yml

Sample dependency drkns.yml

subProject1/drkns.yml

steps:
  buildImages: |
       docker build -q -t ...

  startContainers: "docker run --network host --name test -d backServer-test"

YAML reference

  • directory : Current directory by default, only used to compute the hash associated with this build file
  • steps: ordered and named commands.
  • dependencies: named external drkns yml to load, their steps becomes callables through drkns dependencyName.stepName

CLI interface

The command line interface offers the following commands :

# Checks that the configuration makes sense (no output is a good sign
drkns check

# List all steps
drkns list

# Restore previous execution information from S3
# Assuming an environment variable DRKNS_S3_PATH exists under the form 
# "s3://buck3t/d1r" 
drkns sync in

# also available for something like
# drkns sync in s3://buck3t/d1r

# Runs all steps
drkns run 

# Runs first step
drkns run 1

# Runs identified task
drkns run sub1.buildImages

# Clean persisted data older than a week old (to not overload the cache after 
# too many builds)
drkns clean

# Persist previous execution information from S3, see assumptions for sync in
# Beware this erase extra files 
drkns sync out

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

drkns-0.0.7.tar.gz (9.1 kB view details)

Uploaded Source

Built Distribution

drkns-0.0.7-py3-none-any.whl (13.2 kB view details)

Uploaded Python 3

File details

Details for the file drkns-0.0.7.tar.gz.

File metadata

  • Download URL: drkns-0.0.7.tar.gz
  • Upload date:
  • Size: 9.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/50.0.0 requests-toolbelt/0.9.1 tqdm/4.49.0 CPython/3.8.5

File hashes

Hashes for drkns-0.0.7.tar.gz
Algorithm Hash digest
SHA256 5202f69289c64e347bae0b6d8d92a80f2fbcd6ecb01e95ace8bbd731310a27cb
MD5 958582bde0d3ca8bbda0aebdc9572300
BLAKE2b-256 b6e5a9ac4af80eca02ce0bf0d93622c2bb81a319828523982f520f410599e4df

See more details on using hashes here.

File details

Details for the file drkns-0.0.7-py3-none-any.whl.

File metadata

  • Download URL: drkns-0.0.7-py3-none-any.whl
  • Upload date:
  • Size: 13.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/50.0.0 requests-toolbelt/0.9.1 tqdm/4.49.0 CPython/3.8.5

File hashes

Hashes for drkns-0.0.7-py3-none-any.whl
Algorithm Hash digest
SHA256 657c087e399b96bdcbb63c410d036253a956dd9e45515c7df86d48e89399a2a1
MD5 5f346c4539a5315dd024004f7f42986e
BLAKE2b-256 a55c33427b6e8e8ea50c34a1de943dedb1570cf4df7faa5fd852666f331a637d

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