JuliaCI / Nanosoldier.jl

A package for running JuliaCI services on MIT's Nanosoldier cluster
Other
30 stars 16 forks source link

More robust `vs` parsing #150

Open maleadt opened 1 year ago

maleadt commented 1 year ago

https://github.com/JuliaLang/julia/pull/48034#issuecomment-1367147416 triggered:

Dec 29 03:18:40 amdci8 bash[72047]: [ Info: [Node 1 | 2022-12-29T03:18:40.417]: considering job submission with phrase RegexMatch("@nanosoldier `runtests(ALL, vs=:release-1.8)`")
Dec 29 03:18:45 amdci8 bash[72047]: ┌ Error: [Node 1 | 2022-12-29T03:18:41.542]: Encountered error: failed to constuct Nanosoldier.PkgEvalJob with a supposedly valid submission: MethodError(iterate, (:(:release - 1.8),), 0x0000000000007f0b)
Dec 29 03:18:45 amdci8 bash[72047]: │   exception =
Dec 29 03:18:45 amdci8 bash[72047]: │    MethodError: no method matching iterate(::Expr)
Dec 29 03:18:45 amdci8 bash[72047]: │    Closest candidates are:
Dec 29 03:18:45 amdci8 bash[72047]: │      iterate(!Matched::Union{LinRange, StepRangeLen}) at range.jl:872
Dec 29 03:18:45 amdci8 bash[72047]: │      iterate(!Matched::Union{LinRange, StepRangeLen}, !Matched::Integer) at range.jl:872
Dec 29 03:18:45 amdci8 bash[72047]: │      iterate(!Matched::T) where T<:Union{Base.KeySet{<:Any, <:Dict}, Base.ValueIterator{<:Dict}} at dict.jl:712
Dec 29 03:18:45 amdci8 bash[72047]: │      ...
Dec 29 03:18:45 amdci8 bash[72047]: │    Stacktrace:
Dec 29 03:18:45 amdci8 bash[72047]: │      [1] in(x::Char, itr::Expr)
Dec 29 03:18:45 amdci8 bash[72047]: │        @ Base ./operators.jl:1242
Dec 29 03:18:45 amdci8 bash[72047]: │      [2] Nanosoldier.PkgEvalJob(submission::Nanosoldier.JobSubmission)
Dec 29 03:18:45 amdci8 bash[72047]: │        @ Nanosoldier /storage/pkgeval/Nanosoldier/src/jobs/PkgEvalJob.jl:97
Dec 29 03:18:45 amdci8 bash[72047]: │      [3] (::Nanosoldier.var"#66#67"{Nanosoldier.Config, Vector{Nanosoldier.AbstractJob}})(event::GitHub.WebhookEvent, phrase::RegexMatch)
Dec 29 03:18:45 amdci8 bash[72047]: │        @ Nanosoldier /storage/pkgeval/Nanosoldier/src/server.jl:26
Dec 29 03:18:45 amdci8 bash[72047]: │      [4] handle_comment(handle::Nanosoldier.var"#66#67"{Nanosoldier.Config, Vector{Nanosoldier.AbstractJob}}, event::GitHub.WebhookEvent, auth::GitHub.OAuth2, trigger::Regex, check_collab::Bool, use_access_token::Bool)
Dec 29 03:18:45 amdci8 bash[72047]: │        @ GitHub /storage/pkgeval/depot/packages/GitHub/Ij6eH/src/activity/events.jl:204
Dec 29 03:18:45 amdci8 bash[72047]: │      [5] #260
Dec 29 03:18:45 amdci8 bash[72047]: │        @ /storage/pkgeval/depot/packages/GitHub/Ij6eH/src/activity/events.jl:156 [inlined]
Dec 29 03:18:45 amdci8 bash[72047]: │      [6] handle_event_request(request::HTTP.Messages.Request, handle::GitHub.var"#260#262"{GitHub.OAuth2, Bool, Bool, Nanosoldier.var"#66#67"{Nanosoldier.Config, Vector{Nanosoldier.AbstractJob}}, Regex}; auth::GitHub.OAuth2, secret::String, events::Vector{String}, repos::Vector{String}, forwards::Nothing)
Dec 29 03:18:45 amdci8 bash[72047]: │        @ GitHub /storage/pkgeval/depot/packages/GitHub/Ij6eH/src/activity/events.jl:112
Dec 29 03:18:45 amdci8 bash[72047]: │      [7] (::GitHub.var"#252#254"{GitHub.OAuth2, String, Vector{String}, GitHub.var"#260#262"{GitHub.OAuth2, Bool, Bool, Nanosoldier.var"#66#67"{Nanosoldier.Config, Vector{Nanosoldier.AbstractJob}}, Regex}})(request::HTTP.Messages.Request)
Dec 29 03:18:45 amdci8 bash[72047]: │        @ GitHub /storage/pkgeval/depot/packages/GitHub/Ij6eH/src/activity/events.jl:79
Dec 29 03:18:45 amdci8 bash[72047]: │      [8] (::HTTP.Handlers.var"#1#2"{GitHub.var"#252#254"{GitHub.OAuth2, String, Vector{String}, GitHub.var"#260#262"{GitHub.OAuth2, Bool, Bool, Nanosoldier.var"#66#67"{Nanosoldier.Config, Vector{Nanosoldier.AbstractJob}}, Regex}}})(stream::HTTP.Streams.Stream{HTTP.Messages.Request, HTTP.ConnectionPool.Connection})
Dec 29 03:18:45 amdci8 bash[72047]: │        @ HTTP.Handlers /storage/pkgeval/depot/packages/HTTP/RQd4C/src/Handlers.jl:58
Dec 29 03:18:45 amdci8 bash[72047]: │      [9] #invokelatest#2
Dec 29 03:18:45 amdci8 bash[72047]: │        @ ./essentials.jl:729 [inlined]
Dec 29 03:18:45 amdci8 bash[72047]: │     [10] invokelatest
Dec 29 03:18:45 amdci8 bash[72047]: │        @ ./essentials.jl:726 [inlined]
Dec 29 03:18:45 amdci8 bash[72047]: │     [11] handle_connection(f::Function, c::HTTP.ConnectionPool.Connection, listener::HTTP.Servers.Listener{Nothing, Sockets.TCPServer}, readtimeout::Int64, access_log::Nothing)
Dec 29 03:18:45 amdci8 bash[72047]: │        @ HTTP.Servers /storage/pkgeval/depot/packages/HTTP/RQd4C/src/Servers.jl:447
Dec 29 03:18:45 amdci8 bash[72047]: │     [12] (::HTTP.Servers.var"#16#17"{HTTP.Handlers.var"#1#2"{GitHub.var"#252#254"{GitHub.OAuth2, String, Vector{String}, GitHub.var"#260#262"{GitHub.OAuth2, Bool, Bool, Nanosoldier.var"#66#67"{Nanosoldier.Config, Vector{Nanosoldier.AbstractJob}}, Regex}}}, HTTP.Servers.Listener{Nothing, Sockets.TCPServer}, Set{HTTP.ConnectionPool.Connection}, Int64, Nothing, Base.Semaphore, HTTP.ConnectionPool.Connection})()
Dec 29 03:18:45 amdci8 bash[72047]: │        @ HTTP.Servers ./task.jl:484
Dec 29 03:18:45 amdci8 bash[72047]: └ @ Nanosoldier /storage/pkgeval/Nanosoldier/src/config.jl:48