Plugins
Plugins are the secret sauce behind PkgTemplates
's customization and extension. This page describes plugins that already exist; for information on writing your own plugins, see Plugin Development.
Continuous Integration (CI)
PkgTemplates.TravisCI
— Type.TravisCI(; config_file::Union{AbstractString, Nothing}="") -> TravisCI
Add TravisCI
to a template's plugins to add a .travis.yml
configuration file to generated repositories, and an appropriate badge to the README.
Keyword Arguments:
config_file::Union{AbstractString, Nothing}=""
: Path to a custom.travis.yml
. Ifnothing
is supplied, no file will be generated.
PkgTemplates.AppVeyor
— Type.AppVeyor(; config_file::Union{AbstractString, Nothing}="") -> AppVeyor
Add AppVeyor
to a template's plugins to add a .appveyor.yml
configuration file to generated repositories, and an appropriate badge to the README.
Keyword Arguments
config_file::Union{AbstractString, Nothing}=""
: Path to a custom.appveyor.yml
. Ifnothing
is supplied, no file will be generated.
PkgTemplates.GitLabCI
— Type.GitLabCI(; config_file::Union{AbstractString, Nothing}="", coverage::Bool=true) -> GitLabCI
Add GitLabCI
to a template's plugins to add a .gitlab-ci.yml
configuration file to generated repositories, and appropriate badge(s) to the README.
Keyword Arguments:
config_file::Union{AbstractString, Nothing}=""
: Path to a custom.gitlab-ci.yml
. Ifnothing
is supplied, no file will be generated.coverage::Bool=true
: Whether or not GitLab CI's built-in code coverage analysis should be enabled.
PkgTemplates.CirrusCI
— Type.CirrusCI(; config_file::Union{AbstractString, Nothing}="") -> CirrusCI
Add CirrusCI
to a template's plugins to add a .cirrus.yml
configuration file to generated repositories, and an appropriate badge to the README. The default configuration file supports only FreeBSD builds via CirrusCI.jl
Keyword Arguments
config_file::Union{AbstractString, Nothing}=""
: Path to a custom.cirrus.yml
. Ifnothing
is supplied, no file will be generated.
Code Coverage
PkgTemplates.Codecov
— Type.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.
PkgTemplates.Coveralls
— Type.Coveralls(; config_file::Union{AbstractString, Nothing}=nothing) -> Coveralls
Add Coveralls
to a template's plugins to optionally add a .coveralls.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.coveralls.yml
. If left unset, no file will be generated.
Documentation
PkgTemplates.Documenter
— Type.Add a Documenter
subtype to a template's plugins to add support for documentation generation via Documenter.jl.
By default, the plugin generates a minimal index.md and a make.jl file. The make.jl file contains the Documenter.makedocs command with predefined values for modules
, format
, pages
, repo
, sitename
, and authors
.
The subtype is expected to include the following fields:
assets::Vector{AbstractString}
, a list of filenames to be included as theassets
kwarg to makedocs
gitignore::Vector{AbstractString}
, a list of files to be added to the.gitignore
It may optionally include the field additional_kwargs::Union{AbstractDict, NamedTuple}
to allow additional kwargs to be added to makedocs
.
PkgTemplates.GitHubPages
— Type.GitHubPages(; assets::Vector{<:AbstractString}=String[]) -> GitHubPages
Add GitHubPages
to a template's plugins to add Documenter
support via GitHub Pages, including automatic uploading of documentation from TravisCI
. Also adds appropriate badges to the README, and updates the .gitignore
accordingly.
Keyword Arguments
assets::Vector{<:AbstractString}=String[]
: Array of paths to Documenter asset files.
If deploying documentation with Travis CI, don't forget to complete the required configuration (see here).
PkgTemplates.GitLabPages
— Type.GitLabPages(; assets::Vector{<:AbstractString}=String[]) -> GitLabPages
Add GitLabPages
to a template's plugins to add Documenter
support via GitLab Pages, including automatic uploading of documentation from GitLabCI
. Also adds appropriate badges to the README, and updates the .gitignore
accordingly.
Keyword Arguments
assets::Vector{<:AbstractString}=String[]
: Array of paths to Documenter asset files.