CI integration failed with Gurobi.jl in environment

Betristor
Mon, 24 Feb 2025 06:34:46 +0000
Optimization (Mathematical)

I have a Julia package in development which has Gurobi.jl in environment as an available solver. Somehow, the github CI integration is against the Gurobi.jl pre-compilation since no license could be found on github action machine. However, the CI process will not use Gurobi for testing, instead HiGHS will be used. Is there a way to keep the Gurobi.jl in environment, while I could skip the license validation?

Here is the trace provided by github action.

Failed to precompile Gurobi [2e9cd046-0924-5485-92f1-d5272153d98b] to "/home/runner/.julia/compiled/v1.11/Gurobi/jl_jh7YaY".
ERROR: LoadError: Gurobi Error 10009: No Gurobi license found (user runner, host fv-az795-534, hostid 3a60c19e, cores 1)
Stacktrace:
  [1] _check_ret
    @ ~/.julia/packages/Gurobi/P8NrB/src/MOI_wrapper/MOI_wrapper.jl:442 [inlined]
  [2] Gurobi.Env(params::Nothing; started::Bool, output_flag::Int64, memory_limit::Nothing)
    @ Gurobi ~/.julia/packages/Gurobi/P8NrB/src/MOI_wrapper/MOI_wrapper.jl:176
  [3] Env (repeats 2 times)
    @ ~/.julia/packages/Gurobi/P8NrB/src/MOI_wrapper/MOI_wrapper.jl:143 [inlined]
  [4] Gurobi.Optimizer(env::Nothing; enable_interrupts::Bool)
    @ Gurobi ~/.julia/packages/Gurobi/P8NrB/src/MOI_wrapper/MOI_wrapper.jl:372
  [5] Optimizer (repeats 2 times)
    @ ~/.julia/packages/Gurobi/P8NrB/src/MOI_wrapper/MOI_wrapper.jl:366 [inlined]
  [6] _instantiate_and_check
    @ ~/.julia/packages/MathOptInterface/zRYzr/src/instantiate.jl:94 [inlined]
  [7] #instantiate#36
    @ ~/.julia/packages/MathOptInterface/zRYzr/src/instantiate.jl:175 [inlined]
  [8] instantiate
    @ ~/.julia/packages/MathOptInterface/zRYzr/src/instantiate.jl:160 [inlined]
  [9] macro expansion
    @ ~/.julia/packages/Gurobi/P8NrB/src/Gurobi.jl:120 [inlined]
 [10] macro expansion
    @ ~/.julia/packages/PrecompileTools/L8A3n/src/workloads.jl:78 [inlined]
 [11] macro expansion
    @ ~/.julia/packages/Gurobi/P8NrB/src/Gurobi.jl:118 [inlined]
 [12] macro expansion
    @ ~/.julia/packages/PrecompileTools/L8A3n/src/workloads.jl:140 [inlined]
 [13] top-level scope
    @ ~/.julia/packages/Gurobi/P8NrB/src/Gurobi.jl:117
 [14] include
    @ ./Base.jl:557 [inlined]
 [15] include_package_for_output(pkg::Base.PkgId, input::String, depot_path::Vector{String}, dl_load_path::Vector{String}, load_path::Vector{String}, concrete_deps::Vector{Pair{Base.PkgId, UInt128}}, source::Nothing)
    @ Base ./loading.jl:2881
 [16] top-level scope
    @ stdin:6
in expression starting at /home/runner/.julia/packages/Gurobi/P8NrB/src/Gurobi.jl:7
in expression starting at stdin:6

14 posts - 4 participants