Commit Graph

4 Commits

Author SHA1 Message Date
Bruce Ashfield
d876cfc5bf global: overrides syntax conversion
OEcore/bitbake are moving to use the clearer ":" as an overrides
separator.

This is pass one of updating the meta-virt recipes to use that
syntax.

This has only been minimally build/runtime tested, more changes
will be required for missed overrides, or incorrect conversions

Note: A recent bitbake is required:

    commit 75fad23fc06c008a03414a1fc288a8614c6af9ca
    Author: Richard Purdie <richard.purdie@linuxfoundation.org>
    Date:   Sun Jul 18 12:59:15 2021 +0100

        bitbake: data_smart/parse: Allow ':' characters in variable/function names

        It is becomming increasingly clear we need to find a way to show what
        is/is not an override in our syntax. We need to do this in a way which
        is clear to users, readable and in a way we can transition to.

        The most effective way I've found to this is to use the ":" charater
        to directly replace "_" where an override is being specified. This
        includes "append", "prepend" and "remove" which are effectively special
        override directives.

        This patch simply adds the character to the parser so bitbake accepts
        the value but maps it back to "_" internally so there is no behaviour
        change.

        This change is simple enough it could potentially be backported to older
        version of bitbake meaning layers using the new syntax/markup could
        work with older releases. Even if other no other changes are accepted
        at this time and we don't backport, it does set us on a path where at
        some point in future we could
        require a more explict syntax.

        I've tested this patch by converting oe-core/meta-yocto to the new
        syntax for overrides (9000+ changes) and then seeing that builds
        continue to work with this patch.

        (Bitbake rev: 0dbbb4547cb2570d2ce607e9a53459df3c0ac284)

        Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2021-08-02 17:17:53 -04:00
Bruce Ashfield
f964aeb898 cri-tools: update to 1.21 release
We update to the latest 1.21 commits, and we refresh our patch for
context changes.

   eb0faebe Bump google.golang.org/grpc from 1.37.1 to 1.38.0
   1d34ea0c Add global handler for Interrupt signal
   d2c028aa Bump k8s.io/cri-api from 0.21.0 to 0.21.1
   cac74d4f Bump k8s.io/apimachinery from 0.21.0 to 0.21.1
   0e4c365c Bump k8s.io/api from 0.21.0 to 0.21.1
   4b956efa Bump k8s.io/kubectl from 0.21.0 to 0.21.1
   b3bc7d45 Update golangci-lint to v1.40.1 and fix lints
   a72896da Bump google.golang.org/grpc from 1.37.0 to 1.37.1
   09df93a2 Bump github.com/opencontainers/selinux from 1.8.0 to 1.8.1
   8a28583f Clone cri-dockerd from permanent repo
   29c6b21e Bump github.com/onsi/gomega from 1.11.0 to 1.12.0
   50a297dc Bump github.com/onsi/ginkgo from 1.16.1 to 1.16.2
   15eee85f Mention deb/rpm packages hosted on OBS in README
   6ead47bd Trim build paths for binaries

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2021-06-04 08:43:06 -04:00
Bruce Ashfield
4e01d2ded2 cri-tools: update to 1.21
Updating cri-tools. We refresh a patch, and change the recipe
to capture the binary from build/bin versus _output dir.

The following commits are part of this bump:

   e0b90a7f Increase image build timeout
   8f0434e8 Add image-test builds to main cloudbuild script
   b796452d Add windows images to build script
   e1e9f853 Bump github.com/docker/docker
   0cd06f41 Add hostnet-nginx image build to main script
   74ccfeaf Bump k8s.io/api from 0.0.0 to 0.21.0
   c98b734a Bump k8s.io/kubernetes from 0.0.0 to 0.21.4
   109fb62d Bump k8s.io/kubectl from 0.0.0 to 0.21.0
   534d9f03 Bump k8s.io/apimachinery from 0.0.0 to 0.21.0
   8c5599a6 Bump k8s.io/cri-api from 0.0.0 to 0.21.0
   8694106a Bump README versions to v1.21.0
   b953f776 Update dependencies
   ef872c25 Add dependabot config file
   eaf18dae Simplify test image build process for user images
   afb5b62c Move from gcr.io/cri-tools to gcr.io/k8s-staging-cri-tools
   1b32fe8d Fix UID/GID and username values for test images
   f749fc76 Bump gcb-docker-gcloud image to v20210331-c732583
   916fae03 add docker.io/ prefix to image:busybox in docs/examples/
   a0d17c4a Fix CRI-O master installation in GitHub actions
   791ddab1 fix StartedAt and FinishedAt of the container status
   2d5c2872 Fix CRI-O master installation in GitHub actions
   44fd67ce Makefile: avoid rebuilding binaries
   14485a8c support mips64le architecture.
   c8c1ebae Modify hack/release.sh script to include sha256 sum files
   ec31d9a2 Trigger prow job
   3e939cf7 Update CRI-O to v1.20.0

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2021-04-16 10:21:12 -04:00
Bruce Ashfield
2a919ae202 cri: introduce cri-tools
Based on the original recipe from Tim Orling, we introduce a recipe
for critools so we can interact diretly with cri based runtimes.

We do the normal go manipulations to get this cross building,
with the following specific tweak/patch:

   The build system already knows whether or not we want to use CGO,
   so we remove the hardcoded variant so our exported environment
   variable will control the enablement.

   Since our oe-core go infrastructure insists on both -pie and static
   builds (for the most part), and that is not recommended by many
   packages, we end up with errors like:

      1.20.0+gitec9e336fd8c21c4bab89a6aed2c4a138c8cfae75/src/import/_output/crictl \
           -ldflags '-X github.com/kubernetes-sigs/cri-tools/pkg/version.Version=1.20.0' \
           -tags '' \
           github.com/kubernetes-sigs/cri-tools/cmd/crictl
       # github.com/kubernetes-sigs/cri-tools/cmd/crictl
       cannot find package runtime/cgo (using -importcfg)
       /work/cortexa72-poky-linux/cri-tools/1.20.0+gitec9e336fd8c21c4bab89a6aed2c4a138c8cfae75-r0/recipe-sysroot-native/usr/lib/aarch64-poky-linux/go/pkg/tool/linux_amd64/link:
       cannot open file : open : no such file or directory

   In a similar manner to:

   https://www.yoctoproject.org/pipermail/meta-virtualization/2019-March/004084.html

   We introduce '-a -pkgdir dontusecurrentpkgs' to mask/fix the problem,
   and continue to work towards non-static builds.

% root@qemux86-64:~# crictl --version
crictl version 1.20.0-dirty

Signed-off-by: Tim Orling <ticotimo@gmail.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2021-02-10 10:09:25 -05:00