Skip to content

Conversation

@justaugustus
Copy link
Member

@justaugustus justaugustus commented Oct 12, 2019

  • Remove cdToRootDir
    This function was not actually cd-ing into directories
  • Add --build-dir flag to support builds that require the entire
    repo/workspace to be uploaded to GCB
  • Add a validation method to ensure config directory and cloudbuild.yaml
    exist before submitting build

Signed-off-by: Stephen Augustus saugustus@vmware.com

/assign @Katharine @dims @tpepper
cc: @alexeldeib @kubernetes/release-engineering
/sig release
/area release-eng
/milestone v1.17
/priority important-soon


After wiring k/release up to do image building/pushing via post-submit (#14711, #14735, kubernetes/release#895, kubernetes/release#896), I noticed that we had a few build failures:

https://prow.k8s.io/view/gcs/kubernetes-jenkins/logs/post-release-push-image-k8s-cloud-builder/1182793236758925320:

Created [https://cloudbuild.googleapis.com/v1/projects/k8s-staging-release-test/builds/75d28263-9671-4359-854e-2535a29ad3b0].
Logs are available at [https://console.cloud.google.com/gcr/builds/75d28263-9671-4359-854e-2535a29ad3b0?project=634027639865].
----------------------------- REMOTE BUILD OUTPUT ------------------------------
ERROR: (gcloud.builds.submit) build 75d28263-9671-4359-854e-2535a29ad3b0 completed with status "FAILURE"
starting build "75d28263-9671-4359-854e-2535a29ad3b0"

FETCHSOURCE
Fetching storage object: gs://k8s-staging-release-test-gcb/source/1570834875.37-297cf4b31fb547218dc02ad9004339f8.tgz#1570834875611654
Copying gs://k8s-staging-release-test-gcb/source/1570834875.37-297cf4b31fb547218dc02ad9004339f8.tgz#1570834875611654...
/ [0 files][    0.0 B/166.4 KiB]                                                
/ [1 files][166.4 KiB/166.4 KiB]                                                
Operation completed over 1 objects/166.4 KiB.                                    
BUILD
Already have image (with digest): gcr.io/cloud-builders/docker
unable to prepare context: unable to evaluate symlinks in Dockerfile path: lstat /workspace/Dockerfile: no such file or directory
ERROR
ERROR: build step 0 "gcr.io/cloud-builders/docker" failed: exit status 1
--------------------------------------------------------------------------------

https://prow.k8s.io/view/gcs/kubernetes-jenkins/logs/post-release-push-image-deb-builder/1182793236758925319:

Created [https://cloudbuild.googleapis.com/v1/projects/k8s-staging-release-test/builds/42fb12ed-fff8-4e50-8cc2-21037cbf38e1].
Logs are available at [https://console.cloud.google.com/gcr/builds/42fb12ed-fff8-4e50-8cc2-21037cbf38e1?project=634027639865].
----------------------------- REMOTE BUILD OUTPUT ------------------------------
starting build "42fb12ed-fff8-4e50-8cc2-21037cbf38e1"

FETCHSOURCE
Fetching storage object: gs://k8s-staging-release-test-gcb/source/1570834875.55-c6f9168b8c5c4e239177f86f7161df02.tgz#1570834875702092
Copying gs://k8s-staging-release-test-gcb/source/1570834875.55-c6f9168b8c5c4e239177f86f7161df02.tgz#1570834875702092...
/ [0 files][    0.0 B/166.4 KiB]                                                
/ [1 files][166.4 KiB/166.4 KiB]                                                
Operation completed over 1 objects/166.4 KiB.                                    
BUILD
Starting Step #0
Step #0: Pulling image: golang:1.13
Step #0: 1.13: Pulling from library/golang
Step #0: Digest: sha256:68f8870ee1723cafd45bed29414fbaa151e9bf2bba369c8b4436c08a18907012
Step #0: Status: Downloaded newer image for golang:1.13
Step #0: docker.io/library/golang:1.13
Step #0: build .: cannot find module for path .
Finished Step #0
ERROR
ERROR: build step 0 "golang:1.13" failed: exit status 1
--------------------------------------------------------------------------------

ERROR: (gcloud.builds.submit) build 42fb12ed-fff8-4e50-8cc2-21037cbf38e1 completed with status "FAILURE"

https://prow.k8s.io/view/gcs/kubernetes-jenkins/logs/post-release-push-image-rpm-builder/1182793236758925321:

Created [https://cloudbuild.googleapis.com/v1/projects/k8s-staging-release-test/builds/133ed19d-2e9d-41ae-92f1-0a04766a25e3].
Logs are available at [https://console.cloud.google.com/gcr/builds/133ed19d-2e9d-41ae-92f1-0a04766a25e3?project=634027639865].
----------------------------- REMOTE BUILD OUTPUT ------------------------------
ERROR: (gcloud.builds.submit) build 133ed19d-2e9d-41ae-92f1-0a04766a25e3 completed with status "FAILURE"
starting build "133ed19d-2e9d-41ae-92f1-0a04766a25e3"

FETCHSOURCE
Fetching storage object: gs://k8s-staging-release-test-gcb/source/1570834874.08-db53a5ba6bd64a5d8bbfe614d8634184.tgz#1570834874408813
Copying gs://k8s-staging-release-test-gcb/source/1570834874.08-db53a5ba6bd64a5d8bbfe614d8634184.tgz#1570834874408813...
/ [0 files][    0.0 B/166.4 KiB]                                                
/ [1 files][166.4 KiB/166.4 KiB]                                                
Operation completed over 1 objects/166.4 KiB.                                    
BUILD
Already have image (with digest): gcr.io/cloud-builders/docker
unable to prepare context: unable to evaluate symlinks in Dockerfile path: lstat /workspace/Dockerfile: no such file or directory
ERROR
ERROR: build step 0 "gcr.io/cloud-builders/docker" failed: exit status 1
--------------------------------------------------------------------------------

Basically what's happening is the builder is looking for assets in /workspace and can't find them.
This was happening because the os.Chdir command was in a separate function scope, so it was ultimately not being respected. This was further obfuscated by the fact that the builder in its' current state specifies the cloudbuild.yaml while you're outside of the image directory.

I tried testing this locally with commands close to what would be running in CI and all seems to be working...

Build the image builder from the root of k/test-infra:

CGO_ENABLED=0 \
GOOS=linux \
GOARCH=amd64 \
GO111MODULE=on \
GOPROXY=https://proxy.golang.org \
GOSUMDB=sum.golang.org \
go build -o=./images/builder/builder ./images/builder

Submitting an image push from the root of k/release:

time /home/augustus/go/src/k8s.io/test-infra/images/builder/builder --project=kubernetes-release-test --scratch-bucket=gs://kubernetes-release-test-gcb --env-passthrough=PULL_BASE_REF build/debs/
2019/10/12 01:36:51 working directory: /home/augustus/go/src/k8s.io/release/build/debs
2019/10/12 01:36:51 Creating source tarball at /tmp/221087232...
2019/10/12 01:36:54 Uploading /tmp/221087232 to gs://kubernetes-release-test-gcb/source/9464065b-2e94-4ebd-84e7-591dff4d38ef.tgz...
Copying file:///tmp/221087232 [Content-Type=application/octet-stream]...
- [1 files][ 57.4 MiB/ 57.4 MiB]    1.2 MiB/s                                   
Operation completed over 1 objects/57.4 MiB.                                     
2019/10/12 01:37:37 Running build jobs...
2019/10/12 01:37:37 No variants.yaml, starting single build job...
Created [https://cloudbuild.googleapis.com/v1/projects/kubernetes-release-test/builds/47e371f8-d6d9-4370-8a56-567236fe103a].
Logs are available at [https://console.cloud.google.com/gcr/builds/47e371f8-d6d9-4370-8a56-567236fe103a?project=648026197307].
------------------------------------------------------------------------------------------------------ REMOTE BUILD OUTPUT -------------------------------------------------------------------------------------------------------
starting build "47e371f8-d6d9-4370-8a56-567236fe103a"

FETCHSOURCE
Fetching storage object: gs://kubernetes-release-test-gcb/source/1570858658.2-904011a4abf44c4eb7cfc1663efaa590.tgz#1570858658617748
Copying gs://kubernetes-release-test-gcb/source/1570858658.2-904011a4abf44c4eb7cfc1663efaa590.tgz#1570858658617748...
\ [1 files][ 57.4 MiB/ 57.4 MiB]                                                
Operation completed over 1 objects/57.4 MiB.                                     
BUILD

<snip>

DONE
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

ID                                    CREATE_TIME                DURATION  SOURCE                                                                                     IMAGES                                                                              STATUS
47e371f8-d6d9-4370-8a56-567236fe103a  2019-10-12T05:37:38+00:00  2M16S     gs://kubernetes-release-test-gcb/source/1570858658.2-904011a4abf44c4eb7cfc1663efaa590.tgz  gcr.io/kubernetes-release-test/deb-builder:v20191012-v0.1.3-124-ga49231d (+2 more)  SUCCESS
2019/10/12 01:39:56 Finished.

real	3m5.147s
user	0m6.419s
sys	0m1.151s

@k8s-ci-robot k8s-ci-robot added sig/release Categorizes an issue or PR as relevant to SIG Release. area/release-eng Issues or PRs related to the Release Engineering subproject labels Oct 12, 2019
@k8s-ci-robot k8s-ci-robot added this to the v1.17 milestone Oct 12, 2019
@k8s-ci-robot k8s-ci-robot added priority/important-soon Must be staffed and worked on either currently, or very soon, ideally in time for the next release. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. size/M Denotes a PR that changes 30-99 lines, ignoring generated files. labels Oct 12, 2019
@k8s-ci-robot k8s-ci-robot added area/images sig/testing Categorizes an issue or PR as relevant to SIG Testing. labels Oct 12, 2019
Copy link
Member

@feiskyer feiskyer left a comment

Choose a reason for hiding this comment

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

/lgtm

@k8s-ci-robot k8s-ci-robot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Oct 12, 2019
@Katharine
Copy link
Member

/hold

This will break a number of existing jobs — I think all the test-infra uploads, which both rely on the cdToRootDir behaviour as well as in some cases the fact that we do actually upload the entire repo and not just the path that was given (because of go.mod files, mostly).

I'm not sure it's better to change this behaviour, given doing so potentially creates the need for submodules or substantial refactoring in monorepos (as you already experienced, as a result of my faulty recollection of how this code actually works — sorry about that).

@k8s-ci-robot k8s-ci-robot added the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Oct 14, 2019
@k8s-ci-robot k8s-ci-robot added area/config Issues or PRs related to code in /config size/L Denotes a PR that changes 100-499 lines, ignoring generated files. and removed lgtm "Looks good to me", indicates that a PR is ready to be merged. size/M Denotes a PR that changes 30-99 lines, ignoring generated files. labels Oct 15, 2019
@justaugustus
Copy link
Member Author

@Katharine -- thanks for the chat earlier today to decide on approach!

I've tweaked the builder so it now supports:

  • builds where all assets are in the image directory
  • builds where all assets are in the root of the workspace, including cloudbuild.yaml
  • builds where some assets (like go.mod, go.sum) are in the root of the workspace, but cloudbuild.yaml is in a subdirectory (a la the jobs in test-infra-trusted.yaml)

I've tested this on a few of the k/release jobs as well as the builder image itself, and I've also updated each of the jobs in test-infra-trusted.yaml to use --build-at-root, so this should be good to merge now. :)

@dims dims removed their assignment Oct 16, 2019
Copy link
Member

@Katharine Katharine left a comment

Choose a reason for hiding this comment

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

This still breaks the existing jobs - if nothing else, the bazel handling must happen before anything else. I'm also not sure that variants.yaml is being correctly colocated with cloudbuild.yaml, since you have changed the handling of cloudbuild.yaml but not touched variants.yaml.

I would prefer it if it looked like this (and see inline comments for more context - this review is somewhat poorly structured, sorry!):

(I will use "config dir" to refer to what is provided as the positional argument)

  1. If BAZEL_WORKSPACE_DIRECTORY is set, chdir there and use that as the cwd
  2. If a --build-dir is provided, use that (relative to cwd) as the directory we should upload to GCB. Otherwise set the build dir to the config dir
  3. Look for cloudbuild.yaml and variants.yaml in the config dir (resolved relative to cwd).
  4. chdir to the build dir (which may be the config dir)
  5. perform the existing logic - maybe upload something to GCS, then invoke gcloud

Let me know what you think?

}
}
} else {
o.cloudbuildPath = "cloudbuild.yaml"
Copy link
Member

Choose a reason for hiding this comment

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

I'm not sure that this cloudbuildPath option is what we want. There are essentially two concepts we have:

  • Where are our config files located?
  • What are we sending to GCB?

Notably, there are two config files - cloudbuild.yaml and variants.yaml - which should be together, but not necessarily in the root. I think that this should be the path to that directory, and the paths to the relevant files can be assembled by appending to it later.

The other concept - what we send to GCB - either matches the config dir (by default), or is "the root", which we are really interpreting as "the current working directory" (which is a slightly awkward concept).

I still wonder whether it would make sense to instead of having --build-at-root, instead have --upload-dir, which would be equivalent to the current build-at-root with --upload-dir=. Then you would invoke the builder as image-builder --upload-dir=. ./images/builder/ or something. I think in this case, both upload-dir and the position argument should be relative to the current working directory, rather than eachother (since there is not actually any requirement that the config be part of the build).

@k8s-ci-robot k8s-ci-robot added size/M Denotes a PR that changes 30-99 lines, ignoring generated files. and removed size/L Denotes a PR that changes 100-499 lines, ignoring generated files. labels Oct 19, 2019
@justaugustus justaugustus force-pushed the img-build branch 2 times, most recently from d4c230e to af5bf7d Compare October 19, 2019 10:49
@justaugustus justaugustus changed the title images/builder: Allow image building/pushing from arbitrary image dirs images/builder: Allow GCB builds from arbitrary build directories Oct 19, 2019
@justaugustus
Copy link
Member Author

@Katharine -- I updated the builder based on your suggestions and tested it on a few k/release jobs, including one with a variants.yaml (in kubernetes/release#900), as well as the builder itself.

I've also re-updated the test-infra-trusted jobs to use the --build-dir flag.

@k8s-ci-robot k8s-ci-robot added size/L Denotes a PR that changes 100-499 lines, ignoring generated files. and removed size/M Denotes a PR that changes 30-99 lines, ignoring generated files. labels Oct 19, 2019
- Remove cdToRootDir
    This function was not actually cd-ing into directories
- Add --build-dir flag to support builds that require the entire
   repo/workspace to be uploaded to GCB
- Add a validation method to ensure config directory and cloudbuild.yaml
   exist before submitting build

Signed-off-by: Stephen Augustus <saugustus@vmware.com>
Signed-off-by: Stephen Augustus <saugustus@vmware.com>
Signed-off-by: Stephen Augustus <saugustus@vmware.com>
Signed-off-by: Stephen Augustus <saugustus@vmware.com>
Signed-off-by: Stephen Augustus <saugustus@vmware.com>

func getVariants(o options) (variants, error) {
content, err := ioutil.ReadFile(path.Join(o.imageDirectory, "variants.yaml"))
content, err := ioutil.ReadFile("variants.yaml")
Copy link
Member

Choose a reason for hiding this comment

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

Is this right? We should be looking for this in the config dir, but at this point we will be in the build dir.

As we're about to cd into the build directory, we need a consistent way
to reference the config files when the config directory is not the same
as the build directory.

Signed-off-by: Stephen Augustus <saugustus@vmware.com>
Copy link
Member

@Katharine Katharine left a comment

Choose a reason for hiding this comment

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

Looks good, I think. One question where I'm not sure where you did something, but I don't think it matters.

}
o.imageDirectory = flag.Arg(0)

o.configDir = strings.TrimSuffix(flag.Arg(0), "/")
Copy link
Member

Choose a reason for hiding this comment

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

Why is this change necessary?

Copy link
Member Author

Choose a reason for hiding this comment

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

@Katharine -- I don't think it's strictly necessary, but it's defensive against any weirdness with path joins, double /s, etc.

Copy link
Member

Choose a reason for hiding this comment

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

filepath.Clean takes care of that and more: https://golang.org/pkg/path/filepath/#Clean

@k8s-ci-robot k8s-ci-robot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Oct 21, 2019
@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: justaugustus, Katharine

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@k8s-ci-robot k8s-ci-robot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Oct 21, 2019
@justaugustus
Copy link
Member Author

justaugustus commented Oct 21, 2019

Thanks @Katharine!
/hold cancel

@k8s-ci-robot k8s-ci-robot removed the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Oct 21, 2019
@k8s-ci-robot k8s-ci-robot merged commit efc3bd0 into kubernetes:master Oct 21, 2019
@k8s-ci-robot
Copy link
Contributor

@justaugustus: Updated the job-config configmap in namespace default using the following files:

  • key test-infra-trusted.yaml using file config/jobs/kubernetes/test-infra/test-infra-trusted.yaml

In response to this:

  • Remove cdToRootDir
    This function was not actually cd-ing into directories
  • Add --build-dir flag to support builds that require the entire
    repo/workspace to be uploaded to GCB
  • Add a validation method to ensure config directory and cloudbuild.yaml
    exist before submitting build

Signed-off-by: Stephen Augustus saugustus@vmware.com

/assign @Katharine @dims @tpepper
cc: @alexeldeib @kubernetes/release-engineering
/sig release
/area release-eng
/milestone v1.17
/priority important-soon


After wiring k/release up to do image building/pushing via post-submit (#14711, #14735, kubernetes/release#895, kubernetes/release#896), I noticed that we had a few build failures:

https://prow.k8s.io/view/gcs/kubernetes-jenkins/logs/post-release-push-image-k8s-cloud-builder/1182793236758925320:

Created [https://cloudbuild.googleapis.com/v1/projects/k8s-staging-release-test/builds/75d28263-9671-4359-854e-2535a29ad3b0].
Logs are available at [https://console.cloud.google.com/gcr/builds/75d28263-9671-4359-854e-2535a29ad3b0?project=634027639865].
----------------------------- REMOTE BUILD OUTPUT ------------------------------
ERROR: (gcloud.builds.submit) build 75d28263-9671-4359-854e-2535a29ad3b0 completed with status "FAILURE"
starting build "75d28263-9671-4359-854e-2535a29ad3b0"

FETCHSOURCE
Fetching storage object: gs://k8s-staging-release-test-gcb/source/1570834875.37-297cf4b31fb547218dc02ad9004339f8.tgz#1570834875611654
Copying gs://k8s-staging-release-test-gcb/source/1570834875.37-297cf4b31fb547218dc02ad9004339f8.tgz#1570834875611654...
/ [0 files][    0.0 B/166.4 KiB]                                                
/ [1 files][166.4 KiB/166.4 KiB]                                                
Operation completed over 1 objects/166.4 KiB.                                    
BUILD
Already have image (with digest): gcr.io/cloud-builders/docker
unable to prepare context: unable to evaluate symlinks in Dockerfile path: lstat /workspace/Dockerfile: no such file or directory
ERROR
ERROR: build step 0 "gcr.io/cloud-builders/docker" failed: exit status 1
--------------------------------------------------------------------------------

https://prow.k8s.io/view/gcs/kubernetes-jenkins/logs/post-release-push-image-deb-builder/1182793236758925319:

Created [https://cloudbuild.googleapis.com/v1/projects/k8s-staging-release-test/builds/42fb12ed-fff8-4e50-8cc2-21037cbf38e1].
Logs are available at [https://console.cloud.google.com/gcr/builds/42fb12ed-fff8-4e50-8cc2-21037cbf38e1?project=634027639865].
----------------------------- REMOTE BUILD OUTPUT ------------------------------
starting build "42fb12ed-fff8-4e50-8cc2-21037cbf38e1"

FETCHSOURCE
Fetching storage object: gs://k8s-staging-release-test-gcb/source/1570834875.55-c6f9168b8c5c4e239177f86f7161df02.tgz#1570834875702092
Copying gs://k8s-staging-release-test-gcb/source/1570834875.55-c6f9168b8c5c4e239177f86f7161df02.tgz#1570834875702092...
/ [0 files][    0.0 B/166.4 KiB]                                                
/ [1 files][166.4 KiB/166.4 KiB]                                                
Operation completed over 1 objects/166.4 KiB.                                    
BUILD
Starting Step #0
Step #0: Pulling image: golang:1.13
Step #0: 1.13: Pulling from library/golang
Step #0: Digest: sha256:68f8870ee1723cafd45bed29414fbaa151e9bf2bba369c8b4436c08a18907012
Step #0: Status: Downloaded newer image for golang:1.13
Step #0: docker.io/library/golang:1.13
Step #0: build .: cannot find module for path .
Finished Step #0
ERROR
ERROR: build step 0 "golang:1.13" failed: exit status 1
--------------------------------------------------------------------------------

ERROR: (gcloud.builds.submit) build 42fb12ed-fff8-4e50-8cc2-21037cbf38e1 completed with status "FAILURE"

https://prow.k8s.io/view/gcs/kubernetes-jenkins/logs/post-release-push-image-rpm-builder/1182793236758925321:

Created [https://cloudbuild.googleapis.com/v1/projects/k8s-staging-release-test/builds/133ed19d-2e9d-41ae-92f1-0a04766a25e3].
Logs are available at [https://console.cloud.google.com/gcr/builds/133ed19d-2e9d-41ae-92f1-0a04766a25e3?project=634027639865].
----------------------------- REMOTE BUILD OUTPUT ------------------------------
ERROR: (gcloud.builds.submit) build 133ed19d-2e9d-41ae-92f1-0a04766a25e3 completed with status "FAILURE"
starting build "133ed19d-2e9d-41ae-92f1-0a04766a25e3"

FETCHSOURCE
Fetching storage object: gs://k8s-staging-release-test-gcb/source/1570834874.08-db53a5ba6bd64a5d8bbfe614d8634184.tgz#1570834874408813
Copying gs://k8s-staging-release-test-gcb/source/1570834874.08-db53a5ba6bd64a5d8bbfe614d8634184.tgz#1570834874408813...
/ [0 files][    0.0 B/166.4 KiB]                                                
/ [1 files][166.4 KiB/166.4 KiB]                                                
Operation completed over 1 objects/166.4 KiB.                                    
BUILD
Already have image (with digest): gcr.io/cloud-builders/docker
unable to prepare context: unable to evaluate symlinks in Dockerfile path: lstat /workspace/Dockerfile: no such file or directory
ERROR
ERROR: build step 0 "gcr.io/cloud-builders/docker" failed: exit status 1
--------------------------------------------------------------------------------

Basically what's happening is the builder is looking for assets in /workspace and can't find them.
This was happening because the os.Chdir command was in a separate function scope, so it was ultimately not being respected. This was further obfuscated by the fact that the builder in its' current state specifies the cloudbuild.yaml while you're outside of the image directory.

I tried testing this locally with commands close to what would be running in CI and all seems to be working...

Build the image builder from the root of k/test-infra:

CGO_ENABLED=0 \
GOOS=linux \
GOARCH=amd64 \
GO111MODULE=on \
GOPROXY=https://proxy.golang.org \
GOSUMDB=sum.golang.org \
go build -o=./images/builder/builder ./images/builder

Submitting an image push from the root of k/release:

time /home/augustus/go/src/k8s.io/test-infra/images/builder/builder --project=kubernetes-release-test --scratch-bucket=gs://kubernetes-release-test-gcb --env-passthrough=PULL_BASE_REF build/debs/
2019/10/12 01:36:51 working directory: /home/augustus/go/src/k8s.io/release/build/debs
2019/10/12 01:36:51 Creating source tarball at /tmp/221087232...
2019/10/12 01:36:54 Uploading /tmp/221087232 to gs://kubernetes-release-test-gcb/source/9464065b-2e94-4ebd-84e7-591dff4d38ef.tgz...
Copying file:///tmp/221087232 [Content-Type=application/octet-stream]...
- [1 files][ 57.4 MiB/ 57.4 MiB]    1.2 MiB/s                                   
Operation completed over 1 objects/57.4 MiB.                                     
2019/10/12 01:37:37 Running build jobs...
2019/10/12 01:37:37 No variants.yaml, starting single build job...
Created [https://cloudbuild.googleapis.com/v1/projects/kubernetes-release-test/builds/47e371f8-d6d9-4370-8a56-567236fe103a].
Logs are available at [https://console.cloud.google.com/gcr/builds/47e371f8-d6d9-4370-8a56-567236fe103a?project=648026197307].
------------------------------------------------------------------------------------------------------ REMOTE BUILD OUTPUT -------------------------------------------------------------------------------------------------------
starting build "47e371f8-d6d9-4370-8a56-567236fe103a"

FETCHSOURCE
Fetching storage object: gs://kubernetes-release-test-gcb/source/1570858658.2-904011a4abf44c4eb7cfc1663efaa590.tgz#1570858658617748
Copying gs://kubernetes-release-test-gcb/source/1570858658.2-904011a4abf44c4eb7cfc1663efaa590.tgz#1570858658617748...
\ [1 files][ 57.4 MiB/ 57.4 MiB]                                                
Operation completed over 1 objects/57.4 MiB.                                     
BUILD

<snip>

DONE
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

ID                                    CREATE_TIME                DURATION  SOURCE                                                                                     IMAGES                                                                              STATUS
47e371f8-d6d9-4370-8a56-567236fe103a  2019-10-12T05:37:38+00:00  2M16S     gs://kubernetes-release-test-gcb/source/1570858658.2-904011a4abf44c4eb7cfc1663efaa590.tgz  gcr.io/kubernetes-release-test/deb-builder:v20191012-v0.1.3-124-ga49231d (+2 more)  SUCCESS
2019/10/12 01:39:56 Finished.

real	3m5.147s
user	0m6.419s
sys	0m1.151s

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@Katharine
Copy link
Member

This PR appears to have rendered the image builder unable to build itself, reverting

Katharine added a commit to Katharine/test-infra that referenced this pull request Oct 21, 2019
k8s-ci-robot added a commit that referenced this pull request Oct 21, 2019
Revert "Merge pull request #14747 from justaugustus/img-build"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approved Indicates a PR has been approved by an approver from all required OWNERS files. area/config Issues or PRs related to code in /config area/images area/release-eng Issues or PRs related to the Release Engineering subproject cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. lgtm "Looks good to me", indicates that a PR is ready to be merged. priority/important-soon Must be staffed and worked on either currently, or very soon, ideally in time for the next release. sig/release Categorizes an issue or PR as relevant to SIG Release. sig/testing Categorizes an issue or PR as relevant to SIG Testing. size/L Denotes a PR that changes 100-499 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants