This is how I set up my environment: (I am using gitpod.io for editing)
- fork the repo to your own github account
- prepend
gitpod.io#
to the beginning of your github url. Mine becomes:https://gitpod.io#github.com/brentley/eks-workshop
- once gitpod has started, in the terminal, run
npm install && npm run theme
This 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.
Install Hugo:
brew install hugo
- Download from the releases page: https://github.com/gohugoio/hugo/releases/tag/v0.64.1
- Extract and save the executable to
/usr/local/bin
From wherever you checkout repos:
git clone [email protected]:aws-samples/eks-workshop.git
(or your fork)
cd eks-workshop
git submodule init
;
git submodule update
You can follow instructions from npm website: https://www.npmjs.com/get-npm
npm install
npm run server
or
npm run drafts
to see stubbed in draft pages.
npm run build
will build your content locally and output to ./public/
npm run test
will test the built content for bad links
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.