Created
April 22, 2025 17:33
-
-
Save plsnotracking/3879c5055b2e95910b345b90de6df51e to your computer and use it in GitHub Desktop.
Tries to fetch the mosaic secret, from legacy namespace using whisper dev certificates.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
package main | |
import ( | |
"context" | |
"flag" | |
"go.uber.org/zap" | |
"log" | |
"os" | |
"time" | |
"github.pie.apple.com/isd-dev/go-applecerts" | |
"github.pie.apple.com/isd-dev/go-whisper" | |
) | |
var keyFilename = flag.String("key", "/Users/vpatani/junkyard/certs/whisper-dev/key.pem", "private key file location") | |
var keyFilePassword = flag.String("keyPass", "/Users/vpatani/junkyard/certs/whisper-dev/pass", "private key password file location") | |
var certFilename = flag.String("cert", "/Users/vpatani/junkyard/certs/whisper-dev/cert.pem", "cert file location") | |
var namespace = flag.String("namespace", "", "namespace to be used") | |
var groupId = flag.String("groupId", "4525495", "group ID to be assigned to the bucket") | |
var bucket = flag.String("bucket", "visible-bucket", "bucket to attach the APRN Principal to") | |
func main() { | |
var err error | |
logger, err = GetLogger() | |
if err != nil { | |
log.Fatalf("could not init logger: %+v", err) | |
} | |
flag.Parse() | |
keyFile, err := os.Open(*keyFilename) | |
if err != nil { | |
logger.Fatal("error loading key file", zap.Error(err)) | |
} | |
certFile, err := os.Open(*certFilename) | |
if err != nil { | |
logger.Fatal("error loading cert file", zap.Error(err)) | |
} | |
hc, err := applecerts.Client() | |
if err != nil { | |
logger.Fatal("error loading apple certificates", zap.Error(err)) | |
} | |
c, err := whisper.New(whisper.Config{ | |
HTTPClient: hc, | |
Timeout: time.Second * 30, | |
BaseURL: whisper.ProdURL, | |
Version: whisper.V1, | |
Namespace: *namespace, | |
}) | |
if err != nil { | |
logger.Fatal("failed to create whisper client", zap.Error(err)) | |
} | |
if err = c.AppendCert(whisper.CertConfig{ | |
KeyData: keyFile, | |
CertData: certFile, | |
}); err != nil { | |
logger.Fatal("error appending cert file", zap.Error(err)) | |
} | |
s, err := c.HealthCheck(context.Background()) | |
if err != nil { | |
logger.Fatal("health check failed", zap.Error(err)) | |
} | |
logger.Info("health check succeeded", | |
zap.String("message", s.Message), | |
zap.String("status", s.Status), | |
) | |
tempSecret, err := c.MySecretByName(context.TODO(), "mosaic.sharing-policy-client-id.token") | |
if err != nil { | |
logger.Fatal("error getting bucket list", zap.Error(err)) | |
} | |
content, err := tempSecret.Content() | |
logger.Info("secret fetched", | |
zap.String("secret", tempSecret.Name), | |
zap.String("encoded content", tempSecret.EncodedContent()), | |
zap.String("content", content), | |
) | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment