Commit Graph

7 Commits

Author SHA1 Message Date
Martin Jansa
f964138a21 buildah: add seccomp and ipv6 to REQUIRED_DISTRO_FEATURES
* because it rdepends on podman with the same restriction

* BTW: .gitignore has:
  build*/
  which gets triggered for buildah as well:
  meta-virtualization $ git add ./recipes-containers/buildah/buildah_git.bb
  The following paths are ignored by one of your .gitignore files:
  recipes-containers/buildah

  I've adjusted it to /build*/ only.

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2023-04-12 13:10:11 -04:00
Bruce Ashfield
ba2158e3e5 buildah: update to 1.29.x
We drop our backported patch, since it is now part of the upstream
project.

We also drop {LINKSHARED} from the build, as with the updated buildah
and golang version bumps in oe-core, we get the following build error:

  | # github.com/containers/buildah/cmd/buildah
  | type:*crypto/elliptic.nistCurve[*crypto/internal/nistec.P384Point]: unreachable sym in relocation: crypto/elliptic.(*nistCurve[*crypto/internal/nistec.P384Point]).Add
  | type:*crypto/elliptic.nistCurve[*crypto/internal/nistec.P384Point]: unreachable sym in relocation: crypto/elliptic.(*nistCurve[*crypto/internal/nistec.P384Point]).Add

It is unclear what the linked shared flag was providing in our build,
and we are generally ok with statically linked go applications. So we
drop the flag until a compelling reason exists to debug the linking
failure.

