Merge branch 'master' into firebase

This commit is contained in:
Ryan Watters 2017-03-15 02:29:07 -05:00 committed by GitHub
commit 10b05a8fde
11 changed files with 65 additions and 66 deletions

View File

@ -9,67 +9,78 @@ categories: [hosting and deployment]
tags: [hosting,firebase]
authors: [Michel Racic]
weight: 20
draft: true
draft: false
toc: true
aliases: []
wip: true
---
## Assumptions
- Have an account with Firebase
- Have completed the Quick Start or have a completed website ready for deployment
1. You have an account with [Firebase][signup]; you can sign up for free using your Google account.
2. You have completed the [Quick Start][] or have a completed Hugo website ready for deployment.
## Initial setup
1. Go to the [Firebase console](https://console.firebase.google.com) and create a new project (unless you already have a project and this is just an additional component to it).
2. Install `firebase-tools` (node.js)
Go to the [Firebase console][console] and create a new project (unless you already have a project). You will need to globally install `firebase-tools` (node.js):
```sh
npm install -g firebase-tools
```
3. Login to firebase (setup on your local machine) using `firebase login` which opens a browser and you can select your account. Use `firebase logout` in case you are already logged in but to the wrong account.
Log in to Firebase (setup on your local machine) using `firebase login`, which opens a browser where you can select your account. Use `firebase logout` in case you are already logged in but to the wrong account.
```sh
firebase login
```
3. In the root of your hugo site initialize the Firebase project with `firebase init`
In the root of your Hugo project, initialize the Firebase project with the `firebase init` command:
```sh
firebase init
```
From here:
4. Choose Hosting in the feature question
5. Choose the project you did just setup
6. Accept the default for database rules file
7. Accept the default for the publish directory which is `public`
8. Choose No in the question if it is a single-page app
1. Choose Hosting in the feature question
2. Choose the project you just set up
3. Accept the default for your database rules file
4. Accept the default for the publish directory, which is `public`
5. Choose "No" in the question if you are deploying a single-page app
## Deploy
Simply execute `firebase deploy` and your site will be up in no time.
To deploy your Hugo site, execute the `firebase deploy` command, and your site will be up in no time:
```sh
hugo && firebase deploy
```
## CI Setup
1. Generate a deploy token using
You can generate a deploy token using
```sh
firebase login:ci
```
2. Setup your CI (e.g. [Wercker](/hosting-and-deployment/deployment-with-wercker))
3. Add the token to a private variable like `$FIREBASE_DEPLOY_TOKEN`
You can also set up your CI (e.g., with [Wercker][]) and add the token to a private variable like `$FIREBASE_DEPLOY_TOKEN`.
{{% note %}}
This is a private secret and it should not appear in a public repository. Make sure you understand you chosen CI and that it's not visible to others.
This is a private secret and it should not appear in a public repository. Make sure you understand your chosen CI and that it's not visible to others.
{{% /note %}}
4. Add a step in your build to do the deployment using the token
You can then add a step in your build to do the deployment using the token:
```sh
firebase deploy --token $FIREBASE_DEPLOY_TOKEN
```
## Reference links
* [Firebase CLI Reference](https://firebase.google.com/docs/cli/#administrative_commands)
* [Firebase CLI Reference](https://firebase.google.com/docs/cli/#administrative_commands)
[console]: https://console.firebase.google.com
[Quick Start]: /getting-started/quick-start/
[signup]: https://console.firebase.google.com/
[Wercker]: /hosting-and-deployment/deployment-with-wercker/

View File

@ -1,11 +1,11 @@
[[feature]]
name = "Blistering Speed"
description = "Jettison expensive runtime dependencies, and let Go's incomparable I/O primitives do the work for you. For the first time, build your sites in micro- and milliseconds."
description = "Jettison expensive runtime dependencies, and let Go's incomparable I/O primitives do the work for you. For the first time, measure build times in micro- and milliseconds."
order = 1
[[feature]]
name = "Markdown Without Limits"
description = "Hugo natively supports GFM, as well as Asciidoc, reStructuredText, and Org-mode through external helpers. Shortcodes keeps your content readable and infinitely extensible."
description = "Hugo natively supports GFM, as well as Asciidoc, reStructuredText, and Org-mode through external helpers. Shortcodes keep your content readable and infinitely extensible."
order = 2
[[feature]]
@ -15,7 +15,7 @@
[[feature]]
name = "Cross-Platform"
description = "Hugo has equally simple installation on OS X, Linux BSD, Windows, Dragonfly BSD, OpenBSD, Plan 9, and anywhere else the Go compiler tool chain can run."
description = "Hugo has equally simple installation on macOS, Linux BSD, Windows, Dragonfly BSD, OpenBSD, Plan 9, and anywhere else the Go compiler tool chain can run."
order = 4
[[feature]]

View File

@ -1,7 +1,7 @@
[[tweet]]
name = "Hans Beck"
twitter_handle = "@EnrichedGamesHB"
quote = "Diving deeper into <a href='https://twitter.com/GoHugoIO' target='_blank'>@GoHugoIO</a>. A lot of docs there, top work! But I've the impressed that <a href='https://twitter.com/hashtag/gohugo' target='_blank'>#gohugo</a> is far easier than its feels from the docs!"
quote = "Diving deeper into <a href='https://twitter.com/GoHugoIO' target='_blank'>@GoHugoIO</a>. A lot of docs there, top work! But I've the impression that <a href='https://twitter.com/hashtag/gohugo' target='_blank'>#gohugo</a> is far easier than its feels from the docs!"
link = "https://twitter.com/EnrichedGamesHB/status/836854762440130560"
date = 2017-03-01T00:00:00Z

View File

@ -1,5 +1,4 @@
<h2>What Makes Hugo Special? <br><span>These are just a few of Hugo's Powerful Features</span></h2>
<h2>What Makes Hugo Special? <br><span>Check Out Just a Few of Hugo's Powerful Features</span></h2>
{{ range sort $.Site.Data.homepagefeatures.feature "order" }}
<div class="home-row-content-feature" id="{{ .name | urlize }}">
<h3>{{.name}}</h3>

View File

@ -1,11 +1,5 @@
<div class="half half-content">
<h2>Focus on your content and design.</h2>
<div>
<h1>Making websites should be fun.</h1>
<hr class="hr">
<p>Forget databases, security updates, and cofee breaks spent staring at your command line while you wait for your static site to build.</p>
<p>Golang's speed combined with markdown's elegant simplicity mean Hugo is the first static site generator fast enough to keep up with your creativity.</p>
</div>
<div class="focus-svgs">
{{ partial "svg-icons/hugo-home.svg" . }}
<!-- {{ partial "svg-icons/content.svg" . }}
{{ partial "svg-icons/design.svg" . }} -->
<p>Forget databases, security updates, and coffee breaks spent staring at your command line while you wait for your static site to build. Hugo's speed fosters creativity. It makes building a website fun again.</p>
</div>

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 65 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 65 KiB

View File

@ -34,6 +34,7 @@
margin-left: -1em;
img {
height: $site-header-height * .7;
max-height: $site-header-height * .7;
margin-right: .25em;
}
.hugo-v {

View File

@ -167,29 +167,24 @@ ul.animated {
.home-row-content-focus {
display: flex;
.half.half-content {
order: 2;
@include MQ(M) {
order: 1;
}
justify-content:space-around;
max-width:$M;
text-align:center;
h1 {
// text-align:center;
}
.focus-svgs {
order: 1;
display: flex;
justify-content: space-around;
margin-left: auto;
margin-right: auto;
@include MQ(M) {
max-width: 48%;
order: 2;
}
hr {
border-top: 1px solid $base-font-color;
height:0px;
}
.svg-wrapper {
margin-left:auto;
margin-right:auto;
max-width:200px;
svg {
max-width: 250px;
max-width: 200px;
}
}
#content-halo {
fill: $hugo-blue!important;
}
}
.home-row-content-features {

File diff suppressed because one or more lines are too long