협업을 하면서 내가 만든 코드를 다른 팀에서 모듈처럼 쓸 수 있도록 해야 하는 일이 생겼다.
pip install package_name 형태로 사용할 수 있도록 패키지 화 해 달라고 했다.
1. repo 생성
가장 먼저 패키지로 사용할 repo를 새로 만들어야 한다. 기존 코드에서 구조가 달라져야 하기 때문에 새 repo를 만들어서 진행한다.
2. 패키지 구조
- package_name
- package_name
- __init__.py
- function.py
- README.md
- requirements.txt
- setup.py
- package_name
만들어 둔 repo와 연결 할 package 폴더의 구조를 위와 같이 만들어 준다. package 이름과 같은 폴더 안에 또 같은 폴더를 만든 후에 사용이 될 함수들을 만들어 놓아야 한다.
3. __init__.py
__init__.py에는 사용이 될 모든 함수들을 import 해 준다.
4. requirements.txt
사용할 함수들을 다 작성했다면 requirements.txt 파일을 작성 한다. 해당 package를 사용할 때 필요한 라이브러리들을 버전과 함께 적어두면 된다.
5. setup.py
pip install 형태로 package를 사용할 수 있도록 하기 위해서는 setup.py가 필수적이다.
name에 package_name 즉, 생성한 폴더 이름과 동일한 이름을 넣어주고, url은 생성한 git repo 링크를 넣어준다.
추가로 설치해야 하는 라이브러리들은 install_requires에 버전과 함께 list에 넣어준다.
python_reuqires에는 해당 package를 사용하기 위해 필요한 파이썬 최소 버전을 명시 해 주면 된다.
6. github push (배포)
setup.py까지 작성을 완료 했다면 생성 해 둔 git repo에 해당 폴더를 push 해 준다.
git repo 생성부터 commit, push는 아래 링크에서 참고하면 된다.
https://iambeginnerdeveloper.tistory.com/category/Git
7. pip install git+https:// 로 설치하기
push까지 했다면 해당 repo의 http 주소를 통해 package를 설치할 수 있다.
pip install git+http://github-url
이렇게 설치까지 되고 나면 제대로 import가 되는지, 넣어둔 함수들이 제대로 작동하는지 테스트 하면 된다!