Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
97 changes: 26 additions & 71 deletions .cirrus.yml
Original file line number Diff line number Diff line change
Expand Up @@ -33,10 +33,10 @@ env:
FEDORA_NAME: "fedora-42"
PRIOR_FEDORA_NAME: "fedora-41"
RAWHIDE_NAME: "rawhide"
DEBIAN_NAME: "debian-13"
DEBIAN_NAME: "debian-14"

# Image identifiers
IMAGE_SUFFIX: "c20250910t092246z-f42f41d13"
IMAGE_SUFFIX: "c20251110t154831z-f42f41d14"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

blocker: This bumps to debian 14 so you must update DEBIAN_NAME above as well

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for catching that! Rebasing with that updated.

FEDORA_CACHE_IMAGE_NAME: "fedora-${IMAGE_SUFFIX}"
PRIOR_FEDORA_CACHE_IMAGE_NAME: "prior-fedora-${IMAGE_SUFFIX}"
RAWHIDE_CACHE_IMAGE_NAME: "rawhide-${IMAGE_SUFFIX}" # Used temporarily for rust-podman-sequoia. After that RPM is available in stable Fedora releases, we can stop testing against Rawhide again.
Expand Down Expand Up @@ -224,6 +224,18 @@ integration_task:
DISTRO_NV: "${DEBIAN_NAME}"
IMAGE_NAME: "${DEBIAN_CACHE_IMAGE_NAME}"
STORAGE_DRIVER: 'vfs'
- env:
DISTRO_NV: "${FEDORA_NAME}"
IMAGE_NAME: "${FEDORA_CACHE_IMAGE_NAME}"
STORAGE_DRIVER: 'vfs'
BUILDAH_RUNTIME: runc
RUNTIME_N: " using runc"
- env:
DISTRO_NV: "${PRIOR_FEDORA_NAME}"
IMAGE_NAME: "${PRIOR_FEDORA_CACHE_IMAGE_NAME}"
STORAGE_DRIVER: 'vfs'
BUILDAH_RUNTIME: runc
RUNTIME_N: " using runc"
# OVERLAY
- env:
DISTRO_NV: "${FEDORA_NAME}"
Expand All @@ -246,6 +258,18 @@ integration_task:
IMAGE_NAME: "${RAWHIDE_CACHE_IMAGE_NAME}"
STORAGE_DRIVER: 'overlay'
TEST_BUILD_TAGS: 'containers_image_sequoia'
- env:
DISTRO_NV: "${FEDORA_NAME}"
IMAGE_NAME: "${FEDORA_CACHE_IMAGE_NAME}"
STORAGE_DRIVER: 'overlay'
BUILDAH_RUNTIME: runc
RUNTIME_N: " using runc"
- env:
DISTRO_NV: "${PRIOR_FEDORA_NAME}"
IMAGE_NAME: "${PRIOR_FEDORA_CACHE_IMAGE_NAME}"
STORAGE_DRIVER: 'overlay'
BUILDAH_RUNTIME: runc
RUNTIME_N: " using runc"

gce_instance: &integration_gce_instance
image_name: "$IMAGE_NAME"
Expand All @@ -270,53 +294,6 @@ integration_task:
package_versions_script: '$GOSRC/$SCRIPT_BASE/logcollector.sh packages'
golang_version_script: '$GOSRC/$SCRIPT_BASE/logcollector.sh golang'

non_blocking_integration_task:
name: "Integration $DISTRO_NV$RUNTIME_N w/ $STORAGE_DRIVER (non-blocking)"
alias: non_blocking_integration
skip: *not_build_docs
depends_on: *smoke_vendor

matrix:
# VFS
- env:
DISTRO_NV: "${FEDORA_NAME}"
IMAGE_NAME: "${FEDORA_CACHE_IMAGE_NAME}"
STORAGE_DRIVER: 'vfs'
BUILDAH_RUNTIME: runc
RUNTIME_N: " using runc"
- env:
DISTRO_NV: "${PRIOR_FEDORA_NAME}"
IMAGE_NAME: "${PRIOR_FEDORA_CACHE_IMAGE_NAME}"
STORAGE_DRIVER: 'vfs'
BUILDAH_RUNTIME: runc
RUNTIME_N: " using runc"
# OVERLAY
- env:
DISTRO_NV: "${FEDORA_NAME}"
IMAGE_NAME: "${FEDORA_CACHE_IMAGE_NAME}"
STORAGE_DRIVER: 'overlay'
BUILDAH_RUNTIME: runc
RUNTIME_N: " using runc"
- env:
DISTRO_NV: "${PRIOR_FEDORA_NAME}"
IMAGE_NAME: "${PRIOR_FEDORA_CACHE_IMAGE_NAME}"
STORAGE_DRIVER: 'overlay'
BUILDAH_RUNTIME: runc
RUNTIME_N: " using runc"

gce_instance:
<<: *integration_gce_instance

