Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Push the CoreDNS 1.2.3 image in gcr.io #69880

Closed
rajansandeep opened this issue Oct 16, 2018 · 13 comments
Closed

Push the CoreDNS 1.2.3 image in gcr.io #69880

rajansandeep opened this issue Oct 16, 2018 · 13 comments
Assignees
Labels
sig/cluster-lifecycle Categorizes an issue or PR as relevant to SIG Cluster Lifecycle. sig/network Categorizes an issue or PR as relevant to SIG Network. sig/release Categorizes an issue or PR as relevant to SIG Release.

Comments

@rajansandeep
Copy link
Contributor

Need to push the latest CoreDNS image to gcr.io
The 1.2.3 image is available in docker coredns/coredns:1.2.3

This is the script used for pushing the image:

#!/bin/sh

if [ -z "$1" -o -z "$2" -o -z "$3" -o -z "$4" ]; then
    echo "usage: $0 <src-reg> <image> <tag> <dst-reg>" > /dev/stderr
    echo "example: $0 coredns coredns 1.2.3 staging-k8s.gcr.io" > /dev/stderr
    exit 1
fi

SRC_REG="$1"
IMG="$2"
TAG="$3"
DST_REG="$4"
TMP="/tmp/$RANDOM"
JSON="$TMP.json"

echo "Fetching source manifest"
docker manifest inspect ${SRC_REG}/${IMG}:${TAG} > ${JSON}

echo
echo "Pulling source images by SHA"
cat ${JSON} \
    | jq -j ".manifests[] | \"${SRC_REG}/${IMG}@\", .digest, \"\n\" " \
    | while read X; do docker pull $X; done

echo
echo "Tagging images with ARCH and OS"
cat ${JSON} \
    | jq -j ".manifests[] | \"docker tag ${SRC_REG}/${IMG}@\", .digest, \" ${DST_REG}/${IMG}:${TAG}__\", .platform.architecture, \"_\", .platform.os, \"\n\"" \
    | while read X; do $X; done

echo
echo "Pushing images"
cat ${JSON} \
    | jq -j ".manifests[] | \"gcloud docker -- push ${DST_REG}/${IMG}:${TAG}__\", .platform.architecture, \"_\", .platform.os, \"\n\"" \
    | while read X; do $X; done

echo
echo "Creating and pushing manifest"
PLATFORMS=$(cat ${JSON} | jq -j ".manifests[] | .platform.os, \"/\", .platform.architecture, \"\n\"" | paste -sd,)
echo manifest-tool push from-args \
    --platforms "${PLATFORMS}" \
    --template ${DST_REG}/${IMG}:${TAG}__ARCH_OS \
    --target ${DST_REG}/${IMG}:${TAG}
manifest-tool push from-args \
    --platforms "${PLATFORMS}" \
    --template ${DST_REG}/${IMG}:${TAG}__ARCH_OS \
    --target ${DST_REG}/${IMG}:${TAG}

/cc @chrisohaver
/cc @BenTheElder
/cc @timothysc
/assign @thockin

@fturib

/sig network
/sig cluster-lifecycle
/sig release

@k8s-ci-robot k8s-ci-robot added sig/network Categorizes an issue or PR as relevant to SIG Network. sig/cluster-lifecycle Categorizes an issue or PR as relevant to SIG Cluster Lifecycle. sig/release Categorizes an issue or PR as relevant to SIG Release. labels Oct 16, 2018
@rajansandeep
Copy link
Contributor Author

/cc @AishSundar

@fturib
Copy link

fturib commented Oct 16, 2018

This release CoreDNS 1.2.3 includes optimization for the scale tests.
We need it to be pushed to gcr.io in order to run CoreDNS in Kubernetes and be able to finish validating that 5k nodes scale test is now good.

Thanks to push this image asap.

@dims
Copy link
Member

dims commented Oct 16, 2018

cc @ixdy @fejta (since Erick is on call)

@thockin
Copy link
Member

thockin commented Oct 16, 2018 via email

@thockin
Copy link
Member

thockin commented Oct 17, 2018

Promoter will run shortly

@thockin thockin closed this as completed Oct 17, 2018
@fturib
Copy link

fturib commented Oct 17, 2018

Yes, unfortunately, we will have to fix, re-validate and release another version of CoreDNS.
(and extend our CI as this issue went through it)

For the coreDNS 1.2.3 image in gcr.io, I am not sure what is usual behavior.
Is it safer to delete it ? (sorry about that)

@thockin
Copy link
Member

thockin commented Oct 17, 2018 via email

@chrisohaver
Copy link
Contributor

How can we get moe confidence in releases in staging before being promoted?

We are adding tests to the CoreDNS CI for this case.

@chrisohaver
Copy link
Contributor

How can we get moe confidence in releases in staging before being promoted?

Actually, we could run coredns build candidates through the K8s e2e test infra, in a test PR that points to docker-hub coredns build. We should start doing this before pushing the build to staging.

Will do that before requesting push of next build.

@AishSundar
Copy link
Contributor

do we need to do anything to undo the buggy image that was pushed? @fturib and @chrisohaver should we expect any blip in the CI signal?

@chrisohaver
Copy link
Contributor

should we expect any blip in the CI signal?

@AishSundar, Nothing in the tests uses the new image yet. So I don't think tests would be affected.

@thockin
Copy link
Member

thockin commented Oct 17, 2018 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
sig/cluster-lifecycle Categorizes an issue or PR as relevant to SIG Cluster Lifecycle. sig/network Categorizes an issue or PR as relevant to SIG Network. sig/release Categorizes an issue or PR as relevant to SIG Release.
Projects
None yet
Development

No branches or pull requests

7 participants