Example #1
0
def _create_private_container_registry_secret(instance_id):
    if config_manager.get('private-registry', secret_name='ckan-docker-registry') == 'y':
        docker_server, docker_username, docker_password, docker_email = ckan_manager.get_docker_credentials()
        image_pull_secret_name = config_manager.get('docker-image-pull-secret-name', secret_name='ckan-docker-registry')
        subprocess.call(f'kubectl -n {instance_id} create secret docker-registry {image_pull_secret_name} '
                              f'--docker-password={docker_password} '
                              f'--docker-server={docker_server} '
                              f'--docker-username={docker_username} '
                              f'--docker-email={docker_email}', shell=True)
Example #2
0
 def _create_instance_registry_secret(self):
     print('Creating instance registry secret')
     from ckan_cloud_operator.providers.ckan import manager as ckan_manager
     server, user, password, email = ckan_manager.get_docker_credentials()
     subprocess.call(
         f'kubectl -n {self.instance.id} create secret docker-registry {self.instance.id}-registry '
         f'--docker-password={password} '
         f'--docker-server={server} '
         f'--docker-username={user} '
         f'--docker-email={email}',
         shell=True)
Example #3
0
def _update_registry_secret():
    secret = kubectl.get('secret datapushers-docker-registry', required=False)
    if secret:
        print(
            'Secret already exists, delete to recreate: datapushers-registry-secret'
        )
    else:
        print('Creating datapushers registry secret')
        from ckan_cloud_operator.providers.ckan import manager as ckan_manager
        docker_server, docker_username, docker_password, docker_email = ckan_manager.get_docker_credentials(
        )
        kubectl.check_call(
            f'create secret docker-registry datapushers-docker-registry '
            f'--docker-password={docker_password} '
            f'--docker-server={docker_server} '
            f'--docker-username={docker_username} '
            f'--docker-email={docker_email}')