Home

Awesome

exporter

Build Status Docker Pulls GitHub release (latest by date)

Export Makefile to following pipeline engines:

¹ privileged containers not working at bitbucket cloud

All Makefile user targets is added, including implicit jobs (like commitlint).

Additional environment variables, flows and error handling needs to be implemented by user.

This project pipeline is made using mkdkr_exporter.

usage

include

Add the following line at mkdkr.csv

exporter,https://github.com/rosineygp/mkdkr_exporter.git

execute

No needs aditional step in your Makefile (implicit)

# export to gitlab
make _exporter_gitlab-ci

# export to github actions
make _exporter_github

# export to travis
make _exporter_travis

# export to circle ci
make _exporter_circle-ci

# export to jenkins (pipeline syntax)
make _exporter_jenkins_pipeline

# export to bitbucket pipelines
make _exporter_bitbucket-pipelines

# export to local - shellscript
make _exporter_shell

how it works

The script will read Makefile and execute make -qp. It will return all explicit and implicit make targets.

For better result add and prefix in your Makefile target name like this.

lint.python:
  ...

test.unit:
  ...

test.dast:
  ...

deploy.heroku:
  ...

or using slash as separator.

lint/python:
  ...

test/unit:
  ...

test/dast:
  ...

deploy/heroku:
  ...

The prefix will be used as job stage and run in parallel at gitlab-ci and travis.

If not added prefix, the stage name will be the same as target name.

exclude targets

To exclude a target in exporter generator the first letter of target name needs to be different of following regex [a-zA-Z].

* suggest start with _ underscore.