-
Notifications
You must be signed in to change notification settings - Fork 2
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #1 from projectcapsule/dev
feat: initial deployment
- Loading branch information
Showing
60 changed files
with
21,292 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,78 @@ | ||
# Sample workflow for building and deploying a Hugo site to GitHub Pages | ||
name: Deploy Hugo site to Pages | ||
|
||
on: | ||
# Runs on pushes targeting the default branch | ||
push: | ||
branches: | ||
- main | ||
|
||
# Allows you to run this workflow manually from the Actions tab | ||
workflow_dispatch: | ||
|
||
# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages | ||
permissions: | ||
contents: read | ||
pages: write | ||
id-token: write | ||
|
||
# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued. | ||
# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete. | ||
concurrency: | ||
group: "pages" | ||
cancel-in-progress: false | ||
|
||
# Default to bash | ||
defaults: | ||
run: | ||
shell: bash | ||
|
||
jobs: | ||
# Build job | ||
build: | ||
runs-on: ubuntu-latest | ||
env: | ||
HUGO_VERSION: 0.123.0 | ||
steps: | ||
- name: Install Hugo CLI | ||
run: | | ||
wget -O ${{ runner.temp }}/hugo.deb https://github.com/gohugoio/hugo/releases/download/v${HUGO_VERSION}/hugo_extended_${HUGO_VERSION}_linux-amd64.deb \ | ||
&& sudo dpkg -i ${{ runner.temp }}/hugo.deb | ||
- name: Install Dart Sass | ||
run: sudo snap install dart-sass | ||
- name: Checkout | ||
uses: actions/checkout@v4 | ||
with: | ||
submodules: recursive | ||
fetch-depth: 0 | ||
- name: Setup Pages | ||
id: pages | ||
uses: actions/configure-pages@v4 | ||
- name: Install Node.js dependencies | ||
run: "[[ -f package-lock.json || -f npm-shrinkwrap.json ]] && npm ci || true" | ||
- name: Build with Hugo | ||
env: | ||
# For maximum backward compatibility with Hugo modules | ||
HUGO_ENVIRONMENT: production | ||
HUGO_ENV: production | ||
run: | | ||
hugo \ | ||
--gc \ | ||
--minify \ | ||
--baseURL "${{ steps.pages.outputs.base_url }}/" | ||
- name: Upload artifact | ||
uses: actions/upload-pages-artifact@v2 | ||
with: | ||
path: ./public | ||
|
||
# Deployment job | ||
deploy: | ||
environment: | ||
name: github-pages | ||
url: ${{ steps.deployment.outputs.page_url }} | ||
runs-on: ubuntu-latest | ||
needs: build | ||
steps: | ||
- name: Deploy to GitHub Pages | ||
id: deployment | ||
uses: actions/deploy-pages@v3 |
Empty file.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,28 @@ | ||
# How to Contribute | ||
|
||
We'd love to accept your patches and contributions to this project. There are | ||
just a few small guidelines you need to follow. | ||
|
||
## Contributor License Agreement | ||
|
||
Contributions to this project must be accompanied by a Contributor License | ||
Agreement. You (or your employer) retain the copyright to your contribution; | ||
this simply gives us permission to use and redistribute your contributions as | ||
part of the project. Head over to <https://cla.developers.google.com/> to see | ||
your current agreements on file or to sign a new one. | ||
|
||
You generally only need to submit a CLA once, so if you've already submitted one | ||
(even if it was for a different project), you probably don't need to do it | ||
again. | ||
|
||
## Code reviews | ||
|
||
All submissions, including submissions by project members, require review. We | ||
use GitHub pull requests for this purpose. Consult | ||
[GitHub Help](https://help.github.com/articles/about-pull-requests/) for more | ||
information on using pull requests. | ||
|
||
## Community Guidelines | ||
|
||
This project follows | ||
[Google's Open Source Community Guidelines](https://opensource.google.com/conduct/). |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
FROM floryn90/hugo:ext-alpine | ||
|
||
RUN apk add git && \ | ||
git config --global --add safe.directory /src |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,184 @@ | ||
# Docsy Example | ||
|
||
[Docsy][] is a [Hugo theme module][] for technical documentation sites, providing easy | ||
site navigation, structure, and more. This **Docsy Example Project** uses the Docsy | ||
theme component as a hugo module and provides a skeleton documentation structure for you to use. | ||
You can clone/copy this project and edit it with your own content, or use it as an example. | ||
|
||
In this project, the Docsy theme is pulled in as a Hugo module, together with | ||
its dependencies: | ||
|
||
```console | ||
$ hugo mod graph | ||
... | ||
``` | ||
|
||
For Docsy documentation, see [Docsy user guide][]. | ||
|
||
This Docsy Example Project is hosted on [Netlify][] at [example.docsy.dev][]. | ||
You can view deploy logs from the [deploy section of the project's Netlify | ||
dashboard][deploys], or this [alternate dashboard][]. | ||
|
||
This is not an officially supported Google product. This project is currently maintained. | ||
|
||
## Using the Docsy Example Project as a template | ||
|
||
A simple way to get started is to use this project as a template, which gives you a site project that is set up and ready to use. To do this: | ||
|
||
1. Use the dropdown for switching branches/tags to change to the **latest** released tag. | ||
|
||
2. Click **Use this template**. | ||
|
||
3. Select a name for your new project and click **Create repository from template**. | ||
|
||
4. Make your own local working copy of your new repo using git clone, replacing https://github.com/me/example.git with your repo’s web URL: | ||
|
||
```bash | ||
git clone --depth 1 https://github.com/me/example.git | ||
``` | ||
|
||
You can now edit your own versions of the site’s source files. | ||
|
||
If you want to do SCSS edits and want to publish these, you need to install `PostCSS` | ||
|
||
```bash | ||
npm install | ||
``` | ||
|
||
## Running the website locally | ||
|
||
Building and running the site locally requires a recent `extended` version of [Hugo](https://gohugo.io). | ||
You can find out more about how to install Hugo for your environment in our | ||
[Getting started](https://www.docsy.dev/docs/getting-started/#prerequisites-and-installation) guide. | ||
|
||
Once you've made your working copy of the site repo, from the repo root folder, run: | ||
|
||
```bash | ||
hugo server | ||
``` | ||
|
||
## Running a container locally | ||
|
||
You can run docsy-example inside a [Docker](https://docs.docker.com/) | ||
container, the container runs with a volume bound to the `docsy-example` | ||
folder. This approach doesn't require you to install any dependencies other | ||
than [Docker Desktop](https://www.docker.com/products/docker-desktop) on | ||
Windows and Mac, and [Docker Compose](https://docs.docker.com/compose/install/) | ||
on Linux. | ||
|
||
1. Build the docker image | ||
|
||
```bash | ||
docker-compose build | ||
``` | ||
|
||
1. Run the built image | ||
|
||
```bash | ||
docker-compose up | ||
``` | ||
|
||
> NOTE: You can run both commands at once with `docker-compose up --build`. | ||
1. Verify that the service is working. | ||
|
||
Open your web browser and type `http://localhost:1313` in your navigation bar, | ||
This opens a local instance of the docsy-example homepage. You can now make | ||
changes to the docsy example and those changes will immediately show up in your | ||
browser after you save. | ||
|
||
### Cleanup | ||
|
||
To stop Docker Compose, on your terminal window, press **Ctrl + C**. | ||
|
||
To remove the produced images run: | ||
|
||
```bash | ||
docker-compose rm | ||
``` | ||
For more information see the [Docker Compose documentation][]. | ||
|
||
## Using a local Docsy clone | ||
|
||
Make sure your installed go version is `1.18` or higher. | ||
|
||
Clone the latest version of the docsy theme into the parent folder of your project. The newly created repo should now reside in a sibling folder of your site's root folder. | ||
|
||
```shell | ||
cd root-of-your-site | ||
git clone --branch v0.7.2 https://github.com/google/docsy.git ../docsy | ||
``` | ||
|
||
Now run: | ||
|
||
```shell | ||
HUGO_MODULE_WORKSPACE=docsy.work hugo server --ignoreVendorPaths "**" | ||
``` | ||
|
||
or, when using npm, prepend `local` to the script you want to invoke, e.g.: | ||
|
||
```shell | ||
npm run local serve | ||
``` | ||
|
||
By using the `HUGO_MODULE_WORKSPACE` directive (either directly or via prefix `local` when using npm), the server now watches all files and directories inside the sibling directory `../docsy` , too. Any changes inside the local `docsy` theme clone are now immediately picked up (hot reload), you can instantly see the effect of your local edits. | ||
|
||
In the command above, we used the environment variable `HUGO_MODULE_WORKSPACE` to tell hugo about the local workspace file `docsy.work`. Alternatively, you can declare the workspace file inside your settings file `hugo.toml`: | ||
|
||
```toml | ||
[module] | ||
workspace = "docsy.work" | ||
``` | ||
|
||
Your project's `hugo.toml` file already contains these lines, the directive for workspace assignment is commented out, however. Remove the two trailing comment characters '//' so that this line takes effect. | ||
|
||
## Troubleshooting | ||
|
||
As you run the website locally, you may run into the following error: | ||
|
||
```console | ||
$ hugo server | ||
WARN 2023/06/27 16:59:06 Module "project" is not compatible with this Hugo version; run "hugo mod graph" for more information. | ||
Start building sites … | ||
hugo v0.101.0-466fa43c16709b4483689930a4f9ac8add5c9f66+extended windows/amd64 BuildDate=2022-06-16T07:09:16Z VendorInfo=gohugoio | ||
Error: Error building site: "C:\Users\foo\path\to\docsy-example\content\en\_index.md:5:1": failed to extract shortcode: template for shortcode "blocks/cover" not found | ||
Built in 27 ms | ||
``` | ||
|
||
This error occurs if you are running an outdated version of Hugo. As of docsy theme version `v0.7.0`, hugo version `0.110.0` or higher is required. | ||
See this [section](https://www.docsy.dev/docs/get-started/docsy-as-module/installation-prerequisites/#install-hugo) of the user guide for instructions on how to install Hugo. | ||
|
||
Or you may be confronted with the following error: | ||
|
||
```console | ||
$ hugo server | ||
|
||
INFO 2021/01/21 21:07:55 Using config file: | ||
Building sites … INFO 2021/01/21 21:07:55 syncing static files to / | ||
Built in 288 ms | ||
Error: Error building site: TOCSS: failed to transform "scss/main.scss" (text/x-scss): resource "scss/scss/main.scss_9fadf33d895a46083cdd64396b57ef68" not found in file cache | ||
``` | ||
|
||
This error occurs if you have not installed the extended version of Hugo. | ||
See this [section](https://www.docsy.dev/docs/get-started/docsy-as-module/installation-prerequisites/#install-hugo) of the user guide for instructions on how to install Hugo. | ||
|
||
Or you may encounter the following error: | ||
|
||
```console | ||
$ hugo server | ||
|
||
Error: failed to download modules: binary with name "go" not found | ||
``` | ||
|
||
This error occurs if you have not installed the `go` programming language on your system. | ||
See this [section](https://www.docsy.dev/docs/get-started/docsy-as-module/installation-prerequisites/#install-go-language) of the user guide for instructions on how to install `go`. | ||
|
||
|
||
[alternate dashboard]: https://app.netlify.com/sites/goldydocs/deploys | ||
[deploys]: https://app.netlify.com/sites/docsy-example/deploys | ||
[Docsy user guide]: https://docsy.dev/docs | ||
[Docsy]: https://github.com/google/docsy | ||
[example.docsy.dev]: https://example.docsy.dev | ||
[Hugo theme module]: https://gohugo.io/hugo-modules/use-modules/#use-a-module-for-a-theme | ||
[Netlify]: https://netlify.com | ||
[Docker Compose documentation]: https://docs.docker.com/compose/gettingstarted/ |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
/* | ||
Add styles or override variables from the theme here. | ||
*/ | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
# THIS IS A TEST CONFIG ONLY! | ||
# FOR THE CONFIGURATION OF YOUR SITE USE hugo.yaml. | ||
# | ||
# As of Docsy 0.7.0, Hugo 0.110.0 or later must be used. | ||
# | ||
# The sole purpose of this config file is to detect Hugo-module builds that use | ||
# an older version of Hugo. | ||
# | ||
# DO NOT add any config parameters to this file. You can safely delete this file | ||
# if your project is using the required Hugo version. | ||
|
||
module: | ||
hugoVersion: | ||
extended: true | ||
min: 0.110.0 |
Oops, something went wrong.