Skip to content

Latest commit

 

History

History
67 lines (42 loc) · 2.5 KB

CONTRIBUTING.md

File metadata and controls

67 lines (42 loc) · 2.5 KB

Contributing Guidelines

GitHub hosts the project.

Development

Please open an issue to discuss any concerns or ideas for the project.

Version Control

Use git to retrieve and manage the project source code:

git clone https://github.com/Isilon/isilon_hadoop_tools.git

Test Environment

Use tox to deploy and run the project source code:

# Build and test the entire project:
tox

# Run a specific test with Python 3.7, and drop into Pdb if it fails:
tox -e py37 -- -k test_catches --pdb

# Create a Python 3.7 development environment:
tox -e py37 --devenv ./venv

# Run an IHT console_script in that environment:
venv/bin/isilon_create_users --help

Merges

  1. All change proposals are submitted by creating a pull request (PR).

  2. All PRs are associated with a milestone.

    • Milestones serve as a change log for the project.
  3. Any PR that directly changes any release artifact gets 1 of 3 labels: major, minor, patch.

    • This helps with release versioning.

Continuous Integration

Github Actions ensures the build never breaks and the tests always pass.

GitHub Workflow Status

It also deploys releases to the package repository automatically (see below).

Releases

  1. Releases are versioned according to Semantic Versioning.

  2. All releases are tagged.

    • This permanently associates a version with a commit.
  3. Every release closes a milestone.

    • This permanently associates a version with a milestone.

Package Repository

PyPI serves releases publically.

Build Status