Bumping buildah to version v1.29.1-1-g7fa17a842, which comprises the following commits:

    faf0d4fcb [release-1.29] Bump to Buildah v1.29.1
    7d5ff3012 Update to c/image 5.24.1
    94b723cb5 Bump to v1.29.0
    c9cbc6d7d tests: improve build-with-network-test
    5e3f26de2 Bump c/storagev1.45.3, c/imagev5.24.0, c/commonv0.51.0
    b70fb1765 build(deps): bump github.com/onsi/gomega from 1.25.0 to 1.26.0
    fe0256d38 Flake 3710 has been closed. Reenable the test.
    f9ef51cbb [CI:DOCS] Fix two diversity issues in a tutorial
    3ef898e41 build(deps): bump github.com/fsouza/go-dockerclient from 1.9.2 to 1.9.3
    0d87e38b6 vendor in latests containers/(storage, common, image)
    15bdd2aad fix bud-multiple-platform-with-base-as-default-arg flake
    ac7458e70 stage_executor: while mounting stages use freshly built stage
    e1cfcb240 build(deps): bump github.com/fsouza/go-dockerclient from 1.9.0 to 1.9.2
    d1c82c29a build(deps): bump github.com/onsi/gomega from 1.24.2 to 1.25.0
    4dec25346 vendor in latests containers/(storage, common, image, ocicyrpt)
    c0f6c6b7a [Itests: change the runtime-flag test for crun
    186b30168 [CI:DOCS] README: drop sudo
    1950ab687 Fix multi-arch manifest-list build timeouts
    d106e425a Cirrus: Update VM Images
    67ab55bbb bud: Consolidate multiple synthetic LABEL instructions
    9fced965e build, secret: allow realtive mountpoints wrt to work dir
    938c03556 fixed squash documentation
    59da1a7f7 build(deps): bump github.com/containerd/containerd from 1.6.14 to 1.6.15
    4952862a2 Correct minor comment
    820fafc88 Vendor in latest containers/(common, image, storage)
    a75b263f7 system tests: remove unhelpful assertions
    356668389 buildah: add prune command and expose CleanCacheMount API
    a5e177586 vendor: bump c/storage to a747b27
    60be7f250 Add support for --group-add to buildah from
    00d8d94cb build(deps): bump actions/stale from 6 to 7
    e33bb8678 Add documentation for buildah build --pull=missing
    5828918bc build(deps): bump github.com/containerd/containerd from 1.6.12 to 1.6.14
    4aa28f6a7 build(deps): bump github.com/docker/docker
    7a4702ae2 parse: default ignorefile must not point to symlink outside context
    67c2e4de5 buildah: wrap network setup errors
    d9578d32c build, mount: allow realtive mountpoints wrt to work dir
    57a77073a Update to F37 CI VM Images, re-enable prior-fedora
    798a250d4 Update vendor or containers/(image, storage, common)
    ca96c3678 build(deps): bump golang.org/x/crypto from 0.3.0 to 0.4.0
    e0054a03d Update contact information
    e5cc78c43 build(deps): bump golang.org/x/term from 0.2.0 to 0.3.0
    46eea3158 Replace io/ioutil calls with os calls
    0183471b9 [skip-ci] GHA/Cirrus-cron: Fix execution order
    8428bc87b Vendor in containers/common
    e60c4d7e5 build(deps): bump golang.org/x/sys from 0.2.0 to 0.3.0
    ffed85036 remote-cache: support multiple sources and destinations
    a1698cde6 Update c/storage after https://github.com/containers/storage/pull/1436
    025a8df51 util.SortMounts(): make the returned order more stable
    5e792e97b version: Bump to 1.29.0-dev
    498b45770 [CI:BUILD] Cirrus: Migrate OSX task to M1
    94560581d Update vendor of containers/(common, storage, image)
    e6eb05f75 mount=type=cache: seperate cache parent on host for each user
    20dd347b9 Fix installation instructions for Gentoo Linux
    e162302df build(deps): bump github.com/containerd/containerd from 1.6.9 to 1.6.10
    1cfb5eafb GHA: Reuse both cirrus rerun and check workflows
    5bd5a4f9d Vendor in latest containers/(common,image,storage)
    8e4979e81 build(deps): bump github.com/onsi/gomega from 1.24.0 to 1.24.1
    3d755b5eb copier.Put(): clear up os/syscall mode bit confusion
    1a18ab341 build(deps): bump golang.org/x/sys from 0.1.0 to 0.2.0
    646c28290 Use TypeBind consistently to name bind/nullfs mounts
    d4c661a77 Add no-new-privileges flag
    1f372c08a Update vendor of containers/(common, image, storage)
    b2054360a imagebuildah:build with --all-platforms must honor args for base images
    a17238891 codespell code
    217b2d524 Expand args and env when using --all-platforms
    c554e5330 build(deps): bump github.com/onsi/gomega from 1.23.0 to 1.24.0
    ed3707765 GHA: Simplify Cirrus-Cron check slightly
    1091222b2 Stop using ubi8
    cec864147 remove unnecessary (hence misleading) rmi
    ffb00243f chroot: fix mounting of ro bind mounts
    a237085fe executor: honor default ARG value while eval base name
    481b3cc95 userns: add arbitrary steps/stage to --userns=auto test
    dc733f1d2 Don't set allow.mount in the vnet jail on Freebsd
    e867db39b copier: Preserve file flags when copying archives on FreeBSD
    bf4420f25 Remove quiet flag, so that it works in podman-remote
    8b1a490bd test: fix preserve rootfs with --mount for podman-remote
    b24449990 test: fix prune logic for cache-from after adding content summary
    4290ab5af vendor in latest containers/(storage, common, image)
    1d0dd78c3 Fix RUN --mount=type=bind,from=<stage> not preserving rootfs of stage
    7aa34b86f Define and use a safe, reliable test image
    87e379d5b Fix word missing in Container Tools Guide
    57f370d9d Makefile: Use $(MAKE) to start sub-makes in install.tools
    3223610ff imagebuildah: pull cache from remote repo after adding content summary
    f9693d0a5 Makefile: Fix install on FreeBSD
    835668715 Ensure the cache volume locks are unlocked on all paths
    0d7414703 Vendor in latest containers/(common,storage)
    60382209e Simplify the interface of GetCacheMount and getCacheMount
    8f955f801 Fix cache locks with multiple mounts
    bdd62ef87 Remove calls to Lockfile.Locked()
    cfa10d16c Maintain cache mount locks as lock objects instead of paths
    ffb2f27a8 test: cleaning cache must not clean lockfiles
    6838cbc81 run: honor lockfiles for multiple --mount instruction
    f2e0af5c4 mount,cache: lockfiles must not be part of users cache content
    6fa774ddc Update vendor containers/(common,image,storage)
    bdb549478 [CI:BUILD] copr: buildah rpm should depend on containers-common-extra
    eb9f3648b pr-should-include-tests: allow specfile, golangci
    da214d6d4 build(deps): bump dawidd6/action-send-mail from 3.7.0 to 3.7.1
    5baed90cd build(deps): bump github.com/docker/docker
    82431441a build(deps): bump github.com/fsouza/go-dockerclient from 1.8.3 to 1.9.0
    9226bd312 Update vendor containers/(common,image,storage)
    26a29674a build(deps): bump actions/upload-artifact from 2 to 3
    cadd801fc build(deps): bump actions/checkout from 2 to 3
    8ec69a9ad build(deps): bump actions/stale from 1 to 6
    356ab96d7 build(deps): bump dawidd6/action-send-mail from 2.2.2 to 3.7.0
    27032ea0f build(deps): bump tim-actions/get-pr-commits from 1.1.0 to 1.2.0
    5038a0dae sshagent: LockOSThread before setting SocketLabel
    4f272ee49 Update tests for error message changes
    788fddb1d Update c/image after https://github.com/containers/image/pull/1299
    f232da006 Fix ident for dependabot gha block
    acc230dc3 build(deps): bump github.com/containers/ocicrypt from 1.1.5 to 1.1.6
    dc81652ff Fix man pages to match latest cobra settings
    7260a4b0d build(deps): bump github.com/spf13/cobra from 1.5.0 to 1.6.0
    fba8daf13 build(deps): bump github.com/onsi/gomega from 1.20.2 to 1.22.1
    df8f0fa88 test: retrofit 'bud with undefined build arg directory'
    9d43eb95e imagebuildah: warnOnUnsetBuildArgs while processing stages from executor
    1a2af6864 Update contrib/buildahimage/Containerfile
    e1c7a5df1 Cirrus CI add flavor parameter
    b5c86a8e0 Correction - `FLAVOR` not `FLAVOUR`
    f5fc96e79 Changed build argument from `RELEASE` to `FLAVOUR`
    36afa3530 Combine buildahimage Containerfiles
    472c46f98 bud.bats refactoring: $TEST_SCRATCH_DIR, part 2 of 2
    ca65736da bud.bats refactoring: $TEST_SCRATCH_DIR, part 1 of 2
    2adbe2a58 System test cleanup: document, clarify, fix
    bf0a6e073 test: removing unneeded/expensive COPY
    94ea37767 test: warning behaviour for unset/set TARGETOS,TARGETARCH,TARGETPLATFORM
    eae3415b1 Bump to v1.28.1-dev

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2023-02-27 09:17:00 -05:00
Bruce Ashfield
0b9260ade5 buildah: fix build with btrfs-tools 6.1
We'd really prefer to bump the vendor SRCREV and allow the fetcher
to bring in the pending change without needing a patch, but there
are other API changes that trickle through the code.

So we extract just the patch we need, and leave the SRCREV info
in the recipe, to document the source. When the upstream updates
its vendor/ directory, we can drop this (as the patch will no
longer apply)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2023-01-10 13:58:07 -05:00
Bruce Ashfield
a49eaf45a4 buildah: update to 1.28.x
Bumping buildah to version v1.25.0-547-gcfefbb64, which comprises the following commits:

    ea9b705a [release-1.28] Bump to c/storage v1.43.1 for s390x sigsegv fix
    6eb52c6b [release-1.28] Bump c/image to v5.23.1
    5fb010fe version: bump to 1.28.2
    69d3fcd8 Stop using ubi8
    9fa3c167 Define and use a safe, reliable test image
    9136e86e version: bump to v1.28.1
    ff08605b copier.Put(): clear up os/syscall mode bit confusion
    6bc044dc retrofit, test: ubi8 changed architecture string
    79f41e32 Bump to v1.28.0
    1deec7ce No longer modify buildah.spec
    a53f342f Update for https://github.com/klauspost/pgzip/pull/50
    3c5f9886 Update vendor containers/(common,image)
    88615e98 [CI:DOCS] Add quay-description update reminder
    95bb0250 vendor: bump c/common to v0.49.2-0.20220929111928-2d1b45ae2423
    aaba84ff build(deps): bump github.com/opencontainers/selinux
    675a7332 Vendor in latest containers/storage
    28195ac9 Changing shell list operators from `;` to `&&`
    fc458032 Fix buildahimage container.conf permissions regression
    9ae09bf7 Set sysctls from containers.conf
    e67bb090 refactor: stop using Normalize directly from containerd package
    3cd0fa2b config,builder: process variant while populating image spec
    899ecaaf Proof of concept: nightly dependency treadmill
    31dc089c Run codespell on code
    07ab5a5c Check for unset build args after TARGET args
    ea81614a pkg/cli: improve completion test
    bb285e53 vendor in latest containers/(common,storage,image)
    f3a73b70 copier: work around freebsd bug for "mkdir /"
    16a4eee2 vendor: update c/image
    02d4a6b5 test: run in the host cgroup namespace
    5cde04cd vendor: update c/storage
    e3d48600 vendor: update c/common
    94ab98d6 cmd: check for user UID instead of privileges
    4c9fc47f run,build: conflict --isolation=chroot and --network
    de9c3841 Fix broken dns test (from merge collision)
    8d5d7632 Fix stutters
    b4135818 Fix broken command completion
    fc3ae53b buildah bud --network=none should have no network
    3c092e5e build: support --skip-unused-stages for multi-stage builds
    87d4ae88 Prevent use of --dns* options with --net=none
    fd14bfe5 buildah: make --cache-ttl=0s equivalent to --no-cache
    ac30ed23 parse: make processing flags in --mount order agnostic
    deb2d903 Minor test fix for podman-remote
    a30b71db build: honor <Containerfile>.containerignore as ignore file
    46db0211 Update install.md: Debian 11 (Bullseye) is stable
    4e5be719 build(deps): bump github.com/docker/docker
    4407875a Use constants from containers/common for finding seccomp.json
    4808f3b7 Don't call os.Exit(1) from manifest exist
    9f435de8 manifest: add support for buildah manifest exists
    0bdbd1a8 Buildah should ignore /etc/crio/seccomp.json
    9c147ab8 chroot: Fix cross build break
    309f714b chroot: Move isDevNull to run_common.go
    363bf9c5 chroot: Fix setRlimit build on FreeBSD
    dc49c3cb chroot: Move parseRLimits and setRlimits to run_common.go
    b64d8143 chroot: Fix runUsingChrootExecMain on FreeBSD
    4d963eb5 chroot: Move runUsingChrootExecMain to run_common.go
    0a61e4b2 chroot: Factor out Linux-specific unshare options from runUsingChroot
    3b42b515 chroot: Move runUsingChroot to run_common.go
    350c509e chroot: Move RunUsingChroot and runUsingChrootMain to run_common.go
    188dcc36 chroot: Factor out /dev/ptmx pty implementation
    f9814601 chroot: Add FreeBSD support for run with chroot isolation
    b9db9574 build(deps): bump github.com/docker/go-units from 0.4.0 to 0.5.0
    64534a88 Replace k8s.gcr.io/pause in tests with registry.k8s.io/pause
    168a39dd build(deps): bump github.com/onsi/gomega from 1.20.0 to 1.20.1
    514ff3dc Cirrus: use image with fewer downloaded dependencies
    a96eb0b0 build(deps): bump github.com/opencontainers/runc from 1.1.3 to 1.1.4
    9934b173 run: add container gid to additional groups
    f46ef3b2 buildah: support for --retry and --retry-delay for push/pull failures
    811741fe Makefile: always call $(GO) instead of `go`
    010ac5e0 build(deps): bump github.com/fsouza/go-dockerclient from 1.8.2 to 1.8.3
    0c4b19ba test: use `T.TempDir` to create temporary test directory
    90cf4fc0 mount,cache: enable SElinux shared content label option by default
    354f96f6 commit: use race-free RemoveNames instead of SetNames
    491ad027 Drop util/util.Cause()
    9637a244 cmd/buildah: add "manifest create --amend"
    7533aa56 build(deps): bump github.com/fsouza/go-dockerclient from 1.8.1 to 1.8.2
    17e6fe01 docs: specify git protocol is not supported for github hosted repo
    da4647bd Scrub user and group names from layer diffs
    2eb519fb build(deps): bump github.com/containerd/containerd from 1.6.6 to 1.6.8
    3a6919b5 version: bump to 1.28.0-dev

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2023-01-10 13:58:07 -05:00
Bruce Ashfield
2542c4b3b0 buildah: update to 1.27.2
Bumping buildah to version v1.25.0-420-g13622b14, which comprises the following commits:

    9c640b00 tag v1.27.2
    264c825f Fix broken command completion
    be919817 build: support --skip-unused-stages for multi-stage builds
    40cd1053 release: bump to v1.27.1
    4a8bf740 run: add container gid to additional groups
    db8d5921 release: tag v1.27.0

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2022-09-28 16:30:45 -04:00
Bruce Ashfield
13c1312c5b buildah: update to 1.27
Bumping buildah to version v1.25.0-411-gdb8d5921, which comprises the following commits:

    db8d5921 release: tag v1.27.0
    50a4acb0 make,cross: ignore loong64 from target list
    15b0a250 Allow chflags operations inside the container
    fb6da991 Don't try to call runLabelStdioPipes if spec.Linux is not set
    e8c7e3fe build(deps): bump github.com/golangci/golangci-lint in /tests/tools
    b7f51ea3 build: support filtering cache by duration using --cache-ttl
    b218fdf3 build: support building from commit when using git repo as build context
    99488b06 build: clean up git repos correctly when using subdirs
    8bbeed70 integration tests: quote "?" in shell scripts
    5f34c5e2 Fix a copy/paste error
    f96bf7c5 build(deps): bump github.com/golangci/golangci-lint in /tests/tools
    50183aa0 vendor c/common@v0.49.1
    dfba70e9 test: manifest inspect should have OCIv1 annotation
    873a9e1f vendor: bump to c/common@87fab4b701
    81b4edfa Failure to determine a file or directory should print an error
    5e3f7cea build(deps): bump github.com/containernetworking/cni from 1.1.1 to 1.1.2
    ad4976d0 refactor: remove unused CommitOptions from generateBuildOutput
    dbd22863 stage_executor: generate output for cases with no commit
    adbd7ef5 stage_executor, commit: output only if last stage in build
    bb149ea6 Use errors.Is() instead of os.Is{Not,}Exist
    ac5d37c0 Minor test tweak for podman-remote compatibility
    a47dee2c Cirrus: Use the latest imgts container
    239c06cf imagebuildah: complain about the right Dockerfile
    bef61d79 tests: don't try to wrap `nil` errors
    c9407334 cmd/buildah.commitCmd: don't shadow "err"
    36006c9a cmd/buildah.pullCmd: complain about DecryptConfig/EncryptConfig
    0ded0dca Fix a copy/paste error message
    aed3fdc7 Fix a typo in an error message
    6f660bde build,cache: support pulling/pushing cache layers to/from remote sources
    6c96dd95 Update vendor of containers/(common, storage, image)
    ac4b39a2 Rename chroot/run.go to chroot/run_linux.go
    79bc4a38 Don't bother telling codespell to skip files that don't exist
    62954c89 Set user namespace defaults correctly for the library
    c79f7272 imagebuildah: optimize cache hits for COPY and ADD instructions
    6841f92e Cirrus: Update VM images w/ updated bats
    6243a938 build(deps): bump github.com/onsi/gomega from 1.19.0 to 1.20.0
    eb4ec4a9 docs, run: show SELinux label flag for cache and bind mounts
    a51011f4 build(deps): bump github.com/sirupsen/logrus from 1.8.1 to 1.9.0
    05d48980 imagebuildah, build: remove undefined concurrent writes
    d0a675ed bump github.com/opencontainers/runtime-tools
    dc1bc10d Add FreeBSD support for 'buildah info'
    80870d50 Vendor in latest containers/(storage, common, image)
    4387e7e3 Add freebsd cross build targets
    d0ef62ae Make the jail package build on 32bit platforms
    36d95b05 Cirrus: Ensure the build-push VM image is labeled
    e1f3468a GHA: Fix dynamic script filename
    7c0f2253 Vendor in containers/(common, storage, image)
    6fb7bb4b Run codespell
    2c8436a7 Remove import of github.com/pkg/errors
    34026835 Avoid using cgo in pkg/jail
    ad389b19 Rename footypes to fooTypes for naming consistency
    cdac8e1b Move cleanupTempVolumes and cleanupRunMounts to run_common.go
    4b7c61d5 Make the various run mounts work for FreeBSD
    57a73847 Move get{Bind,Tmpfs,Secret,SSH}Mount to run_common.go
    0832ea2f Move runSetupRunMounts to run_common.go
    9c808c76 Move cleanableDestinationListFromMounts to run_common.go
    c21f4bd2 Make setupMounts and runSetupBuiltinVolumes work on FreeBSD
    cf079d01 Move setupMounts and runSetupBuiltinVolumes to run_common.go
    417c6018 Tidy up - runMakeStdioPipe can't be shared with linux
    95a18737 Move runAcceptTerminal to run_common.go
    1ab56715 Move stdio copying utilities to run_common.go
    ba5ff64d Move runUsingRuntime and runCollectOutput to run_common.go
    b290c861 Move fileCloser, waitForSync and contains to run_common.go
    bff1c193 Move checkAndOverrideIsolationOptions to run_common.go
    75ae8040 Move DefaultNamespaceOptions to run_common.go
    acdf4777 Move getNetworkInterface to run_common.go
    8e36f5fc Move configureEnvironment to run_common.go
    f68f1092 Don't crash in configureUIDGID if Process.Capabilities is nil
    7ea97716 Move configureUIDGID to run_common.go
    a405d62c Move runLookupPath to run_common.go
    4d9a035e Move setupTerminal to run_common.go
    42010799 Move etc file generation utilities to run_common.go
    1c0a08e3 Add run support for FreeBSD
    3faa6984 Add a simple FreeBSD jail library
    6bb4efdb Add FreeBSD support to pkg/chrootuser
    76a0c821 Sync call signature for RunUsingChroot with chroot/run.go
    8dca0a65 test: verify feature to resolve basename with args
    f146c718 vendor: bump openshift/imagebuilder to master@4151e43
    d300c614 GHA: Remove required reserved-name use
    35bfc66a buildah: set XDG_RUNTIME_DIR before setting default runroot
    9d7ac758 imagebuildah: honor build output even if build container is not commited
    9445aa12 chroot: honor DefaultErrnoRet
    48c888a6 [CI:DOCS] improve pull-policy documentation
    0e745d15 tests: retrofit test since --file does not supports dir
    ce384684 Switch to golang native error wrapping
    825561b2 BuildDockerfiles: error out if path to containerfile is a directory
    066b5448 define.downloadToDirectory: fail early if bad HTTP response
    fc9255f5 GHA: Allow re-use of Cirrus-Cron fail-mail workflow
    7a22c40e add: fail on bad http response instead of writing to container
    dab6d12e build(deps): bump github.com/stretchr/testify from 1.7.5 to 1.8.0
    263f5adc [CI:DOCS] Update buildahimage comment
    252bf17b lint: inspectable is never nil
    869c705d vendor: c/common to common@7e1563b
    5686018e build: support OCI hooks for ephemeral build containers
    c0be04e6 [CI:BUILD] Install latest buildah instead of compiling
    1fd5d73f Add subid support with BuildRequires and BUILDTAG [NO NEW TESTS NEEDED]
    d6340b6c build(deps): bump github.com/stretchr/testify from 1.7.2 to 1.7.5
    ffce8b36 Make sure cpp is installed in buildah images
    404852be demo: use unshare for rootless invocations
    198b4c36 buildah.spec.rpkg: initial addition
    74f2c9bd build: fix test for subid 4
    d3eeea37 build(deps): bump github.com/spf13/cobra from 1.4.0 to 1.5.0
    20c5c5c6 build, userns: add support for --userns=auto
    ecae0e2f Fix building upstream buildah image
    e54c9efa Remove redundant buildahimages-are-sane validation
    cf6b1bcf Docs: Update multi-arch buildah images readme
    0a1d828d Cirrus: Migrate multiarch build off github actions
    0d3246ff retrofit-tests: we skip unused stages so use stages
    08bc5d91 stage_executor: dont rely on stage while looking for additional-context
    25f9ff84 buildkit, multistage: skip computing unwanted stages
    dc07d9ff More test cleanup
    b23a20ee copier: work around freebsd bug for "mkdir /"
    f577fc4f Replace $BUILDAH_BINARY with buildah() function
    0b7c5002 Fix up buildah images
    be3b9c36 Make util and copier build on FreeBSD
    9042b86b Vendor in latest github.com/sirupsen/logrus
    8bbe7a60 build(deps): bump github.com/opencontainers/runc from 1.1.2 to 1.1.3
    8d9e9d6f Makefile: allow building without .git
    2d4d2824 run_unix: don't return an error from getNetworkInterface
    79bab77a run_unix: return a valid DefaultNamespaceOptions
    39880517 Update vendor of containers/storage
    c06c6dbb chroot: use ActKillThread instead of ActKill
    ed4412b9 use resolvconf package from c/common/libnetwork
    ee3d131d update c/common to latest main
    7cc5f198 copier: add `NoOverwriteNonDirDir` option
    3aea4093 Sort buildoptions and move cli/build functions to internal
    d452494d build(deps): bump github.com/fsouza/go-dockerclient from 1.8.0 to 1.8.1
    9c7ce03f build(deps): bump github.com/docker/docker
    f2dae989 build(deps): bump github.com/stretchr/testify from 1.7.1 to 1.7.2
    2182e0af build(deps): bump github.com/containerd/containerd from 1.6.5 to 1.6.6
    236c0bab Fix TODO: de-spaghettify run mounts
    6225b23d Move options parsing out of build.go and into pkg/cli
    7cf6dbd4 [CI:DOCS] Tutorial 04 - Include Debian/Ubuntu deps
    495add93 build, multiarch: support splitting build logs for --platform
    1ac1f035 build(deps): bump github.com/containerd/containerd from 1.6.4 to 1.6.5
    be9ef3b6 [CI:BUILD] WIP Cleanup Image Dockerfiles
    0bcc7c5e build(deps): bump github.com/fsouza/go-dockerclient from 1.7.11 to 1.8.0
    60b625ce cli remove stutter
    e80fed06 docker-parity: ignore sanity check if baseImage history is null
    c61ecc69 build, commit: allow disabling image history with --omit-history
    4cf93e3e Fix use generic/ambiguous DEBUG name
    73a5ec42 build(deps): bump github.com/containernetworking/cni from 1.1.0 to 1.1.1
    1a79fbed Cirrus: use Ubuntu 22.04 LTS
    0986de40 Fix codespell errors
    00d46292 Remove util.StringInSlice because it is defined in containers/common
    b3fbb598 buildah: add support for renaming a device in rootless setups
    149880a1 squash: never use build cache when computing last step of last stage
    7cc18838 Update vendor of containers/(common, storage, image)
    f7ea2d84 build(deps): bump github.com/golangci/golangci-lint in /tests/tools
    c2adbade buildkit: supports additionalBuildContext in builds via --build-context
    f4ad4faa test cleanup
    73e0ad71 buildah source pull/push: show progress bar
    45bd47b4 run: allow resuing secret twice in different RUN steps
    7dbc5ce8 test helpers: default to being rootless-aware
    c80e6a31 Add --cpp-flag flag to buildah build
    e4d25d53 build(deps): bump github.com/golangci/golangci-lint in /tests/tools
    784a8c4c build: accept branch and subdirectory when context is git repo
    177141d4 build(deps): bump github.com/docker/docker
    82e9c841 Vendor in latest containers/common
    714fbed4 build(deps): bump github.com/opencontainers/runc from 1.1.1 to 1.1.2
    8d57bff9 vendor: update c/storage and c/image
    1c1ba51c build(deps): bump github.com/golangci/golangci-lint in /tests/tools
    5e338aad Fix gentoo install docs
    f45fbf77 build(deps): bump github.com/docker/docker
    cf2bb5a1 copier: move NSS load to new process
    063abf6f Add test for prevention of reusing encrypted layers
    fccc7895 Make `buildah build --label foo` create an empty "foo" label again
    6750810f Bump to v1.27.0-dev
    0a9d6e6e Bump to v1.26.0

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2022-08-25 22:55:48 -04:00
sakib.sajal@windriver.com
13839c7b13 buildah: add recipe for buildah v1.26
buildah is a command line tool, to be installed and run on target,
that can be used to:
   - create a working container, either from scratch or using an image
     as a starting point
   - create an image, either from a working container or via the
     instructions in a Dockerfile
   - images can be built in either the OCI image format or the
     traditional upstream docker image format
   - mount a working container's root filesystem for manipulation
   - unmount a working container's root filesystem
   - use the updated contents of a container's root filesystem as a
     filesystem layer to create a new image
   - delete a working container or an image
   - rename a local container

Testing:
Setup the build directory:
   $ . oe-init-build-env <build_dir>

Add to local.conf:
   IMAGE_INSTALL:append = " buildah kernel-modules"
   KERNEL_FEATURES += "features/overlayfs/overlayfs.cfgi \
                       features/netfilter/netfilter.scc  \
                       features/lxc/lxc-enable.scc"
   IMAGE_ROOTFS_EXTRA_SPACE = "5242880"

Build image:
   $ bitbake core-image-minimal

Run the image:
   $ runqemu nographic kvm qemuparams="-m 4096"

On target:
Pull an image:
   > cnt=$(buildah from fedora)

Or build from Dockerfile
   > buildah bud -t <image_name>:<tag> .

Mount the image:
   > mnt=$(buildah mount ${cnt})

Install packages on the container rootfs:
   > dnf install --installroot $mnt <packages_to_install> -y

Copy local files to the container:
   > buildah copy $cnt <local_file> <dest_on_container>

Save the changes to an image
   > buildah commit --format docker $cnt <name>:<tag>

Run the image using buildah:
   > buildah run $cnt /bin/sh

Or using docker:
   > docker run -it <name>:<tag>

Signed-off-by: Sakib Sajal <sakib.sajal@windriver.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2022-06-20 12:11:17 -04:00