protected virtual async Task <Secret> ReadSecretAndFollowLinks(string key, int?datacenter, SecretStore store)
        {
            var secret = await store.Read(key, datacenter, "nucmd get");

            while (secret != null && secret.Type == SecretType.Link)
            {
                // Follow link
                var link = SecretName.Parse(secret.Value);
                await Console.WriteInfoLine(Strings.Secrets_FollowingLink, link.Name);

                secret = await store.Read(
                    link,
                    String.Format(CultureInfo.InvariantCulture, "nucmd get (link from {0})", secret.Name));
            }
            return(secret);
        }
Пример #2
0
        public Uri GetAdminUri()
        {
            var secret = _secrets.Read(
                new SecretName("http.admin:" + _service.Name, _service.Datacenter.Id),
                "resolve:" + _service.Type + "." + _service.Name)
                         .Result;

            return(new UriBuilder(_service.Uri)
            {
                UserName = "******",
                Password = secret == null ? null : secret.Value
            }.Uri);
        }