Skip to content

Docs/dbdriver removed bareos 23#208

Closed
dark-vex wants to merge 56 commits into
barcus:masterfrom
dark-vex:docs/dbdriver-removed-bareos-23
Closed

Docs/dbdriver removed bareos 23#208
dark-vex wants to merge 56 commits into
barcus:masterfrom
dark-vex:docs/dbdriver-removed-bareos-23

Conversation

@dark-vex
Copy link
Copy Markdown
Contributor

@dark-vex dark-vex commented Jun 7, 2026

In Bareos 23 dbdriver it has been deprecated, in case it's still present it will cause Bareos Director to fail to start with the following error:

In bareos I'm getting Waiting for postgresql...
bareos-db:5432 - accepting connections
...postgresql is alive
Bareoos DB update
Bareoos DB update: Update tables
Bareoos DB update: Grant privileges
GRANT
GRANT
GRANT
GRANT
bareos-dir: CONFIG ERROR at lib/parse_conf_state_machine.cc:161
Config error: Keyword "dbdriver" not permitted in this resource.
Perhaps you left the trailing brace off of the previous resource.
            : line 4, col 11 of file /etc/bareos/bareos-dir.d/catalog/MyCatalog.conf
  dbdriver = "postgresql"

dark-vex and others added 30 commits October 4, 2025 11:26
- Created client/24-alpine with Alpine 3.22 base
- Created storage/24-alpine with Alpine 3.22 base
- Created webui/24-alpine with Alpine 3.22 base
- Created api/24-alpine with Alpine 3.22 base
- All images include appropriate docker-entrypoint.sh scripts
- CI system configured to build for amd64 and arm64 architectures

Resolves #11

Co-authored-by: Daniele De Lorenzi <dark-vex@users.noreply.github.com>
Alpine 3.20 and 3.22 don't include Bareos packages in their default
repositories. This fixes the build failure by adding the Alpine edge
community repository as a package source.

Changes:
- Updated all 22-alpine Dockerfiles (Alpine 3.20) to use edge repo
- Updated all 24-alpine Dockerfiles (Alpine 3.22) to use edge repo
- Affects: client, director-pgsql, storage, and webui images

Fixes the build error:
ERROR: unable to select packages:
  bareos (no such package)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-authored-by: Daniele De Lorenzi <dark-vex@users.noreply.github.com>
Bareos packages are not available in Alpine Linux repositories after
version 3.16. Alpine 3.20 and 3.22 (and even the edge repository) do
not contain Bareos packages.

This commit downgrades all 22-alpine and 24-alpine images to use
Alpine 3.16 as the base image, matching the working 21-alpine
configuration. This ensures Bareos packages can be installed from
Alpine's community repository.

Changes:
- Use Alpine 3.16 instead of 3.20 for all 22-alpine images
- Use Alpine 3.16 instead of 3.22 for all 24-alpine images
- Remove --repository=edge flag as it's not needed with 3.16

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-authored-by: Daniele De Lorenzi <dark-vex@users.noreply.github.com>
dark-vex and others added 26 commits April 16, 2026 22:19
Docker Compose V2 uses hyphens instead of underscores in container names.
The bconsole exec step was referencing the old V1 name (bareos_bareos-dir_1)
instead of the current V2 name (bareos-bareos-dir-1).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
fix(ci): update container name for Docker Compose V2 naming convention
* fix(ci): upgrade mysql from 5.6 to 5.7 in alpine-mysql-v2 compose

mysql:5.6 is EOL and fails to start on modern kernels (6.x).
mysql:5.7 is compatible with Bareos 19 and works on Ubuntu 24.04 runners.

fix(bareos): use versioned release tags for webui config downloads

The webui-admin.conf file was removed from the bareos/bareos 'master'
branch, causing all directors to crash on startup by saving 404 HTML
as a Bareos config file.

Fix per version:
- v16/v17: remove download blocks entirely (files never existed upstream)
- v18: use Release/18.2.12
- v19: use Release/19.2.13
- v20: use Release/20.0.9
- v21: use Release/21.1.11
- v22: use Release/22.1.8
- v24: use Release/24.0.10

* Added Claude.md

Signed-off-by: Daniele De Lorenzi <2905124+dark-vex@users.noreply.github.com>
…19)

* feat: add bareos-packages/ from-source .deb builder for Ubuntu 22-24

download.bareos.org publishes versioned repos only for Bareos 20 and 21;
the current/ repo serves only the latest (25.x) release. This adds a
Docker-based build pipeline that compiles .deb packages from the upstream
bareos/bareos release branches (bareos-22, bareos-23, bareos-24) using
the Debian packaging tree shipped in the source repo.

- bareos-packages/Dockerfile.builder.{jammy,noble}: minimal Ubuntu build
  environments with devscripts/debhelper/cmake/equivs
- bareos-packages/build.sh: clones the target bareos branch, installs
  build-deps via mk-build-deps, runs dpkg-buildpackage with nocheck/nodoc,
  and collects .deb output under /artifacts/<branch>/<codename>/
- bareos-packages/matrix.yml: documents the three supported build tuples
- .github/workflows/build-bareos-packages.yml: CI job (90 min timeout,
  fail-fast disabled) that builds the matrix, uploads artifacts with 30-day
  retention, and publishes tarballs to a GitHub Release on pkg/* tags
- CLAUDE.md: updated version-support table, corrected active version list,
  added upstream availability reference and notes on when to use the builder

fix(build): synthesize debian/changelog before dpkg-buildpackage

Bareos release branches (bareos-22, bareos-23, bareos-24) do not ship
debian/changelog — it is generated at release time by OBS. The debian/rules
file reads the version via dpkg-parsechangelog, so dpkg-buildpackage fails
immediately without it. Synthesize a minimal changelog via dch --create
using a version derived from the branch name (e.g. 22.0.0~localsrc).

* fix(build): add pg_ctl stub, libtirpc-dev, libnsl-dev for v24

Three more missing deps uncovered via local Docker iteration:

1. systemtests/CMakeLists.txt:134 uses find_program(PG_CTL REQUIRED) even
   when BUILD_TESTING=OFF (systemtests dir is always added unless client-only).
   Stub /usr/local/bin/pg_ctl satisfies the REQUIRED check; tests never run
   because DEB_BUILD_OPTIONS=nocheck.

2. libtirpc-dev is not in the static debian/control (it gets added by the
   cmake generate-debian-control target which runs after mk-build-deps).
   Without it /usr/include/tirpc/ is absent and the NDMP source that does
   #include <rpc/rpc.h> fails to compile.

3. libnsl-dev added alongside for the related NIS/NSL symbols used by NDMP.
…kill (#18)

* feat: add Bareos 22-ubuntu images, re-enable Ubuntu CI, add version skill

- Add client/storage/director-pgsql/webui 22-ubuntu Dockerfiles and
  entrypoints, adapting the 24-ubuntu bases to xUbuntu_22.04 (jammy)
  and the bareos.org current/ apt repo
- Remove the 'continue' guard in prepare-bareos-app/entrypoint.sh that
  disabled all Ubuntu image builds in CI
- Add .claude/skills/add-bareos-version/ project skill that delegates
  Dockerfile generation to the ollama-orchestrator subagent, with an
  upstream source mapping table for future version additions

* fix(skill): add blank lines around lists and code block for mdl

Addresses markdownlint MD031/MD032 violations flagged by test-n-lint CI
on .claude/skills/add-bareos-version/SKILL.md.

* fix(ci): restore ubuntu build skip until source packages land

All ubuntu CI paths are currently broken: v20/v21 upstream apt repos
fail, v22/v24 use current/ and install Bareos 25 (version mismatch vs
directory name). Re-enable ubuntu CI in PR #2 once source-built debs
are available.

* fix(ci-api): Fixed a silent failure when running tests on ci-api entrypoint.sh

Signed-off-by: Daniele De Lorenzi <2905124+dark-vex@users.noreply.github.com>

---------

Signed-off-by: Daniele De Lorenzi <2905124+dark-vex@users.noreply.github.com>
Never open PRs against the upstream repo; always target the fork (origin).

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
Signed-off-by: Daniele De Lorenzi <2905124+dark-vex@users.noreply.github.com>
… work in progress WIP/x.x.x) (#23)

* chore(readme): Updated README file

Signed-off-by: Daniele De Lorenzi <2905124+dark-vex@users.noreply.github.com>

* fix(ci): Fix bareos packages build, rely on Releases/x.x.x instead of work in progress WIP/x.x.x)

Signed-off-by: Daniele De Lorenzi <2905124+dark-vex@users.noreply.github.com>

---------

Signed-off-by: Daniele De Lorenzi <2905124+dark-vex@users.noreply.github.com>
Bumps [softprops/action-gh-release](https://github.com/softprops/action-gh-release) from 2 to 3.
- [Release notes](https://github.com/softprops/action-gh-release/releases)
- [Changelog](https://github.com/softprops/action-gh-release/blob/master/CHANGELOG.md)
- [Commits](softprops/action-gh-release@v2...v3)

---
updated-dependencies:
- dependency-name: softprops/action-gh-release
  dependency-version: '3'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
….0 (#25)

Bumps [peter-evans/dockerhub-description](https://github.com/peter-evans/dockerhub-description) from 4.0.0 to 5.0.0.
- [Release notes](https://github.com/peter-evans/dockerhub-description/releases)
- [Commits](peter-evans/dockerhub-description@v4.0.0...v5.0.0)

---
updated-dependencies:
- dependency-name: peter-evans/dockerhub-description
  dependency-version: 5.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [docker/setup-qemu-action](https://github.com/docker/setup-qemu-action) from 3 to 4.
- [Release notes](https://github.com/docker/setup-qemu-action/releases)
- [Commits](docker/setup-qemu-action@v3...v4)

---
updated-dependencies:
- dependency-name: docker/setup-qemu-action
  dependency-version: '4'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Signed-off-by: Daniele De Lorenzi <2905124+dark-vex@users.noreply.github.com>
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 4 to 7.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](actions/upload-artifact@v4...v7)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-version: '7'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [actions/download-artifact](https://github.com/actions/download-artifact) from 4 to 8.
- [Release notes](https://github.com/actions/download-artifact/releases)
- [Commits](actions/download-artifact@v4...v8)

---
updated-dependencies:
- dependency-name: actions/download-artifact
  dependency-version: '8'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* chore(bareos): Added missing releases and test CI/CD

Signed-off-by: Daniele De Lorenzi <2905124+dark-vex@users.noreply.github.com>

* fix(ci): satisfy docker lint for package asset downloads

Signed-off-by: Daniele De Lorenzi <2905124+dark-vex@users.noreply.github.com>

---------

Signed-off-by: Daniele De Lorenzi <2905124+dark-vex@users.noreply.github.com>
* fix(ci/cd): Fix entrypoint.sh for avoid silent failures

Signed-off-by: Daniele De Lorenzi <2905124+dark-vex@users.noreply.github.com>

* fix(ci/cd): Fix entrypoint.sh for avoid silent failures

Signed-off-by: Daniele De Lorenzi <2905124+dark-vex@users.noreply.github.com>

* fix(ci/cd): Fix entrypoint.sh for avoid silent failures

Signed-off-by: Daniele De Lorenzi <2905124+dark-vex@users.noreply.github.com>

* fix(ci/cd): Stop embedding registry URL in build-time image names

The old buildx (v0.5.1) paired with a current buildkit rejects
registry-qualified names in --output type=docker. Build with a plain
local tag (bareos-<app>:<tag>), then docker tag + docker push in the
push step. This removes the invalid reference format error entirely.

* Delete .claude/grounded-memory.json

* updated gitignore

Signed-off-by: Daniele De Lorenzi <2905124+dark-vex@users.noreply.github.com>

---------

Signed-off-by: Daniele De Lorenzi <2905124+dark-vex@users.noreply.github.com>
* fix(ci/cd): Fix entrypoint.sh for avoid silent failures

Signed-off-by: Daniele De Lorenzi <2905124+dark-vex@users.noreply.github.com>

* fix(ci/cd): Fix entrypoint.sh for avoid silent failures

Signed-off-by: Daniele De Lorenzi <2905124+dark-vex@users.noreply.github.com>

* fix(ci/cd): Fix entrypoint.sh for avoid silent failures

Signed-off-by: Daniele De Lorenzi <2905124+dark-vex@users.noreply.github.com>

* fix(ci/cd): Stop embedding registry URL in build-time image names

The old buildx (v0.5.1) paired with a current buildkit rejects
registry-qualified names in --output type=docker. Build with a plain
local tag (bareos-<app>:<tag>), then docker tag + docker push in the
push step. This removes the invalid reference format error entirely.

* Delete .claude/grounded-memory.json

* updated gitignore

Signed-off-by: Daniele De Lorenzi <2905124+dark-vex@users.noreply.github.com>

* fix(ci/cd): Upgrade docker:stable→docker:27 in action Dockerfiles; add push debug output

docker:stable was deprecated ~2020 and pins Docker ~19.03, which may
reject otherwise-valid registry references. Upgrading to docker:27 gets
current reference parsing. Debug echoes expose raw INPUT_REGISTRY and
GITHUB_REPOSITORY so we can confirm values at push time.

---------

Signed-off-by: Daniele De Lorenzi <2905124+dark-vex@users.noreply.github.com>
* fix(ci/cd): Fix entrypoint.sh for avoid silent failures

Signed-off-by: Daniele De Lorenzi <2905124+dark-vex@users.noreply.github.com>

* fix(ci/cd): Fix entrypoint.sh for avoid silent failures

Signed-off-by: Daniele De Lorenzi <2905124+dark-vex@users.noreply.github.com>

* fix(ci/cd): Fix entrypoint.sh for avoid silent failures

Signed-off-by: Daniele De Lorenzi <2905124+dark-vex@users.noreply.github.com>

* fix(ci/cd): Stop embedding registry URL in build-time image names

The old buildx (v0.5.1) paired with a current buildkit rejects
registry-qualified names in --output type=docker. Build with a plain
local tag (bareos-<app>:<tag>), then docker tag + docker push in the
push step. This removes the invalid reference format error entirely.

* Delete .claude/grounded-memory.json

* updated gitignore

Signed-off-by: Daniele De Lorenzi <2905124+dark-vex@users.noreply.github.com>

* fix(ci/cd): Upgrade docker:stable→docker:27 in action Dockerfiles; add push debug output

docker:stable was deprecated ~2020 and pins Docker ~19.03, which may
reject otherwise-valid registry references. Upgrading to docker:27 gets
current reference parsing. Debug echoes expose raw INPUT_REGISTRY and
GITHUB_REPOSITORY so we can confirm values at push time.

* fix(ci/cd): Strip trailing whitespace from registry; add %q debug output

registry%%[[:space:]] removes newlines/tabs that %/ misses.
printf %q will reveal any hidden chars even through GitHub masking.

---------

Signed-off-by: Daniele De Lorenzi <2905124+dark-vex@users.noreply.github.com>
set -x traces every command; printf %q before docker tag exposes exact
reference strings including hidden chars. IMAGE_PREFIX input lets the
user override registry/GITHUB_REPOSITORY if the secret contains a path
component that produces an invalid reference.
Push confirmed working after REGISTRY_URL secret was corrected to
bare hostname. Removing set -x and all DEBUG echo/printf lines.
Never push directly to master — always branch + PR.

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
Bumps [actions/checkout](https://github.com/actions/checkout) from 4 to 6.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](actions/checkout@v4...v6)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Daniele De Lorenzi <2905124+dark-vex@users.noreply.github.com>
…36)

Install from download.bareos.org/current/xUbuntu_24.04/ using the
gpg-keyring apt style. Bump latest_ubuntu to 25 so the floating
ubuntu/latest tags point to the new images.

Signed-off-by: Daniele De Lorenzi <2905124+dark-vex@users.noreply.github.com>
Signed-off-by: Daniele De Lorenzi <2905124+dark-vex@users.noreply.github.com>
@dark-vex dark-vex closed this Jun 7, 2026
@dark-vex
Copy link
Copy Markdown
Contributor Author

dark-vex commented Jun 7, 2026

filled by mistake

@dark-vex dark-vex deleted the docs/dbdriver-removed-bareos-23 branch June 7, 2026 20:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant