core@micro-kube ~/example-go $ git push deis master
The authenticity of host '[10.3.0.197]:2222 ([10.3.0.197]:2222)' can't be established.
RSA key fingerprint is 85:94:7f:63:f6:53:0c:15:86:f3:50:1d:60:f0:32:27.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '[10.3.0.197]:2222' (RSA) to the list of known hosts.
Counting objects: 165, done.
Compressing objects: 100% (151/151), done.
Writing objects: 100% (165/165), 3.02 MiB | 11.00 KiB/s, done.
Total 165 (delta 81), reused 0 (delta 0)
mc: Configuration written to [/var/minio-conf/config.json]. Please update your access credentials.
mc: Successfully created ‘/var/minio-conf/share’.
mc: Initialized share uploads ‘/var/minio-conf/share/uploads.json’ file.
mc: Initialized share downloads ‘/var/minio-conf/share/downloads.json’ file.
Added host ‘http://10.3.0.29:9000’ successfully.
Bucket created successfully ‘http://10.3.0.29:9000/git’.
‘luxury-gemstone.tar.gz’ -> ‘http://10.3.0.29:9000/git/home/luxury-gemstone:git-2783d643/tar’
Total: 2.97 MB, Transferred: 2.97 MB, Speed: 22.75 MB/s
stored tarfile in http://10.3.0.29:9000/git/home/luxury-gemstone:git-2783d643/tar
pod "deis-slugbuilder" created
no file
no file
no file
The issue is that the deis-slugbuilder pod is created in the default namespace, but the entire rest of the cluster runs in the deis namespace (when installed by helm) so it can't find the the minio-user secret it needs to download the tarball to build (k is an alias for kubectl):
ENG000656:builder aaronschlesinger$ k describe pod deis-slugbuilder
Name: deis-slugbuilder
Namespace: default
Image(s): quay.io/deisci/slugbuilder:v2-alpha
Node: 172.17.8.100/172.17.8.100
Start Time: Tue, 15 Dec 2015 09:16:15 -0800
Labels: heritage=deis,version=v2-alpha
Status: Pending
Reason:
Message:
IP:
Replication Controllers: <none>
Containers:
deis-slugbuilder:
Container ID:
Image: quay.io/deisci/slugbuilder:v2-alpha
Image ID:
State: Waiting
Reason: ImageNotReady
Ready: False
Restart Count: 0
Environment Variables:
DEBUG: 1
TAR_URL: http://10.3.0.29:9000/git/home/luxury-gemstone:git-2783d643/tar
put_url: http://10.3.0.29:9000/git/home/luxury-gemstone:git-2783d643/push
Conditions:
Type Status
Ready False
Volumes:
minio-user:
Type: Secret (a secret that should populate this volume)
SecretName: minio-user
default-token-uy1lp:
Type: Secret (a secret that should populate this volume)
SecretName: default-token-uy1lp
Events:
FirstSeen LastSeen Count From SubobjectPath Reason Message
───────── ──────── ───── ──── ───────────── ────── ───────
57s 57s 1 {scheduler } Scheduled Successfully assigned deis-slugbuilder to 172.17.8.100
57s 9s 6 {kubelet 172.17.8.100} FailedMount Unable to mount volumes for pod "deis-slugbuilder_default": secrets "minio-user" not found
57s 9s 6 {kubelet 172.17.8.100} FailedSync Error syncing pod, skipping: secrets "minio-user" not found
The best solution should be to have deis-builder run deis-slugbuilder in the same namespace that it's running in, regardless of what that namespace is. That will involved somehow having deis-builder detect its namespace.
Here's what a
git push
looks like:The issue is that the
deis-slugbuilder
pod is created in thedefault
namespace, but the entire rest of the cluster runs in thedeis
namespace (when installed byhelm
) so it can't find the theminio-user
secret it needs to download the tarball to build (k
is an alias forkubectl
):The best solution should be to have
deis-builder
rundeis-slugbuilder
in the same namespace that it's running in, regardless of what that namespace is. That will involved somehow havingdeis-builder
detect its namespace.