# Github Actions CI using PyCall and a local/Github python package

**URL:** <https://discourse.julialang.org/t/github-actions-ci-using-pycall-and-a-local-github-python-package/82191>\
**Category:** General Usage\
**Tags:** question\
**Created:** [June 3, 2022, 2:31pm UTC](https://discourse.julialang.org/t/github-actions-ci-using-pycall-and-a-local-github-python-package/82191 "2022-06-03T14:31:37Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![mabuwu](https://avatars.discourse-cdn.com/v4/letter/m/eada6e/32.png) [@mabuwu](https://discourse.julialang.org/u/mabuwu)\
**Post date:** [June 3, 2022, 2:31pm UTC](https://discourse.julialang.org/t/github-actions-ci-using-pycall-and-a-local-github-python-package/82191/1 "2022-06-03T14:31:37Z")

</div>

I’ve built a Julia package that uses a python package imported via PyCall.  
The python package is only available via GitHub, it’s not available via pip or Conda.  
Locally, this works fine. I can simply install the package in the Conda environment used by the Julia package and it’s able to find it.

However, when I push to Github, the CI fails because it can’t find the python package.

Is there any way how I can install a python package from Github in Github Actions?

---

<div class="post-metadata">

**Author:** ![sairus7](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/sairus7/32/10816_2.png) [@sairus7](https://discourse.julialang.org/u/sairus7)\
**Post date:** [June 6, 2022, 11:45am UTC](https://discourse.julialang.org/t/github-actions-ci-using-pycall-and-a-local-github-python-package/82191/2 "2022-06-06T11:45:20Z")

</div>

For packages available from conda, you should add file `deps/build.jl`:

```julia
using PyCall
PyCall.Conda.add("your_package_name")

```

Maybe there are similar ways to add packages from github URL within PyCall.  
If there are not, just call python script to add it from URL, then set `PYTHON` environment variable to use [system-wide python installation](https://github.com/JuliaPy/PyCall.jl#specifying-the-python-version), and then start Julia and build your package.

If your python package is in private repo, then you should use github secrets.
