diff --git a/Makefile b/Makefile index 58babc3627..0d9f20306a 100644 --- a/Makefile +++ b/Makefile @@ -23,14 +23,14 @@ module-check: all: build ## Build site with production settings and put deliverables in ./public -build: module-check ## Build site with production settings and put deliverables in ./public - hugo --minify +build: module-check ## Build site with non-production settings and put deliverables in ./public + hugo --minify --environment development build-preview: module-check ## Build site with drafts and future posts enabled - hugo --buildDrafts --buildFuture + hugo --buildDrafts --buildFuture --environment preview deploy-preview: ## Deploy preview site via netlify - hugo --enableGitInfo --buildFuture -b $(DEPLOY_PRIME_URL) + hugo --enableGitInfo --buildFuture --environment preview -b $(DEPLOY_PRIME_URL) functions-build: $(NETLIFY_FUNC) build functions-src @@ -38,13 +38,15 @@ functions-build: check-headers-file: scripts/check-headers-file.sh -production-build: build check-headers-file ## Build the production site and ensure that noindex headers aren't added +production-build: module-check ## Build the production site and ensure that noindex headers aren't added + hugo --minify --environment production + HUGO_ENV=production $(MAKE) check-headers-file -non-production-build: ## Build the non-production site, which adds noindex headers to prevent indexing - hugo --enableGitInfo +non-production-build: module-check ## Build the non-production site, which adds noindex headers to prevent indexing + hugo --enableGitInfo --environment nonprod serve: module-check ## Boot the development server. - hugo server --buildFuture + hugo server --buildFuture --environment development docker-image: @echo -e "$(CCRED)**** The use of docker-image is deprecated. Use container-image instead. ****$(CCEND)" @@ -65,10 +67,10 @@ container-image: --build-arg HUGO_VERSION=$(HUGO_VERSION) container-build: module-check - $(CONTAINER_RUN) --read-only --mount type=tmpfs,destination=/tmp,tmpfs-mode=01777 $(CONTAINER_IMAGE) sh -c "npm ci && hugo --minify" + $(CONTAINER_RUN) --read-only --mount type=tmpfs,destination=/tmp,tmpfs-mode=01777 $(CONTAINER_IMAGE) sh -c "npm ci && hugo --minify --environment development" container-serve: module-check - $(CONTAINER_RUN) --read-only --mount type=tmpfs,destination=/tmp,tmpfs-mode=01777 -p 1313:1313 $(CONTAINER_IMAGE) hugo server --buildFuture --bind 0.0.0.0 --destination /tmp/hugo --cleanDestinationDir + $(CONTAINER_RUN) --read-only --mount type=tmpfs,destination=/tmp,tmpfs-mode=01777 -p 1313:1313 $(CONTAINER_IMAGE) hugo server --buildFuture --environment development --bind 0.0.0.0 --destination /tmp/hugo --cleanDestinationDir test-examples: scripts/test_examples.sh install @@ -83,5 +85,5 @@ docker-internal-linkcheck: $(MAKE) container-internal-linkcheck container-internal-linkcheck: link-checker-image-pull - $(CONTAINER_RUN) $(CONTAINER_IMAGE) hugo --config config.toml,linkcheck-config.toml --buildFuture + $(CONTAINER_RUN) $(CONTAINER_IMAGE) hugo --config config.toml,linkcheck-config.toml --buildFuture --environment test $(CONTAINER_ENGINE) run --mount type=bind,source=$(CURDIR),target=/test --rm wjdp/htmltest htmltest diff --git a/layouts/_default/baseof.html b/layouts/_default/baseof.html index 612bddbb2c..6b384fb294 100644 --- a/layouts/_default/baseof.html +++ b/layouts/_default/baseof.html @@ -1,6 +1,9 @@ <!doctype html> <html lang="{{ .Site.Language.Lang }}" class="{{.Params.class}} no-js"> - <head> +{{- if eq hugo.Environment "preview" -}} + <!-- deploy preview --> +{{- end -}} + <head {{- if hugo.IsProduction -}}class="live-site"{{- end -}}> {{ partial "head.html" . }} </head> <body class="td-{{ .Kind }}{{- if ne .Params.cid "" -}}{{- printf " cid-%s" (lower .Params.cid) -}}{{- end -}}"> diff --git a/layouts/index.headers b/layouts/index.headers index 2402097ae6..aecac14e3d 100644 --- a/layouts/index.headers +++ b/layouts/index.headers @@ -1,4 +1,4 @@ -{{- if eq (getenv "HUGO_ENV") "production" }} +{{- if eq hugo.Environment "production" }} {{- $cssFilesFromConfig := site.Params.pushAssets.css -}} {{- $jsFilesFromConfig := site.Params.pushAssets.js -}} {{- $pages := site.RegularPages -}} diff --git a/layouts/partials/head.html b/layouts/partials/head.html index 0fc1445b65..35fdaa7d80 100644 --- a/layouts/partials/head.html +++ b/layouts/partials/head.html @@ -1,5 +1,11 @@ {{- $isBlogPost := eq .Section "blog" }} {{- $ogType := cond (.IsHome) "website" "article" }} +<!-- per-page robot indexing controls --> +{{- if hugo.IsProduction -}} +<meta name="ROBOTS" content="INDEX, FOLLOW"> +{{- else -}} +<meta name="ROBOTS" content="NOINDEX, NOFOLLOW"> +{{- end -}} <!-- Global site tag (gtag.js) - Google Analytics --> <script async src="https://www.googletagmanager.com/gtag/js?id=UA-36037335-10"></script> <script> @@ -19,11 +25,6 @@ <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> {{ hugo.Generator }} -{{ if eq (getenv "HUGO_ENV") "production" }} -<META NAME="ROBOTS" CONTENT="INDEX, FOLLOW"> -{{ else }} -<META NAME="ROBOTS" CONTENT="NOINDEX, NOFOLLOW"> -{{ end }} {{ range .AlternativeOutputFormats -}} <link rel="{{ .Rel }}" type="{{ .MediaType.Type }}" href="{{ .Permalink | safeURL }}"> {{ end -}} @@ -33,7 +34,7 @@ {{- template "_internal/google_news.html" . -}} {{- template "_internal/schema.html" . -}} {{- template "_internal/twitter_cards.html" . -}} -{{ if eq (getenv "HUGO_ENV") "production" }} +{{- if hugo.IsProduction -}} {{ template "_internal/google_analytics_async.html" . }} {{ end }} {{ partialCached "head-css.html" . "asdf" }} diff --git a/netlify.toml b/netlify.toml index db0604fad3..1abe213a32 100644 --- a/netlify.toml +++ b/netlify.toml @@ -20,10 +20,10 @@ HUGO_ENABLEGITINFO = "true" command = "git submodule update --init --recursive --depth 1 && make deploy-preview" [context.branch-deploy] -command = "git submodule update --init --recursive --depth 1 && make deploy-preview" +command = "git submodule update --init --recursive --depth 1 && make non-production-build" -[context.master] -# This context is triggered by the `master` branch and allows search indexing +[context.main] +# This context is triggered by the `main` branch and allows search indexing # DO NOT REMOVE THIS (contact @kubernetes/sig-docs-leads) publish = "public" command = "git submodule update --init --recursive --depth 1 && make production-build"