From 616a1d9e13fe6c64d13a3284ace49f2d17b030c6 Mon Sep 17 00:00:00 2001 From: Robert Kaussow Date: Mon, 27 Jan 2025 09:15:44 +0100 Subject: [PATCH] Various docs improvements (#4772) --- docs/blog/2024-12-28-release-v3.0.0/index.md | 2 +- docs/docusaurus.config.ts | 35 +++++++++++++++----- docs/src/css/custom.css | 23 +++++++++---- docs/src/pages/migrations.md | 7 ++-- 4 files changed, 48 insertions(+), 19 deletions(-) diff --git a/docs/blog/2024-12-28-release-v3.0.0/index.md b/docs/blog/2024-12-28-release-v3.0.0/index.md index 2494eb121..0c2077f19 100644 --- a/docs/blog/2024-12-28-release-v3.0.0/index.md +++ b/docs/blog/2024-12-28-release-v3.0.0/index.md @@ -68,7 +68,7 @@ However, secrets are not included in the pipeline metadata and must be passed ma Woodpecker now supports running rootless images by adjusting the entrypoints and directory permissions in the containers in a way that allows non-privileged users to execute tasks. -In addition, all images published by Woodpecker (Server, Agent, CLI) now use a non-privileged user (`woodpecker` with UID and GID 1000) by default. +In addition, all images published by Woodpecker (Server, Agent, CLI) now use a non-privileged user (`woodpecker` with UID and GID `1000`) by default. If you have volumes attached to the containers, you may need to change the ownership of these directories from `root` to `woodpecker` by executing `chown -R 1000:1000 `. :::info The agent image must remain rootful by default to be able to mount the Docker socket when Woodpecker is used with the `docker` backend. diff --git a/docs/docusaurus.config.ts b/docs/docusaurus.config.ts index 74e0c4c86..4d17fbc6a 100644 --- a/docs/docusaurus.config.ts +++ b/docs/docusaurus.config.ts @@ -69,7 +69,7 @@ const config = { }, { to: 'blog', label: 'Blog', position: 'left' }, { - label: 'More Resources', + label: 'More', position: 'left', items: [ { @@ -102,17 +102,18 @@ const config = { }, ], }, + { + label: 'Sponsor Us', + position: 'right', + className: 'header-sponsor-link', + href: 'https://opencollective.com/woodpecker-ci', + }, { href: 'https://github.com/woodpecker-ci/woodpecker', position: 'right', className: 'header-github-link', 'aria-label': 'GitHub repository', }, - { - label: '🧡 Sponsor Us', - position: 'right', - href: 'https://opencollective.com/woodpecker-ci', - }, ], }, footer: { @@ -122,7 +123,7 @@ const config = { title: 'Docs', items: [ { - label: 'Introduction', + label: 'Welcome to Woodpecker', to: '/docs/intro', }, { @@ -130,9 +131,27 @@ const config = { to: '/docs/usage/intro', }, { - label: 'Server setup', + label: 'Administration', to: '/docs/administration/getting-started', }, + { + to: '/migrations', // Always point to newest migration guide + activeBaseRegex: 'migrations', + label: 'Migrations', + }, + { + to: '/awesome', // Always point to newest awesome list + activeBaseRegex: 'awesome', + label: 'Awesome', + }, + { + to: '/api', + label: 'API', + }, + { + to: '/about', + label: 'About', + }, ], }, { diff --git a/docs/src/css/custom.css b/docs/src/css/custom.css index af022a8e1..8e20af882 100644 --- a/docs/src/css/custom.css +++ b/docs/src/css/custom.css @@ -6,13 +6,7 @@ /* You can override the default Infima variables here. */ :root { - --ifm-color-primary: #4caf50; /* #25c2a0 */ - --ifm-color-primary-dark: rgb(33, 175, 144); - --ifm-color-primary-darker: rgb(31, 165, 136); - --ifm-color-primary-darkest: rgb(26, 136, 112); - --ifm-color-primary-light: rgb(70, 203, 174); - --ifm-color-primary-lighter: rgb(102, 212, 189); - --ifm-color-primary-lightest: rgb(146, 224, 208); + --ifm-color-primary: #369943; --ifm-code-font-size: 95%; } @@ -44,3 +38,18 @@ html[data-theme='dark'] .header-github-link:before { background: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='white' d='M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12'/%3E%3C/svg%3E") no-repeat; } + +.header-sponsor-link { + white-space: nowrap; + display: flex; + align-items: center; + gap: 6px; +} + +.header-sponsor-link::before { + content: ''; + width: 24px; + height: 24px; + background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 28'%3E%3Cpath fill='%23369943' d='M26 9.312c0-4.391-2.969-5.313-5.469-5.313-2.328 0-4.953 2.516-5.766 3.484-0.375 0.453-1.156 0.453-1.531 0-0.812-0.969-3.437-3.484-5.766-3.484-2.5 0-5.469 0.922-5.469 5.313 0 2.859 2.891 5.516 2.922 5.547l9.078 8.75 9.063-8.734c0.047-0.047 2.938-2.703 2.938-5.563zM28 9.312c0 3.75-3.437 6.891-3.578 7.031l-9.734 9.375c-0.187 0.187-0.438 0.281-0.688 0.281s-0.5-0.094-0.688-0.281l-9.75-9.406c-0.125-0.109-3.563-3.25-3.563-7 0-4.578 2.797-7.313 7.469-7.313 2.734 0 5.297 2.156 6.531 3.375 1.234-1.219 3.797-3.375 6.531-3.375 4.672 0 7.469 2.734 7.469 7.313z'/%3E%3C/svg%3E") + no-repeat; +} diff --git a/docs/src/pages/migrations.md b/docs/src/pages/migrations.md index 5c9bc9d89..a403e43f7 100644 --- a/docs/src/pages/migrations.md +++ b/docs/src/pages/migrations.md @@ -186,10 +186,11 @@ The Webhook tokens have been changed for enhanced security and therefore existin #### Rootless images -The `server` and `cli` images now use a non-privileged user (`woodpecker`) by default. -If you have volume mounts attached to containers, you might need to update the ownership of these directories from `root` to `woodpecker`. +Woodpecker now supports running rootless images by adjusting the entrypoints and directory permissions in the containers in a way that allows non-privileged users to execute tasks. -:::note +In addition, all images published by Woodpecker (Server, Agent, CLI) now use a non-privileged user (`woodpecker` with UID and GID `1000`) by default. If you have volumes attached to the containers, you may need to change the ownership of these directories from `root` to `woodpecker` by executing `chown -R 1000:1000 `. + +:::info The agent image must remain rootful by default to be able to mount the Docker socket when Woodpecker is used with the `docker` backend. The helm chart will start to use a non-privileged user by utilizing `securityContext`. Running a completely rootless agent with the `docker` backend may be possible by using a rootless docker daemon.