Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Python : Why do we need a build tool, what will you suggest for CI?

I have quite a bit experience in Python, but I haven't yet used any Build tools as such.

My technology :

  • Python
  • Django

Python devs talks about Continues Integration which needs the following :

  • VCS [ I use GIT ]
  • Build Tool [ I knowing nothing about ]
  • CI System like Jenkins [ I am learning ]

So, Why use a Build Tool what does it provides ?

Is it same as packaging tools ?

I heard of maven and ant but never heard any using them in the python world, why is that ?

What will you recommend for first timer with Build tools ?

How does that helps in deployment ?

like image 226
Yugal Jindle Avatar asked Jun 08 '12 05:06

Yugal Jindle


People also ask

Do we need build tool for Python?

If you prefer to install pre-compiled binaries, you have no need for a Python build tool.

Why do we need build automation tool?

Build automation tools allow us to orchestrate our project builds by automating the processes for handling Selenium dependencies, compiling source code to binary & then later packages the binary. All in order to run automation testing.

What build tool is used for Python?

PyBuilder is a powerful software build tool written in Python programming language. Because of the way it was engineered, this library primarily targets Python projects, but due to its extensible nature it can be used for the building and management of software in other languages as well.

What is CI in Python?

Continuous integration (CI) is the practice of frequently building and testing each change done to your code automatically and as early as possible.


1 Answers

The wiki for Continuous Integration pretty much explains it.

Build tools relate to what is necessary to build your entire project. If your project is 100% pure python then you probably don't have any build tools as its all interpreted scripts. You would keep committing to the project, and it would keep building (if building is neccessary), and testing.

Compiled languages (or if your python project needs to be packaged somehow to be tested) would require build tools to produce a program that can be run and be tested by the CI system.

If, for instance, your project were C++, you might be using make as your build tool. When you commit new code, make has to be run to build the project and be tested.

like image 130
jdi Avatar answered Sep 29 '22 03:09

jdi