예제 #1
0
 public Task PullImageAsync(ImagesPullParameters parameters, AuthConfig authConfig, IProgress <JSONMessage> progress)
 {
     return(StreamUtil.MonitorStreamForMessagesAsync(
                PullImageAsync(parameters, authConfig),
                this._client,
                default(CancellationToken),
                progress));
 }
예제 #2
0
        public Task <Stream> PullImageAsync(ImagesPullParameters parameters, AuthConfig authConfig)
        {
            if (parameters == null)
            {
                throw new ArgumentNullException(nameof(parameters));
            }

            IQueryString queryParameters = new QueryString <ImagesPullParameters>(parameters);

            return(this._client.MakeRequestForStreamAsync(this._client.NoErrorHandlers, HttpMethod.Post, "images/create", queryParameters, RegistryAuthHeaders(authConfig), null, CancellationToken.None));
        }
예제 #3
0
        public async Task PullImage(string owner, string name, string tag)
        {
            var pullParams = new ImagesPullParameters
            {
                Parent = string.IsNullOrEmpty(owner) ? name : $"{owner}/{name}",
                Tag    = tag
            };


            var stream = await _client.Images.PullImageAsync(pullParams, null);

            using (var sr = new StreamReader(stream))
            {
                await sr.ReadToEndAsync();
            }
        }
 public static Stream PullImage(this IImageOperations operations, ImagesPullParameters parameters, AuthConfig authConfig)
 {
     return(operations.PullImageAsync(parameters, authConfig).Result);
 }