This is how I set up my environment: (I am using gitpod.io for editing)
- fork the repo to your own github account
gitpod.io#to the beginning of your github url. Mine becomes:
- once gitpod has started, in the terminal, run
npm install && npm run themeThis will install the dependencies and clone the theme submodule.
From here, you can use the online IDE to edit /content/chapter/filename.md...
If you want to preview your edits, in the terminal, run:
npx hugo server.
That will start the local hugo server.
A dialog box will pop up telling you "A service is listening on port 1313, but is not exposed." -- press the expose button. After that, choose "open browser" to get a new tab with your preview site. As you save edits, this tab should refresh.
When you're happy with your edits, commit, push, and open a pull request to the upstream repo's main branch. Once merged, the preview site (linked above) will be refreshed.
On a Mac:
brew install hugo
- Download from the releases page: https://github.com/gohugoio/hugo/releases/tag/v0.64.1
- Extract and save the executable to
Clone this repo:
From wherever you checkout repos:
git clone firstname.lastname@example.org:aws-samples/eks-workshop.git (or your fork)
Clone the theme submodule:
git submodule init ;
git submodule update
Install Node.js and npm:
You can follow instructions from npm website: https://www.npmjs.com/get-npm
Install node packages:
Run Hugo locally:
npm run server
npm run drafts to see stubbed in draft pages.
npm run build will build your content locally and output to
npm run test will test the built content for bad links
View Hugo locally:
Visit http://localhost:8080/ to see the site.
As you save edits to a page, the site will live-reload to show your changes.
Any commits to main will auto build and deploy in a couple of minutes. You can see the currently deployed hash at the bottom of the menu panel.
Any commits to a branch will auto build and deploy in a couple of minutes to a custom route named with the branch name. You can see the currently deployed hash at the bottom of the menu panel. An example is the "jenkinsworld" branch would be deployed to https://eksworkshop.com/jenkinsworld/
note: shift-reload may be necessary in your browser to reflect the latest changes.