4141 "value":"$image"
4242 },
4343 {
44- "name": "DOCKERIMAGE ",
45- "value":"1 "
44+ "name": "BUILDER_STORAGE ",
45+ "value":"$storagetype "
4646 }
4747 ],
4848 "volumeMounts":[
4949 {
50- "name":"minio-user ",
51- "mountPath":"/var/run/secrets/object/store ",
50+ "name":"objectstorage-keyfile ",
51+ "mountPath":"/var/run/secrets/deis/objectstore/creds ",
5252 "readOnly":true
5353 }
5454 ]
5555 }
5656 ],
5757 "volumes":[
5858 {
59- "name":"minio-user ",
59+ "name":"objectstorage-keyfile ",
6060 "secret":{
61- "secretName":"minio-user "
61+ "secretName":"objectstorage-keyfile "
6262 }
6363 }
6464 ],
194194 "value":"$appversion"
195195 },
196196 {
197- "name": "DOCKERIMAGE",
198- "value":"1"
197+ "name": "BUILDER_STORAGE",
198+ "value":"$storagetype"
199+ },
200+ {
201+ "name": "DEIS_MINIO_SERVICE_HOST",
202+ "value":"$mHost"
203+ },
204+ {
205+ "name": "DEIS_MINIO_SERVICE_PORT",
206+ "value":"$mPort"
199207 }
200208 ],
201209 "volumeMounts":[
202210 {
203- "name":"minio-user ",
204- "mountPath":"/var/run/secrets/object/store ",
211+ "name":"objectstorage-keyfile ",
212+ "mountPath":"/var/run/secrets/deis/objectstore/creds ",
205213 "readOnly":true
206214 }
207215 ]
210218 "nodeSelector": {},
211219 "volumes":[
212220 {
213- "name":"minio-user ",
221+ "name":"objectstorage-keyfile ",
214222 "secret":{
215- "secretName":"minio-user "
223+ "secretName":"objectstorage-keyfile "
216224 }
217225 }
218226 ]
@@ -438,9 +446,9 @@ def create(self, namespace, **kwargs):
438446 self ._create_namespace (namespace )
439447
440448 try :
441- self ._get_secret (namespace , 'minio-user ' )
449+ self ._get_secret (namespace , 'objectstorage-keyfile ' )
442450 except KubeException :
443- self ._create_minio_secret (namespace )
451+ self ._create_objectstore_secret (namespace )
444452
445453 try :
446454 self ._get_service (namespace , namespace )
@@ -477,6 +485,7 @@ def run(self, namespace, name, image, entrypoint, command, **kwargs):
477485 'id' : name ,
478486 'version' : self .apiversion ,
479487 'image' : imgurl ,
488+ 'storagetype' : os .getenv ("APP_STORAGE" )
480489 }
481490
482491 if image .startswith ('http://' ) or image .startswith ('https://' ):
@@ -842,6 +851,7 @@ def _create_rc(self, namespace, name, image, command, **kwargs): # noqa
842851 container_name = namespace + '-' + app_type
843852 args = command .split ()
844853 imgurl = self .registry + "/" + image
854+ storageType = os .getenv ("APP_STORAGE" )
845855 TEMPLATE = RCD_TEMPLATE
846856
847857 l = {
@@ -853,6 +863,9 @@ def _create_rc(self, namespace, name, image, command, **kwargs): # noqa
853863 "replicas" : kwargs .get ("replicas" , 0 ),
854864 "containername" : container_name ,
855865 "type" : app_type ,
866+ "storagetype" : storageType ,
867+ "mHost" : os .getenv ("DEIS_MINIO_SERVICE_HOST" ),
868+ "mPort" : os .getenv ("DEIS_MINIO_SERVICE_PORT" ),
856869 }
857870
858871 # Check if it is a slug builder image.
@@ -972,15 +985,12 @@ def _healthcheck(self, controller, path='/', port=8080, delay=30, timeout=1):
972985
973986 # SECRETS #
974987 # http://kubernetes.io/v1.1/docs/api-reference/v1/definitions.html#_v1_secret
975-
976- def _create_minio_secret (self , namespace ):
977- secret = self ._get_secret ('deis' , 'minio-user' ).json () # fetch from deis namespace
978-
979- data = {
980- 'access-key-id' : base64 .b64decode (secret ['data' ]['access-key-id' ]),
981- 'access-secret-key' : base64 .b64decode (secret ['data' ]['access-secret-key' ])
982- }
983- self ._create_secret (namespace , 'minio-user' , data )
988+ def _create_objectstore_secret (self , namespace ):
989+ secret = self ._get_secret ('deis' , 'objectstorage-keyfile' ).json ()
990+ data = {}
991+ for key , value in secret ['data' ].items ():
992+ data [key ] = base64 .b64decode (value )
993+ self ._create_secret (namespace , 'objectstorage-keyfile' , data )
984994
985995 def _get_secret (self , namespace , name ):
986996 url = self ._api ("/namespaces/{}/secrets/{}" , namespace , name )
0 commit comments