Exemplo n.º 1
0
        public TransferClient(
            AzureEnvironmentConfiguration azureEnvironmentConfiguration,
            IdentityConfiguration identityConfiguration,
            RegistryConfiguration registryConfiguration)
        {
            _registryConfiguration = registryConfiguration ?? throw new ArgumentNullException(nameof(registryConfiguration));

            var env = AzureEnvironment.FromName(azureEnvironmentConfiguration.Name);

            if (env == null)
            {
                env = new AzureEnvironment
                {
                    Name = azureEnvironmentConfiguration.Name,
                    AuthenticationEndpoint  = azureEnvironmentConfiguration.AuthenticationEndpoint,
                    ManagementEndpoint      = azureEnvironmentConfiguration.ManagementEndpoint,
                    ResourceManagerEndpoint = azureEnvironmentConfiguration.ResourceManagerEndpoint,
                    GraphEndpoint           = azureEnvironmentConfiguration.GraphEndpoint,
                    KeyVaultSuffix          = azureEnvironmentConfiguration.KeyVaultSuffix,
                    StorageEndpointSuffix   = azureEnvironmentConfiguration.StorageEndpointSuffix
                };
            }

            var credential = new AzureCredentials(
                new ServicePrincipalLoginInformation
            {
                ClientId     = identityConfiguration.ClientId,
                ClientSecret = identityConfiguration.ClientSecret
            },
                registryConfiguration.TenantId,
                env);

            _registryClient = new ContainerRegistryManagementClient(credential.WithDefaultSubscription(registryConfiguration.SubscriptionId));
            _registryClient.SubscriptionId = registryConfiguration.SubscriptionId;
        }
Exemplo n.º 2
0
        public ExportWorker(
            ExportConfiguration exportDefinition,
            RegistryConfiguration registryConfiguration,
            IdentityConfiguration identityConfiguration,
            TransferClient transferClient,
            ILogger <ExportWorker> logger)
        {
            _transferClient        = transferClient ?? throw new ArgumentNullException(nameof(transferClient));
            _exportConfiguration   = exportDefinition ?? throw new ArgumentNullException(nameof(exportDefinition));
            _identityConfiguration = identityConfiguration ?? throw new ArgumentNullException(nameof(identityConfiguration));
            _logger = logger ?? throw new ArgumentNullException(nameof(logger));

            _registry = new Registry(
                registryConfiguration.TenantId,
                registryConfiguration.SubscriptionId,
                registryConfiguration.ResourceGroupName,
                registryConfiguration.Name);
        }