Skip to content

Commit

Permalink
Merge branch 'moby:master' into master
Browse files Browse the repository at this point in the history
  • Loading branch information
Jacob MacElroy authored Apr 12, 2023
2 parents 1eb336b + 333ee91 commit 71a8a40
Show file tree
Hide file tree
Showing 3,371 changed files with 409,096 additions and 115,976 deletions.
The diff you're trying to view is too large. We only load the first 3000 changed files.
8 changes: 5 additions & 3 deletions .github/CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -59,8 +59,6 @@ The following command installs `buildkitd` and `buildctl` to `/usr/local/bin`:
make && sudo make install
```

You can also use `make binaries-all` to prepare `buildkitd.containerd_only` and `buildkitd.oci_only`.

To build containerized `moby/buildkit:local` and `moby/buildkit:local-rootless` images:
```bash
make images
Expand Down Expand Up @@ -99,6 +97,10 @@ DOCKERFILE_RELEASES=labs TESTFLAGS="--run /TestRunGlobalNetwork/worker=oci$/ -v"
Set `TEST_KEEP_CACHE=1` for the test framework to keep external dependant images in a docker volume
if you are repeatedly calling `./hack/test` script. This helps to avoid rate limiting on the remote registry side.

If you are working behind a proxy, you can set some of or all
`HTTP_PROXY=http://ip:port`, `HTTPS_PROXY=http://ip:port`, `NO_PROXY=http://ip:port` for the test framework
to specify the proxy build args.

Updating vendored dependencies:

```bash
Expand Down Expand Up @@ -152,7 +154,7 @@ otherwise cleanup our project.
<td>
<p>
Register for the Docker Community Slack (dockercommunity.slack.com)
<a href="https://join.slack.com/t/dockercommunity/shared_invite/enQtNDY4MDc1Mzc0MzIwLTgxZDBlMmM4ZGEyNDc1N2FkMzlhODJkYmE1YTVkYjM1MDE3ZjAwZjBkOGFlOTJkZjRmZGYzNjYyY2M3ZTUxYzQ" target="_blank">Click here for an invite to docker community slack</a>.
<a href="https://dockr.ly/comm-slack" target="_blank">Click here for an invite to docker community slack</a>.
You'll find us in <code>#buildkit</code> channel, and the <code>#moby-project</code> channel for general discussions.
</p>
</td>
Expand Down
12 changes: 12 additions & 0 deletions .github/SECURITY.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# Reporting security issues

The project maintainers take security seriously. If you discover a security
issue, please bring it to their attention right away!

**Please _DO NOT_ file a public issue**, instead send your report privately to
[security@docker.com](mailto:security@docker.com).

Security reports are greatly appreciated, and we will publicly thank you for it
(if you want to). We also like to send gifts&mdash;if you're into schwag, make
sure to let us know. We currently do not offer a paid security bounty program,
but are not ruling it out in the future.
10 changes: 10 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
version: 2
updates:
- package-ecosystem: "github-actions"
open-pull-requests-limit: 10
directory: "/"
schedule:
interval: "daily"
labels:
- "dependencies"
- "bot"
180 changes: 180 additions & 0 deletions .github/workflows/.test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,180 @@
# reusable workflow
name: .test

on:
workflow_call:
inputs:
cache_scope:
required: true
type: string
pkgs:
required: true
type: string
kinds:
required: true
type: string
tags:
required: false
type: string
codecov_flags:
required: false
type: string
includes:
required: false
type: string
env:
required: false
type: string

env:
GO_VERSION: "1.20"
SETUP_BUILDX_VERSION: "latest"
SETUP_BUILDKIT_IMAGE: "moby/buildkit:latest"
TESTFLAGS: "-v --parallel=6 --timeout=30m"
GOTESTSUM_FORMAT: "standard-verbose"

jobs:
prepare:
runs-on: ubuntu-20.04
outputs:
pkgs: ${{ steps.set.outputs.pkgs }}
kinds: ${{ steps.set.outputs.kinds }}
tags: ${{ steps.set.outputs.tags }}
includes: ${{ steps.set.outputs.includes }}
steps:
-
name: Checkout
uses: actions/checkout@v3
-
name: Expose GitHub Runtime
uses: crazy-max/ghaction-github-runtime@v2
-
name: Set up QEMU
uses: docker/setup-qemu-action@v2
-
name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2
with:
version: ${{ env.SETUP_BUILDX_VERSION }}
driver-opts: image=${{ env.SETUP_BUILDKIT_IMAGE }}
buildkitd-flags: --debug
-
name: Deps
run: |
npm install js-yaml
-
name: Set outputs
id: set
uses: actions/github-script@v6
with:
script: |
const yaml = require('js-yaml');
await core.group(`Set pkgs matrix`, async () => {
const pkgs = `${{ inputs.pkgs }}`.trim().split(/\r?\n/);
core.info(JSON.stringify(pkgs, null, 2));
core.setOutput('pkgs', JSON.stringify(pkgs));
});
await core.group(`Set kinds matrix`, async () => {
const kinds = `${{ inputs.kinds }}`.trim().split(/\r?\n/);
core.info(JSON.stringify(kinds, null, 2));
core.setOutput('kinds', JSON.stringify(kinds));
});
await core.group(`Set tags matrix`, async () => {
const tags = `${{ inputs.tags }}`.trim().split(/\r?\n/);
core.info(JSON.stringify(tags, null, 2));
core.setOutput('tags', JSON.stringify(tags));
});
await core.group(`Set includes`, async () => {
const includes = yaml.load(`${{ inputs.includes }}`.trim());
core.info(JSON.stringify(includes, null, 2));
core.setOutput('includes', JSON.stringify(includes ?? []));
});
-
name: Build
uses: docker/bake-action@v2
with:
targets: integration-tests-base
set: |
*.cache-from=type=gha,scope=${{ inputs.cache_scope }}
*.cache-to=type=gha,scope=${{ inputs.cache_scope }}
run:
runs-on: ubuntu-20.04
needs:
- prepare
strategy:
fail-fast: false
matrix:
pkg: ${{ fromJson(needs.prepare.outputs.pkgs) }}
kind: ${{ fromJson(needs.prepare.outputs.kinds) }}
tags: ${{ fromJson(needs.prepare.outputs.tags) }}
include: ${{ fromJson(needs.prepare.outputs.includes) }}
worker:
- containerd
- containerd-rootless
- containerd-1.6
- containerd-snapshotter-stargz
- oci
- oci-rootless
- oci-snapshotter-stargz
steps:
-
name: Environment variables
run: |
for l in "${{ inputs.env }}"; do
echo "${l?}" >> $GITHUB_ENV
done
-
name: Checkout
uses: actions/checkout@v3
-
name: Expose GitHub Runtime
uses: crazy-max/ghaction-github-runtime@v2
-
name: Set up QEMU
uses: docker/setup-qemu-action@v2
-
name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2
with:
version: ${{ env.SETUP_BUILDX_VERSION }}
driver-opts: image=${{ env.SETUP_BUILDKIT_IMAGE }}
buildkitd-flags: --debug
-
name: Test
continue-on-error: ${{ matrix.tags == 'nydus' }}
run: |
export TEST_REPORT_SUFFIX=-${{ github.job }}-$(echo "${{ matrix.pkg }}-${{ matrix.skip-integration-tests }}-${{ matrix.kind }}-${{ matrix.worker }}-${{ matrix.tags }}" | tr -dc '[:alnum:]-\n\r' | tr '[:upper:]' '[:lower:]')
if [ -n "${{ matrix.tags }}" ]; then
TESTFLAGS="${TESTFLAGS} --tags=${{ matrix.tags }}"
export BUILDKITD_TAGS="${{ matrix.tags }}"
fi
if [ -n "${{ matrix.worker }}" ]; then
export TESTFLAGS="${TESTFLAGS} --run=//worker=${{ matrix.worker }}$"
fi
./hack/test ${{ matrix.kind }}
env:
TEST_COVERAGE: 1
TESTPKGS: ${{ matrix.pkg }}
SKIP_INTEGRATION_TESTS: ${{ matrix.skip-integration-tests }}
CACHE_FROM: type=gha,scope=${{ inputs.cache_scope }}
-
name: Send to Codecov
if: always()
uses: codecov/codecov-action@v3
with:
directory: ./bin/testreports
flags: ${{ matrix.codecov_flags }}
-
name: Generate annotations
if: always()
uses: crazy-max/.github/.github/actions/gotest-annotations@5af0882e0496d2f7e98a53ae4048e3d86682496f
with:
directory: ./bin/testreports
-
name: Upload test reports
if: always()
uses: actions/upload-artifact@v3
with:
name: test-reports
path: ./bin/testreports
Loading

0 comments on commit 71a8a40

Please sign in to comment.