# Separate scripts for separate outputs, makes debugging easier.
setup_script: '${SCRIPT_BASE}/setup.sh |& ${_TIMESTAMP}'
build_script: '${SCRIPT_BASE}/build.sh |& ${_TIMESTAMP}'
integration_test_script: '${SCRIPT_BASE}/test.sh integration |& ${_TIMESTAMP}'

binary_artifacts:
path: ./bin/*

always: *standardlogs

integration_rootless_task:
name: "Integration rootless $DISTRO_NV$RUNTIME_N w/ $STORAGE_DRIVER"
alias: integration_rootless
Expand Down Expand Up @@ -345,28 +322,6 @@ integration_rootless_task:
IMAGE_NAME: "${DEBIAN_CACHE_IMAGE_NAME}"
STORAGE_DRIVER: 'overlay'
PRIV_NAME: rootless

gce_instance:
<<: *integration_gce_instance

# Separate scripts for separate outputs, makes debugging easier.
setup_script: '${SCRIPT_BASE}/setup.sh |& ${_TIMESTAMP}'
build_script: '${SCRIPT_BASE}/build.sh |& ${_TIMESTAMP}'
integration_test_script: '${SCRIPT_BASE}/test.sh integration |& ${_TIMESTAMP}'

binary_artifacts:
path: ./bin/*

always:
<<: *standardlogs

non_blocking_integration_rootless_task:
name: "Integration rootless $DISTRO_NV$RUNTIME_N w/ $STORAGE_DRIVER (non-blocking)"
alias: non_blocking_integration_rootless
skip: *not_build_docs
depends_on: *smoke_vendor

matrix:
- env:
DISTRO_NV: "${FEDORA_NAME}"
IMAGE_NAME: "${FEDORA_CACHE_IMAGE_NAME}"
Expand Down
6 changes: 5 additions & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ ifeq ($(BUILDDEBUG), 1)
endif

# Managed by renovate.
export GOLANGCI_LINT_VERSION := 2.1.0
export GOLANGCI_LINT_VERSION := 2.6.1

# make all BUILDDEBUG=1
# Note: Uses the -N -l go compiler options to disable compiler optimizations
Expand Down Expand Up @@ -212,6 +212,10 @@ lint: install.tools
./tests/tools/build/golangci-lint run $(LINTFLAGS)
./tests/tools/build/golangci-lint run --tests=false $(LINTFLAGS)

.PHONY: fmt
fmt: install.tools
./tests/tools/build/golangci-lint fmt $(LINTFLAGS)

# CAUTION: This is not a replacement for RPMs provided by your distro.
# Only intended to build and test the latest unreleased changes.
.PHONY: rpm
Expand Down
2 changes: 1 addition & 1 deletion chroot/run_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ import (
"strings"
"testing"

"github.com/containers/buildah/tests/testreport/types"
types "github.com/containers/buildah/tests/testreport/types"
"github.com/containers/buildah/util"
specs "github.com/opencontainers/runtime-spec/specs-go"
"github.com/opencontainers/runtime-tools/generate"
Expand Down
6 changes: 3 additions & 3 deletions copier/copier.go
Original file line number Diff line number Diff line change
Expand Up @@ -1168,7 +1168,7 @@ func copierHandlerStat(req request, pm *fileutils.PatternMatcher, idMappings *id
hostPair := idtools.IDPair{UID: uid, GID: gid}
uid, gid, err = idMappings.ToContainer(hostPair)
if err != nil {
return errorResponse("copier: stat: mapping host filesystem owners %#v to container filesystem owners: %w", hostPair, err)
return errorResponse("copier: stat: mapping host filesystem owners %#v to container filesystem owners: %v", hostPair, err)
}
}
result.UID, result.GID = int64(uid), int64(gid)
Expand Down Expand Up @@ -2227,7 +2227,7 @@ func copierHandlerMkdir(req request, idMappings *idtools.IDMappings) (*response,
return errorResponse("copier: mkdir: error setting owner of %q to %d:%d: %v", path, dirUID, dirGID, err)
}
if err = chmod(path, dirMode); err != nil {
return errorResponse("copier: mkdir: error setting permissions on %q to 0%o: %v", path, dirMode)
return errorResponse("copier: mkdir: error setting permissions on %q to 0%o: %v", path, dirMode, err)
}
created = append(created, path)
} else {
Expand Down Expand Up @@ -2409,7 +2409,7 @@ func copierHandlerEnsure(req request, idMappings *idtools.IDMappings) *response
return errorResponse("copier: ensure: error setting owner of %q to %d:%d: %v", leaf, uid, gid, err)
}
if err = chmod(filepath.Join(req.Root, leaf), mode); err != nil {
return errorResponse("copier: ensure: error setting permissions on %q to 0%o: %v", leaf, mode)
return errorResponse("copier: ensure: error setting permissions on %q to 0%o: %v", leaf, mode, err)
}
if item.ModTime != nil {
if err := os.Chtimes(filepath.Join(req.Root, leaf), *item.ModTime, *item.ModTime); err != nil {
Expand Down
7 changes: 0 additions & 7 deletions hack/Dockerfile

This file was deleted.

2 changes: 1 addition & 1 deletion internal/mkcw/attest.go
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ import (
"path/filepath"
"strings"

"github.com/containers/buildah/internal/mkcw/types"
types "github.com/containers/buildah/internal/mkcw/types"
"github.com/sirupsen/logrus"
"go.podman.io/storage/pkg/fileutils"
)
Expand Down
2 changes: 1 addition & 1 deletion internal/mkcw/types/attest.go
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package types
package mkcwtypes

// RegistrationRequest is the body of the request which we use for registering
// this confidential workload with the attestation server.
Expand Down
2 changes: 1 addition & 1 deletion internal/mkcw/types/workload.go
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package types
package mkcwtypes

import "github.com/containers/buildah/define"

Expand Down
2 changes: 1 addition & 1 deletion internal/mkcw/workload.go
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ import (
"os"

"github.com/containers/buildah/define"
"github.com/containers/buildah/internal/mkcw/types"
types "github.com/containers/buildah/internal/mkcw/types"
)

type (
Expand Down
2 changes: 1 addition & 1 deletion internal/util/util.go
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package util
package internalutil

import (
"fmt"
Expand Down
2 changes: 1 addition & 1 deletion internal/util/util_test.go
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package util
package internalutil

import (
"testing"
Expand Down
2 changes: 1 addition & 1 deletion pkg/util/resource_unix.go
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
//go:build linux || freebsd || darwin

package util
package util //nolint:revive,nolintlint

import (
"fmt"
Expand Down
2 changes: 1 addition & 1 deletion pkg/util/resource_unix_test.go
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package util
package util //nolint:revive,nolintlint

import (
"syscall"
Expand Down
2 changes: 1 addition & 1 deletion pkg/util/resource_windows.go
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package util
package util //nolint:revive,nolintlint

import (
"fmt"
Expand Down
2 changes: 1 addition & 1 deletion pkg/util/uptime_darwin.go
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package util
package util //nolint:revive,nolintlint

import (
"errors"
Expand Down
2 changes: 1 addition & 1 deletion pkg/util/uptime_freebsd.go
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package util
package util //nolint:revive,nolintlint

import (
"time"
Expand Down
2 changes: 1 addition & 1 deletion pkg/util/uptime_linux.go
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package util
package util //nolint:revive,nolintlint

import (
"bytes"
Expand Down
2 changes: 1 addition & 1 deletion pkg/util/uptime_netbsd.go
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package util
package util //nolint:revive,nolintlint

import (
"time"
Expand Down
2 changes: 1 addition & 1 deletion pkg/util/uptime_windows.go
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package util
package util //nolint:revive,nolintlint

import (
"errors"
Expand Down
2 changes: 1 addition & 1 deletion pkg/util/util.go
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package util
package util //nolint:revive,nolintlint

import (
"fmt"
Expand Down
2 changes: 1 addition & 1 deletion pkg/util/util_test.go
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package util
package util //nolint:revive,nolintlint

import (
"testing"
Expand Down
2 changes: 1 addition & 1 deletion pkg/util/version_unix.go
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
//go:build !windows

package util
package util //nolint:revive,nolintlint

import (
"bytes"
Expand Down
2 changes: 1 addition & 1 deletion pkg/util/version_windows.go
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package util
package util //nolint:revive,nolintlint

import (
"errors"
Expand Down
2 changes: 1 addition & 1 deletion tests/testreport/testreport.go
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ import (
"strings"
"syscall"

"github.com/containers/buildah/tests/testreport/types"
types "github.com/containers/buildah/tests/testreport/types"
"github.com/moby/sys/capability"
"github.com/opencontainers/runtime-spec/specs-go"
"github.com/sirupsen/logrus"
Expand Down
2 changes: 1 addition & 1 deletion tests/testreport/types/types.go
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package types
package testreporttypes

import (
"github.com/opencontainers/runtime-spec/specs-go"
Expand Down
2 changes: 1 addition & 1 deletion util/types.go
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package util
package util //nolint:revive,nolintlint

import (
"github.com/containers/buildah/define"
Expand Down
2 changes: 1 addition & 1 deletion util/util.go
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package util
package util //nolint:revive,nolintlint

import (
"errors"
Expand Down
2 changes: 1 addition & 1 deletion util/util_test.go
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package util
package util //nolint:revive,nolintlint

import (
"os"
Expand Down
2 changes: 1 addition & 1 deletion util/util_unix.go
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
//go:build linux || darwin || freebsd || netbsd

package util
package util //nolint:revive,nolintlint

import (
"os"
Expand Down
2 changes: 1 addition & 1 deletion util/util_unsupported.go
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
//go:build !linux

package util
package util //nolint:revive,nolintlint

// IsCgroup2UnifiedMode returns whether we are running in cgroup 2 cgroup2 mode.
func IsCgroup2UnifiedMode() (bool, error) {
Expand Down
2 changes: 1 addition & 1 deletion util/util_windows.go
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
//go:build !linux && !darwin

package util
package util //nolint:revive,nolintlint

import (
"os"
Expand Down