Skip to content

Latest commit

 

History

History
77 lines (49 loc) · 3.31 KB

File metadata and controls

77 lines (49 loc) · 3.31 KB

Contributing Guide

Help improve this project by:

Your contributions are appreciated and will be taken seriously.

How to Contribute

1. Create an issue

Report problems or suggest improvements by creating an issue.

2. Fork the project

Fork the repository to your GitHub account.

3. Make changes

Clone your fork locally and make the necessary changes:

git clone git@github.com:YOURNAMESPACE/autobase.git

4. Test your changes

4.1 Desktop

Install make, Python3.12, venv, and docker.

Run make for Makefile help.

Resource requirements:

  • make molecule-converge — creates 3 containers and deploys a PostgreSQL cluster. Minimum: 4 GB RAM, 2 CPU cores, 10 GB disk (8 GB RAM recommended).
  • make tests — runs all test scenarios and is significantly more resource-intensive. Minimum: 8 GB RAM, 4 CPU cores, 20 GB disk (16 GB RAM recommended).

On systems with limited RAM, use make molecule-converge for a quick functional test, then make molecule-destroy to clean up.

  1. Initialize virtualenv and install dependencies with: make bootstrap-dev
  2. Run Prettier formatting: make prettier
  3. Lint your code with make lint
  4. Test your changes with: make molecule-converge (lightweight) or make tests (all scenarios)

To test a specific distribution, set distro, tag, and namespace:

IMAGE_NAMESPACE=geerlingguy IMAGE_DISTRO=debian12 make molecule-converge

4.2 Gitpod

Use Gitpod for a cloud-based development environment:

  1. Sign up for Gitpod: https://gitpod.io
  2. Fork the autobase repository
  3. Open your fork in Gitpod: https://gitpod.io/#https://github.com/username/autobase
  4. Create a new branch: git checkout -b my-feature-branch
  5. Make your changes and commit: git add . and git commit -m "Description of changes"
  6. Run Prettier formatting: make prettier
  7. Test with linters: make lint
  8. Test with Molecule: make molecule-converge (lightweight) or make tests (all scenarios)
  9. Push your changes: git push origin my-feature-branch

Keep your Gitpod workspace synced with the main repository.

5. Submit a pull request

Create a pull request and refer to the issue number using #123, where 123 is the issue number.

6. Wait

Your pull request will be reviewed, and you’ll receive feedback. Thanks for contributing!

Consider sponsoring the maintainer via GitHub or Patreon.