diff --git a/.circleci/config.yml b/.circleci/config.yml index d77109b..6aa9109 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -1,168 +1,44 @@ version: 2.1 -executors: - build-environment: - docker: - - image: alpine:3.16 +setup: true - deploy-environment: - docker: - - image: node:18.7.0-alpine3.16 - - publish-environment: - docker: - - image: alpine:3.16 - -jobs: - verify-build-environment: - executor: build-environment - - steps: - - run: - name: "Verify apk" - command: "apk --version" - - verify-deploy-environment: - executor: deploy-environment - - steps: - - run: - name: "Verify apk" - command: "apk --version" - - - run: - name: "Verify Node.js" - command: "node -v" - - - run: - name: "Verify npm" - command: "npm -v" - - verify-publish-environment: - executor: publish-environment - - steps: - - run: - name: "Verify apk" - command: "apk --version" - - build: - executor: build-environment - - steps: - - checkout - - - run: - name: "Update Alpine Repositories" - command: "apk update" - - - run: - name: "Install Git" - command: "sh ./scripts/git.sh $BLOG_BUILD_ENV" - - - run: - name: "Update Git Submodules" - command: "sh ./scripts/submodules.sh $BLOG_BUILD_ENV" - - - run: - name: "Install Hugo" - command: "apk add hugo" - - - run: - name: "Building Site" - command: "hugo --gc --minify" - - - when: - condition: - equal: [ main, << pipeline.git.branch >>] - - steps: - - persist_to_workspace: - root: . - - paths: - - ./public - - deploy: - executor: deploy-environment - - steps: - - checkout - - - attach_workspace: - at: . - - - run: - name: "Update Alpine Repositories" - command: "apk update" - - - run: - name: "Update npm" - command: "npm install -g npm" - - - run: - name: "Install Netlify CLI" - command: "npm install -g netlify-cli" - - - run: - name: "Deploy To Netlify" - command: "netlify deploy --site $NETLIFY_SITE_ID --auth $NETLIFY_ACCESS_TOKEN --prod --dir=public" - - publish: - executor: publish-environment - - steps: - - checkout - - - setup_remote_docker: - docker_layer_caching: true - version: 20.10.14 - - - run: - name: "Install Docker CLI" - command: apk add docker-cli - - - run: - name: "Login Into Docker Hub" - command: "docker login --username $DOCKER_USERNAME --password $DOCKER_ACCESS_TOKEN" - - - run: - name: "Build Docker Image" - command: "docker build -f .docker/blog.Dockerfile -t airscript/blog:$CIRCLE_TAG ." - - - run: - name: "Publish To Docker Hub" - command: "docker push airscript/blog:$CIRCLE_TAG" +orbs: + continuation: circleci/continuation@0.3.1 + path-filtering: circleci/path-filtering@0.1.3 workflows: - verify: - jobs: - - verify-build-environment - - verify-deploy-environment - - verify-publish-environment - - build: + setup: jobs: - - build - - deploy: - jobs: - - build - - - deploy: - requires: - - build + - path-filtering/filter: + name: workflows + base-revision: main + resource_class: small + config-path: .circleci/workflows.yml + + mapping: | + data/.* build true + i18n/.* build true + tests/.* tests true + static/.* build true + content/.* build true + layouts/.* build true + resources/.* build true + archetypes/.* build true + config.toml/.* build true + + - continuation/continue: + configuration_path: .circleci/workflows.yml + + parameters: '{ + "build": false, + "tests": false, + "deploy": false, + "verify": false + }' filters: - branches: - only: - - main - publish: - jobs: - - publish: - filters: tags: - only: + only: - /.*/ branches: diff --git a/.circleci/workflows.yml b/.circleci/workflows.yml new file mode 100644 index 0000000..066b3b1 --- /dev/null +++ b/.circleci/workflows.yml @@ -0,0 +1,303 @@ +version: 2.1 + +parameters: + verify: + type: boolean + default: true + + tests: + type: boolean + default: false + + build: + type: boolean + default: false + + deploy: + type: boolean + default: true + + publish: + type: boolean + default: true + +executors: + base: + docker: + - image: alpine:3.16 + +commands: + setup: + steps: + - run: + name: Setup + + command: | + sh scripts/update.sh + sh scripts/install/bash.sh + bash scripts/install/make.sh + + setup-git: + steps: + - install-git + + - run: + name: Setup Git + command: make git-submodules environment=$CI_ENVIRONMENT + + setup-netlify: + steps: + - install-npm + - install-netlify-cli + + install-git: + steps: + - run: + name: "Install Git" + command: make install-git environment=$CI_ENVIRONMENT + + install-npm: + steps: + - run: + name: Install npm + command: make install-npm + + install-hugo: + steps: + - run: + name: Install Hugo + command: make install-hugo + + install-bats: + steps: + - run: + name: Install Bats + command: make install-bats + + install-docker-cli: + steps: + - run: + name: Install Docker CLI + command: make install-docker-cli + + install-netlify-cli: + steps: + - run: + name: Install Netlify CLI + command: make install-netlify-cli + +jobs: + verify: + executor: base + resource_class: small + + steps: + - checkout + - setup + + - run: + name: Verify Base + command: make verify-ci environment=base + + verify-build: + executor: base + resource_class: small + + steps: + - checkout + - setup + - setup-git + - install-hugo + + - run: + name: Verify Build + command: make verify-ci environment=build + + verify-deploy: + executor: base + resource_class: small + + steps: + - checkout + - setup + - setup-netlify + + - run: + name: Verify Deploy + command: make verify-ci environment=deploy + + verify-publish: + executor: base + resource_class: small + + steps: + - checkout + - setup + - install-docker-cli + + - run: + name: Verify Publish + command: make verify-ci environment=publish + + tests: + executor: base + resource_class: small + + steps: + - checkout + - setup + - setup-git + - install-npm + - install-bats + + - run: + name: Run Tests + command: make tests-base + + build: + executor: base + resource_class: medium + + steps: + - checkout + - setup + - setup-git + - install-hugo + + - run: + name: Build Site + command: make build-ci + + - when: + condition: + equal: [ main, << pipeline.git.branch >>] + + steps: + - persist_to_workspace: + root: . + + paths: + - ./public + + deploy: + executor: base + resource_class: small + + steps: + - checkout + - setup + - setup-netlify + + - attach_workspace: + at: . + + - run: + name: Deploy To Netlify + command: > + make deploy-ci + id=$NETLIFY_SITE_ID + token=$NETLIFY_ACCESS_TOKEN + + publish: + executor: base + resource_class: small + + steps: + - checkout + - setup + - install-docker-cli + + - setup_remote_docker: + docker_layer_caching: true + version: 20.10.14 + + - run: + name: Publish To Docker Hub + command: > + make publish-ci + tag=$CIRCLE_TAG + username=$DOCKER_USERNAME + token=$DOCKER_ACCESS_TOKEN + +workflows: + verify: + when: << pipeline.parameters.verify >> + + jobs: + - verify + + tests: + when: << pipeline.parameters.tests >> + + jobs: + - tests + + build: + when: << pipeline.parameters.build >> + + jobs: + - verify-build + + - build: + requires: + - verify-build + + deploy: + when: << pipeline.parameters.deploy >> + + jobs: + - verify-build: + filters: + branches: + only: + - main + + - build: + requires: + - verify-build + + filters: + branches: + only: + - main + + - verify-deploy: + filters: + branches: + only: + - main + + - deploy: + requires: + - build + - verify-deploy + + filters: + branches: + only: + - main + + publish: + when: << pipeline.parameters.publish >> + + jobs: + - verify-publish: + filters: + tags: + only: + - /.*/ + + branches: + ignore: /.*/ + + - publish: + requires: + - verify-publish + + filters: + tags: + only: + - /.*/ + + branches: + ignore: /.*/ diff --git a/.docker/blog.Dockerfile b/.docker/blog.Dockerfile deleted file mode 100644 index 88f2551..0000000 --- a/.docker/blog.Dockerfile +++ /dev/null @@ -1,23 +0,0 @@ -FROM alpine:3.16 - -LABEL maintainer="Airscript " - -ENV BLOG_PORT=25001 -ENV BLOG_INTERFACE=0.0.0.0 - -ARG BLOG_DIR=app -ARG BLOG_BUILD_ENV=docker - -RUN apk update && apk add hugo && mkdir ${BLOG_DIR} - -WORKDIR /${BLOG_DIR} - -COPY . . - -RUN sh ./scripts/git.sh ${BLOG_BUILD_ENV} && sh ./scripts/submodules.sh ${BLOG_BUILD_ENV} - -ENTRYPOINT ["./scripts/docker-entrypoint.sh"] - -CMD ["hugo"] - -EXPOSE ${BLOG_PORT} \ No newline at end of file diff --git a/.docker/dockerfiles/blog.Dockerfile b/.docker/dockerfiles/blog.Dockerfile new file mode 100644 index 0000000..ee07f2a --- /dev/null +++ b/.docker/dockerfiles/blog.Dockerfile @@ -0,0 +1,30 @@ +FROM alpine:3.16 AS builder + ARG BLOG_BUILD_ENVIRONMENT=docker + WORKDIR /home + COPY . . + + RUN \ + sh scripts/update.sh && \ + sh scripts/install/bash.sh && \ + bash scripts/install/make.sh + + RUN \ + make install-git environment=${BLOG_BUILD_ENVIRONMENT} && \ + make git-submodules environment=${BLOG_BUILD_ENVIRONMENT} + +FROM alpine:3.16 AS runner + LABEL maintainer="Airscript " + ENV BLOG_PORT=25001 + ENV BLOG_INTERFACE=0.0.0.0 + WORKDIR /home + COPY --from=builder /home ./ + + RUN \ + sh scripts/update.sh && \ + sh scripts/install/bash.sh && \ + bash scripts/install/make.sh && \ + make install-hugo + + ENTRYPOINT [".docker/scripts/blog.docker-entrypoint.sh"] + CMD ["hugo"] + EXPOSE ${BLOG_PORT} diff --git a/.docker/dockerfiles/ci.Dockerfile b/.docker/dockerfiles/ci.Dockerfile new file mode 100644 index 0000000..a451835 --- /dev/null +++ b/.docker/dockerfiles/ci.Dockerfile @@ -0,0 +1,14 @@ +FROM alpine:3.16 AS runner + LABEL maintainer="Airscript " + WORKDIR /tmp + COPY tmp/ /tmp/ + + RUN \ + sh scripts/update.sh && \ + sh scripts/install/bash.sh && \ + bash scripts/install/make.sh && \ + make install-curl && \ + make install-circleci-cli + + ENTRYPOINT [ ".docker/scripts/ci.docker-entrypoint.sh" ] + CMD ["circleci"] diff --git a/.docker/dockerfiles/tests.Dockerfile b/.docker/dockerfiles/tests.Dockerfile new file mode 100644 index 0000000..291051a --- /dev/null +++ b/.docker/dockerfiles/tests.Dockerfile @@ -0,0 +1,14 @@ +FROM alpine:3.16 AS runner + LABEL maintainer="Airscript " + WORKDIR /tmp + COPY tmp/ /tmp/ + + RUN \ + sh scripts/update.sh && \ + sh scripts/install/bash.sh && \ + bash scripts/install/make.sh && \ + make install-npm && \ + make install-bats + + ENTRYPOINT [".docker/scripts/tests.docker-entrypoint.sh"] + CMD ["bats"] diff --git a/scripts/docker-entrypoint.sh b/.docker/scripts/blog.docker-entrypoint.sh similarity index 75% rename from scripts/docker-entrypoint.sh rename to .docker/scripts/blog.docker-entrypoint.sh index 32c73f6..680e24f 100755 --- a/scripts/docker-entrypoint.sh +++ b/.docker/scripts/blog.docker-entrypoint.sh @@ -1,8 +1,9 @@ -#!/bin/sh +#!/bin/bash set -e if [ "$1" = 'hugo' ]; then hugo server --bind $BLOG_INTERFACE --port $BLOG_PORT -fi -exec "$@" \ No newline at end of file +else + exec "$@" +fi diff --git a/.docker/scripts/ci.docker-entrypoint.sh b/.docker/scripts/ci.docker-entrypoint.sh new file mode 100755 index 0000000..54b4d09 --- /dev/null +++ b/.docker/scripts/ci.docker-entrypoint.sh @@ -0,0 +1,10 @@ +#!/bin/bash +set -e + +if [ "$1" = 'circleci' ]; then + circleci config validate .circleci/config.yml + circleci config validate .circleci/workflows.yml + +else + exec "$@" +fi diff --git a/.docker/scripts/tests.docker-entrypoint.sh b/.docker/scripts/tests.docker-entrypoint.sh new file mode 100755 index 0000000..42af148 --- /dev/null +++ b/.docker/scripts/tests.docker-entrypoint.sh @@ -0,0 +1,9 @@ +#!/bin/bash +set -e + +if [ "$1" = 'bats' ]; then + make tests-base + +else + exec "$@" +fi \ No newline at end of file diff --git a/.gitignore b/.gitignore index d70ebaa..a744df3 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,3 @@ -public \ No newline at end of file +public +tmp +.vscode \ No newline at end of file diff --git a/.gitmodules b/.gitmodules index 89af1b0..998dc03 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,3 +1,15 @@ [submodule "themes/PaperMod"] path = themes/PaperMod url = https://github.com/adityatelange/hugo-PaperMod.git + +[submodule "tests/bats"] + path = tests/bats + url = https://github.com/bats-core/bats-core.git + +[submodule "tests/libraries/bats-support"] + path = tests/libraries/bats-support + url = https://github.com/bats-core/bats-support.git + +[submodule "tests/libraries/bats-assert"] + path = tests/libraries/bats-assert + url = https://github.com/bats-core/bats-assert.git diff --git a/CHANGELOG.md b/CHANGELOG.md index a5811ab..9f5130f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,27 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) with some edits, and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +  + +## 🎉 1.5.0 + +### What's Changed +* feat: implement use of make by @Airscripts in https://github.com/Airscripts/blog.airscript.it/pull/22 +* feat(ci): add automatic tests by @Airscripts in https://github.com/Airscripts/blog.airscript.it/pull/23 +* refactor(ci): reorganize jobs by @Airscripts in https://github.com/Airscripts/blog.airscript.it/pull/25 +* refactor(docker): collapse tests Dockerfiles into single one by @Airscripts in https://github.com/Airscripts/blog.airscript.it/pull/26 +* feat(ci): specify resource classes in CI's jobs by @Airscripts in https://github.com/Airscripts/blog.airscript.it/pull/27 +* feat(ci): add resource_class to setup workflow job by @Airscripts in https://github.com/Airscripts/blog.airscript.it/pull/28 +* refactor(docker): refactor both blog and tests Dockerfiles by @Airscripts in https://github.com/Airscripts/blog.airscript.it/pull/29 +* feat(docker): add ci Dockerfile by @Airscripts in https://github.com/Airscripts/blog.airscript.it/pull/30 +* feat: add JP's quote in home by @spagno in https://github.com/Airscripts/blog.airscript.it/pull/31 + +### New Contributors +* @spagno made their first contribution in https://github.com/Airscripts/blog.airscript.it/pull/31 + +### Full Changelog +https://github.com/Airscripts/blog.airscript.it/compare/1.4.0...1.5.0 +  ## 🎉 1.4.0 diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..8bef55d --- /dev/null +++ b/Makefile @@ -0,0 +1,134 @@ +SHELL = /bin/sh +TESTS_IMAGE_NAME = airscript/tests:base +CI_IMAGE_NAME = airscript/ci:base + +.SUFFIXES: +.SUFFIXES: .sh + +.PHONY: all +all: build run + +.PHONY: clean +clean: + docker compose down + cd ./themes/PaperMod && find . -name "*" -delete + cd ./tests/bats && find . -name "*" -delete + cd ./tests/libraries/bats-assert && find . -name "*" -delete + cd ./tests/libraries/bats-support && find . -name "*" -delete + +.PHONY: build +build: git-submodules + docker compose build + +.PHONY: run +run: + docker compose up -d + +.PHONY: all-tests +all-tests: build-tests run-tests + +.PHONY: clean-tests +clean-tests: + docker rmi $(TESTS_IMAGE_NAME) + +.PHONY: build-tests +build-tests: + mkdir -p tmp && \ + cp -r .git .docker scripts tests Makefile tmp && \ + docker build -f .docker/dockerfiles/tests.Dockerfile -t $(TESTS_IMAGE_NAME) .; \ + rm -rf tmp + +.PHONY: run-tests +run-tests: + docker run --rm -it $(TESTS_IMAGE_NAME) && \ + docker rmi $(TESTS_IMAGE_NAME) + +.PHONY: all-ci-configs +all-ci-configs: build-ci-configs run-ci-configs + +.PHONY: clean-ci-configs +clean-ci-configs: + docker rmi $(CI_IMAGE_NAME) + +.PHONY: build-ci-configs +build-ci-configs: + mkdir -p tmp && \ + cp -r .circleci .docker scripts Makefile tmp && \ + docker build -f .docker/dockerfiles/ci.Dockerfile -t $(CI_IMAGE_NAME) .; \ + rm -rf tmp + +.PHONY: run-ci-configs +run-ci-configs: + docker run --rm -it $(CI_IMAGE_NAME) && \ + docker rmi $(CI_IMAGE_NAME) + +.PHONY: install-bash +install-bash: + sh ./scripts/install/bash.sh + +.PHONY: install-bats +install-bats: + sh ./scripts/install/bats.sh + +.PHONY: install-npm +install-npm: + bash ./scripts/install/npm.sh + +.PHONY: install-curl +install-curl: + bash ./scripts/install/curl.sh + +.PHONY: install-hugo +install-hugo: + bash ./scripts/install/hugo.sh + +.PHONY: install-git +install-git: + bash ./scripts/install/git.sh $(environment) + +.PHONY: install-docker-cli +install-docker-cli: + bash ./scripts/install/docker-cli.sh + +.PHONY: install-circleci-cli +install-circleci-cli: + bash ./scripts/install/circleci-cli.sh + +.PHONY: install-netlify-cli +install-netlify-cli: + bash ./scripts/install/netlify-cli.sh + +.PHONY: verify-ci +verify-ci: + bash ./scripts/ci/verify.sh $(environment) + +.PHONY: build-ci +build-ci: + bash ./scripts/ci/build.sh + +.PHONY: deploy-ci +deploy-ci: + bash ./scripts/ci/deploy.sh $(id) $(token) + +.PHONY: publish-ci +publish-ci: docker-login docker-build docker-push + +.PHONY: git-submodules +git-submodules: + bash ./scripts/shared/git-submodules.sh $(environment) + +.PHONY: docker-login +docker-login: + bash ./scripts/docker/login.sh $(username) $(token) + +.PHONY: docker-build +docker-build: + bash ./scripts/docker/build.sh $(tag) + +.PHONY: docker-push +docker-push: + bash ./scripts/docker/push.sh $(tag) + +.PHONY: tests-base +tests-base: + bash scripts/tests/base.sh diff --git a/README.md b/README.md index c245eb5..35975c7 100644 --- a/README.md +++ b/README.md @@ -5,41 +5,27 @@ This repository contains source code and content of my blog hosted on [blog.airs   ## 📦 Installation -In order to the use correct version of Hugo it is **recommended** to use Docker. +In order to contribute to this project, you need an up and running development environment. +Follow the steps below in order to have one fully functional.   -### ⚙️ Common Steps 1. Clone this repository: ```bash git clone https://github.com/Airscripts/blog.airscript.it.git ``` -2. Update git submodules: - ```bash - sh init.sh - ``` - -### 🐳 Containerized Environment -1. Install Docker and Docker Compose on your machine following these links: +2. Make sure to have these dependencies installed on your machine: +- [Make](https://www.gnu.org/software/make/) +- [Git](https://git-scm.com/book/en/v2/Getting-Started-Installing-Git) - [Docker](https://docs.docker.com/get-docker/) - [Docker Compose](https://docs.docker.com/compose/install/) -2. Run the following commands in the repository's root folder: +3. Run the following command in the repository's root folder: ```bash - docker compose build - docker compose up + make all ``` -3. Everything should be set up and running on port 25001. -  - -### 💻 Local Environment -1. Install Hugo following this [guide](https://gohugo.io/getting-started/installing/). - -2. Run the following command: - ```bash - hugo server - ``` +4. Everything should be set up and running on port 25001.   ## 🤝 Contributing diff --git a/README_DOCKER_HUB.md b/README_DOCKER_HUB.md index b27f01e..d32de28 100644 --- a/README_DOCKER_HUB.md +++ b/README_DOCKER_HUB.md @@ -7,7 +7,7 @@   # Supported Tags -- [`1.4.0`](https://github.com/Airscripts/blog.airscript.it/blob/1.3.0/.docker/blog.Dockerfile) +Latest tag supported only.   # What is blog.airscript.it? diff --git a/VERSION b/VERSION deleted file mode 100644 index e21e727..0000000 --- a/VERSION +++ /dev/null @@ -1 +0,0 @@ -1.4.0 \ No newline at end of file diff --git a/config.toml b/config.toml index 57d591b..9a5f764 100644 --- a/config.toml +++ b/config.toml @@ -7,7 +7,7 @@ pygmentsUseClasses = true enableInlineShortcodes = true defaultContentLanguage = "it" baseURL = "https://blog.airscript.it" -copyright = "airscript.it (1.4.0) | Sharing happiness with code." +copyright = "airscript.it" [languages.it] @@ -23,6 +23,9 @@ Content = """ Ti do il benvenuto su **airscript.it**! Su questo blog troverai articoli relativi ad informatica, motivazione e molto altro! Se vuoi, puoi supportarmi attraverso i link sotto o lasciando una 🌟 al [blog su GitHub](https://github.com/Airscripts/blog.airscript.it). +   + Qui non si bada a spese! + *John Hammond, Jurassic Park.* """ # [[languages.it.menu.main]] @@ -68,7 +71,10 @@ Title = "Oh, hello! 👋🏻" Content = """ I welcome you on **airscript.it**! On this blog you'll find articles related to computer science, motivation and much more! - If you want, you can support me through the link below or leaving a 🌟 at [blog on GitHub](https://github.com/Airscripts/blog.airscript.it). + If you want, you can support me through the link below or leaving a 🌟 at my [blog on GitHub](https://github.com/Airscripts/blog.airscript.it). +   + Spared no expense! + *John Hammond, Jurassic Park.* """ diff --git a/content/english/about.md b/content/english/about.md index d8cad67..f580913 100644 --- a/content/english/about.md +++ b/content/english/about.md @@ -20,6 +20,8 @@ Just to name a few of the thousand things that fascinate me. Oh yes! I cannot miss out an honorable mention to paleonthology and specifically to **dinosaurs**. +*Just between us I hadn't really forgotten them, I wanted them to have the +attention they deserve.* Of all, however, computer science was the one I never lost sight of. The possibility of being able to create tools that could make people's life better through lines of code, got me so excited to make this interest, diff --git a/data/info.toml b/data/info.toml new file mode 100644 index 0000000..f62a290 --- /dev/null +++ b/data/info.toml @@ -0,0 +1,2 @@ +version = "1.5.0" +phrase = "Sharing happiness with code." \ No newline at end of file diff --git a/docker-compose.yml b/docker-compose.yml index bcdd050..632a806 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -4,15 +4,14 @@ services: blog: tty: true restart: always - image: airscript/blog:1.4.0 + image: airscript/blog:compose container_name: airscript-blog ports: - - "25001:25001/udp" - "25001:25001/tcp" volumes: - - .:/app + - .:/home networks: default: @@ -21,7 +20,7 @@ services: build: context: . - dockerfile: ".docker/blog.Dockerfile" + dockerfile: ".docker/dockerfiles/blog.Dockerfile" args: - BLOG_BUILD_ENV: compose \ No newline at end of file + BLOG_BUILD_ENVIRONMENT: compose \ No newline at end of file diff --git a/init.sh b/init.sh deleted file mode 100644 index 2a2da9f..0000000 --- a/init.sh +++ /dev/null @@ -1,2 +0,0 @@ -#!/bin/sh -sh ./scripts/submodules.sh "local" \ No newline at end of file diff --git a/layouts/partials/footer.html b/layouts/partials/footer.html index 82beae8..d539ed5 100644 --- a/layouts/partials/footer.html +++ b/layouts/partials/footer.html @@ -1,7 +1,7 @@ {{- if not (.Param "hideFooter") }}