# Failure of CI job

**URL:** <https://discourse.julialang.org/t/failure-of-ci-job/126826>\
**Category:** General Usage\
**Created:** [March 11, 2025, 6:45pm UTC](https://discourse.julialang.org/t/failure-of-ci-job/126826 "2025-03-11T18:45:35Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![ufechner7](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/ufechner7/32/51363_2.png) [@ufechner7](https://discourse.julialang.org/u/ufechner7)\
**Post date:** [March 11, 2025, 6:45pm UTC](https://discourse.julialang.org/t/failure-of-ci-job/126826/1 "2025-03-11T18:45:35Z")

</div>

Since today, the job that builds the documentation fails:

> <https://github.com/Albatross-Kite-Transport/VortexStepMethod.jl/actions/runs/13790031457/job/38567219294?pr=117>

Why?

It used to work until now. What has changed?

Error message:

```julia
ERROR: LoadError: ArgumentError: Path to conda environment is not valid: /home/runner/.julia/conda/3/x86_64

```

I already tried three different versions of `CI.yml`.

---

<div class="post-metadata">

**Author:** ![ufechner7](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/ufechner7/32/51363_2.png) [@ufechner7](https://discourse.julialang.org/u/ufechner7)\
**Post date:** [March 12, 2025, 2:12pm UTC](https://discourse.julialang.org/t/failure-of-ci-job/126826/2 "2025-03-12T14:12:56Z")

</div>

Using the following CI code made it work:

```julia
    steps:
      - uses: actions/checkout@v4
      - uses: julia-actions/setup-julia@v2
      - name: Build PyCall
        run: julia --project=docs/ -e 'ENV["PYTHON"]=""; using Pkg; Pkg.develop(PackageSpec(path=pwd())); Pkg.instantiate(); Pkg.build("PyCall")'
        shell: bash
      - uses: julia-actions/cache@v2
      - uses: julia-actions/julia-buildpkg@v1
      - uses: julia-actions/julia-docdeploy@v1
        env:
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
          DOCUMENTER_KEY: ${{ secrets.DOCUMENTER_KEY }}

```

Adding these three lines was key:

```julia
      - name: Build PyCall
        run: julia --project=docs/ -e 'ENV["PYTHON"]=""; using Pkg; Pkg.develop(PackageSpec(path=pwd())); Pkg.instantiate(); Pkg.build("PyCall")'
        shell: bash

```

Background info: [precompile conda failure · Issue #104 · JuliaPy/Conda.jl · GitHub](https://github.com/JuliaPy/Conda.jl/issues/104)

---

<div class="post-metadata">

**Author:** ![kellertuer](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/kellertuer/32/220707_2.png) [@kellertuer](https://discourse.julialang.org/u/kellertuer)\
**Post date:** [March 12, 2025, 2:32pm UTC](https://discourse.julialang.org/t/failure-of-ci-job/126826/3 "2025-03-12T14:32:42Z")

</div>

If you feel that your run command is a bit clumsy, you can also put the environment variable like this

> <https://github.com/JuliaManifolds/Manifolds.jl/blob/5460a45177a97f4454b89de3c1b3785a0826dbab/.github/workflows/documenter.yml#L53-L58>

Our `make.jl` _is_ has a shebang to run as a Julia script (and does your setup stuff internally), but you could move the env done into a YAML.

---

<div class="post-metadata">

**Author:** ![ufechner7](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/ufechner7/32/51363_2.png) [@ufechner7](https://discourse.julialang.org/u/ufechner7)\
**Post date:** [March 12, 2025, 2:46pm UTC](https://discourse.julialang.org/t/failure-of-ci-job/126826/4 "2025-03-12T14:46:08Z")

</div>

I don’t think that this would work. The `env` section in my CI.yml is only valid for for the `julia-docdeploy` action, but is needed for the `Build PyCall` action which has to be executed earlier.

And adding this to `make.jl` does not make sense because locally `make.jl` works fine, rebuilding PyCall is only needed for Github.

---

<div class="post-metadata">

**Author:** ![kellertuer](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/kellertuer/32/220707_2.png) [@kellertuer](https://discourse.julialang.org/u/kellertuer)\
**Post date:** [March 12, 2025, 2:53pm UTC](https://discourse.julialang.org/t/failure-of-ci-job/126826/5 "2025-03-12T14:53:45Z")

</div>

You would of course have to put in a line after `bash:`.

I also did not mean you have to put the pig-build stuff somewhere else, just that we can do.
