deploy_site_github()
sets up your SSH keys for deployment, builds the
site with build_site()
, commits the site to the gh-pages
branch and then pushes
the results back to GitHub. deploy_site_github()
is meant only to be used
by the CI system on Travis, it should not be called locally. See 'Setup' for
details on setting up your repository to use this.
deploy_site_github(pkg = ".", install = TRUE,
tarball = Sys.getenv("PKG_TARBALL", ""),
ssh_id = Sys.getenv("id_rsa", ""),
repo_slug = Sys.getenv("TRAVIS_REPO_SLUG", ""),
commit_message = construct_commit_message(pkg), verbose = FALSE, ...)
Path to package.
Optionally, opt-out of automatic installation. This is necessary if the package you're document is a dependency of pkgdown
The location of the built package tarball. The default Travis
configuration for R packages sets PKG_TARBALL
to this path.
The private id to use, a base64 encoded content of the private
pem file. This should not be your personal private key. Instead create a
new keypair specifically for deploying the site. The easiest way is to use
travis::use_travis_deploy()
.
The user/repo
slug for the repository.
The commit message to be used for the commit.
Print verbose output
Additional arguments passed to build_site()
.
For a quick setup, you can use usethis::use_pkgdown_travis()
. It will help you
with the following detailed steps.
Add the following to your .travis.yml
file.
before_cache: Rscript -e 'remotes::install_cran("pkgdown")' deploy: provider: script script: Rscript -e 'pkgdown::deploy_site_github()' skip_cleanup: true
Then you will need to setup your deployment keys. The easiest way is to call
travis::use_travis_deploy()
. This will generate and push the necessary
keys to your GitHub and Travis accounts. See the travis package website for more details.
Next, make sure that a gh-pages branch exists. The simplest way to do so is to run the following git commands locally:
git checkout --orphan gh-pages git rm -rf . git commit --allow-empty -m 'Initial gh-pages commit' git push origin gh-pages git checkout master
We recommend doing this outside of RStudio (with the project closed) as from RStudio's perspective you end up deleting all the files and then re-creating them.
If you're using a custom CNAME, make sure you have set the url
in
_pkgdown.yaml
:
url: http://pkgdown.r-lib.org