Skip to content

Latest commit

 

History

History
68 lines (49 loc) · 3 KB

DEVELOPMENT.md

File metadata and controls

68 lines (49 loc) · 3 KB

Drone-GDM: Development

⭐ Be sure to review the Code of Conduct ahead of time!

⚠️ Additional documentation for maintainers can be found here.

ℹ️ See the Contributing Guide for information regarding proposing or submitting changes.

Contents


Building and Testing

This project uses go mod for dependency management.

ℹ️ There is a makefile which provides some shortcuts - specifically:

  • make - build and test
  • make bin - just build the executable, without testing
  • make test - just test the executable (it is built, if absent)
  • make clean - clean any compiler generated output from the repo

Docker

To build and package the docker image:

GOOS=linux GOARCH=amd64 make bin \
  && docker build -t drone-gdm:local .

Sources

Utilities

  • drone.go: Fetch drone-specific parameters from the environment at startup
  • parse.go: Drone parameter parser (from environment variables)
  • yaml2json.go: Utility functions to ease some difficulties regarding parsing YAML/JSON from strings

Tests


Travis CI

Drone-gdm uses Travis CI to automate build, test, and deployment.

The .travis.yml configuration file is used to set up CI environment. It then invokes: