44 lines
1.5 KiB
Julia
44 lines
1.5 KiB
Julia
"""
|
|
CodeCov(; config_file::Union{AbstractString, Nothing}=nothing) -> CodeCov
|
|
|
|
Add `CodeCov` to a template's plugins to optionally add a `.codecov.yml` configuration file
|
|
to generated repositories, and an appropriate badge to the README. Also updates the
|
|
`.gitignore` accordingly.
|
|
|
|
# Keyword Arguments:
|
|
* `config_file::Union{AbstractString, Nothing}=nothing`: Path to a custom `.codecov.yml`.
|
|
If left unset, no file will be generated.
|
|
"""
|
|
@auto_hash_equals struct CodeCov <: GenericPlugin
|
|
gitignore::Vector{AbstractString}
|
|
src::Union{AbstractString, Nothing}
|
|
dest::AbstractString
|
|
badges::Vector{Badge}
|
|
view::Dict{String, Any}
|
|
|
|
function CodeCov(; config_file::Union{AbstractString, Nothing}=nothing)
|
|
if config_file != nothing
|
|
config_file = if isfile(config_file)
|
|
abspath(config_file)
|
|
else
|
|
throw(ArgumentError("File $(abspath(config_file)) does not exist"))
|
|
end
|
|
end
|
|
new(
|
|
["*.jl.cov", "*.jl.*.cov", "*.jl.mem"],
|
|
config_file,
|
|
".codecov.yml",
|
|
[
|
|
Badge(
|
|
"CodeCov",
|
|
"https://codecov.io/gh/{{USER}}/{{PKGNAME}}.jl/branch/master/graph/badge.svg",
|
|
"https://codecov.io/gh/{{USER}}/{{PKGNAME}}.jl",
|
|
),
|
|
],
|
|
Dict{String, Any}(),
|
|
)
|
|
end
|
|
end
|
|
|
|
interactive(plugin_type::Type{CodeCov}) = interactive(plugin_type; file=nothing)
|