usharesoft / hammr

Command-line tool for building consistent and repeatable machine images for multiple cloud platforms
http://hammr.io
Apache License 2.0
28 stars 24 forks source link

How to set up the dev environment to contribute #469

Closed ghost closed 5 years ago

ghost commented 5 years ago

Hello,

As an external dev, I would like a complete guide to set up my pycharm environment to contribute to this project:

The aim is to have a functional PyCharm env from a fresh install of a RedHat-based distro like CentOS or Fedora.

Thank you.

AliceAlbano commented 5 years ago

You have a Hammr wiki here with a section contribute : https://github.com/usharesoft/hammr/wiki It can be a start, and it can also be completed if needed !

ghost commented 5 years ago

From a fresh installed OS, launch pycharm and open the hammr projet or git clone with pycharm. Wait a moment (Updating Python Interpreter and Updating Indices) and open any file.

Packages requirements:

- uforge_python_sdk>=3.8.8
- httplib2==0.9
- texttable==0.8.1
- progressbar==2.3
- argparse
- paramiko==1.12
- pyparsing==2.0.2
- pyyaml==3.12
- hurry.filesize==0.9
- termcolor==1.1.0
- junit-xml==1.3
- xmlrunner==1.7.7
- ussclicore==1.0.11
- mock
ghost commented 5 years ago

Ok it seems it's working if you follow this steps:

  1. yum install -y git gcc python-devel libxml2-devel libxslt-devel
  2. curl https://bootstrap.pypa.io/get-pip.py -O
  3. python get-pip.py pip==8.1.1
  4. Launch pycharm
  5. Open the project hammr
  6. Wait a moment (Updating Python Interpreter and Updating Indices) and open any python file from the project.
  7. When you have the message "Package requirements...", click on "Install requirements"
  8. Enjoy!
ghost commented 5 years ago

I will PR something

ghost commented 5 years ago

Hello, on the wiki (https://github.com/usharesoft/hammr/wiki/Contribute), below this text:

If you want to contribute to Hammr, you can review code for opened pull requests, fix logged issues or propose new features in a dedicated pull request. If you encounter issues or bugs using Hammr, you can log them.

You can also open issues if you have an idea for improvement, or help improving the code coverage, by writing unit tests or integration tests.

Can you add something like this:

On a RedHat-based distro (Fedora, CentOS, etc.), you will need to install these packages:
* python2.7
* gcc
* python-devel
* libxml2-devel
* libxslt-devel

And PyCharm will need pip==8.1.1 to install the required python packages.

It's enough to have a working environment. Thank you !

locobastos commented 5 years ago

The next step is to explain how to PR.

ghost commented 5 years ago

Regarding the dependencies, I added them directly in the Wiki. Regarding the pull request, it a GitHub mechanism, I had to learn how it works.