diff --git a/Dockerfile b/Dockerfile index 3a5667145..3c74b18cb 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,5 @@ -FROM registry.gitlab.com/pages/hugo/hugo_extended:0.105.0 AS builder +ARG HUGO_VERSION=0.105.0 +FROM registry.gitlab.com/pages/hugo/hugo_extended:${HUGO_VERSION} AS builder # this defaults to an empty variable ARG BASE_URL WORKDIR /site @@ -12,7 +13,16 @@ RUN set -x && ( [ -z "${BASE_URL}" ] || [ "${BASE_URL}" == "PROD" ] ) \ && hugo --gc \ || ( [ "${BASE_URL}" == 'TESTS_WEB' ] && hugo --gc --baseURL "/" || exit 1 ) + +FROM python:3.12-slim AS indexer +ARG PAGEFIND_VERSION=1.3.0 +WORKDIR /site +COPY --from=builder /site/public /site/public +RUN pip install --no-cache-dir pagefind[extended]==${PAGEFIND_VERSION} && \ + python3 -m pagefind --site public + + FROM nginx:alpine RUN rm -rf /usr/share/nginx/html/* RUN sed -i 's/#error_page/error_page/' /etc/nginx/conf.d/default.conf -COPY --from=builder /site/public /usr/share/nginx/html +COPY --from=indexer /site/public /usr/share/nginx/html diff --git a/Dockerfile.dev b/Dockerfile.dev index ad5f0fde9..8fb7ce029 100644 --- a/Dockerfile.dev +++ b/Dockerfile.dev @@ -1,4 +1,5 @@ ARG HUGO_VERSION=0.105.0 FROM registry.gitlab.com/pages/hugo/hugo_extended:${HUGO_VERSION} + CMD [ "serve", "-D", "--bind", "0.0.0.0" ] -ENTRYPOINT [ "hugo" ] \ No newline at end of file +ENTRYPOINT [ "hugo" ] diff --git a/config.toml b/config.toml index 23d50a13b..2234fd2a5 100644 --- a/config.toml +++ b/config.toml @@ -179,6 +179,12 @@ paginate = 12 url = "/contact/" weight =110 +[[Menu.Main]] + name = "Search" + identifier = "search" + url = "/search/" + weight =120 + # Footer Menu (left) [[Menu.FooterLeft]] name = "PeerTube" diff --git a/content/search/_index.md b/content/search/_index.md new file mode 100644 index 000000000..8c1e23c8e --- /dev/null +++ b/content/search/_index.md @@ -0,0 +1,6 @@ ++++ +title = "Search" +description = "Search the Jupiter Broadcasting site" +date = "2023-01-15T00:10:01-05:00" +draft = false ++++ diff --git a/test/conftest.py b/test/conftest.py index 795c8f1a5..11de6ee7f 100644 --- a/test/conftest.py +++ b/test/conftest.py @@ -160,6 +160,8 @@ def expect_nav_items() -> List[Dict[str,str]]: {'title': 'Archive', 'href': '/archive/'}, # failing on tests here: https://github.com/JupiterBroadcasting/jupiterbroadcasting.com/runs/8254156209?check_suite_focus=true#step:9:26 {'title': 'Contact', 'href': '/contact/'}, + {'title': 'Search', 'href': '/search/'}, + ] @fixture diff --git a/themes/jb/assets/css/_elements.sass b/themes/jb/assets/css/_elements.sass index c09b558c4..9cce154f0 100644 --- a/themes/jb/assets/css/_elements.sass +++ b/themes/jb/assets/css/_elements.sass @@ -1 +1,2 @@ -@import "elements/tag.sass" \ No newline at end of file +@import "elements/tag.sass" +@import "elements/search.sass" \ No newline at end of file diff --git a/themes/jb/assets/css/elements/search.sass b/themes/jb/assets/css/elements/search.sass new file mode 100644 index 000000000..6f43a1cef --- /dev/null +++ b/themes/jb/assets/css/elements/search.sass @@ -0,0 +1,15 @@ +#search + --pagefind-ui-scale: 1 + --pagefind-ui-primary: $jb-dark + --pagefind-ui-text: $text + --pagefind-ui-background: $jb-grey + // --pagefind-ui-border: #eeeeee + // --pagefind-ui-tag: #eeeeee + // --pagefind-ui-border-width: 2px + // --pagefind-ui-border-radius: 8px + // --pagefind-ui-image-border-radius: 8px + // --pagefind-ui-image-box-ratio: 3 / 2 + // --pagefind-ui-font: sans-serif + + // input + // color: $jb-grey-dark \ No newline at end of file diff --git a/themes/jb/layouts/episode/single.html b/themes/jb/layouts/episode/single.html index 777a66290..14d8e3941 100644 --- a/themes/jb/layouts/episode/single.html +++ b/themes/jb/layouts/episode/single.html @@ -4,7 +4,7 @@ {{ else }} {{ .Scratch.Set "fullTitle" (print .Params.episode ": " .CurrentSection.Title) }} {{ end }} -