Files
certmanager/cmd/certmanagerctl/servicecli.go
Олег Бородин 07b32e881e istore: updated
2024-08-07 09:20:36 +02:00

134 lines
3.3 KiB
Go

package main
import (
"context"
"encoding/base64"
"strings"
cmapi "certmanager/pkg/cmctl"
"certmanager/pkg/client"
)
func (util *Util) CreateServicePair(ctx context.Context) (*cmapi.CreateServicePairResult, error) {
var err error
res := &cmapi.CreateServicePairResult{}
cli, err := client.NewClient(&util.access)
if err != nil {
return res, err
}
inetAddresses := strings.Split(util.ipAdressesList, ",")
hostnames := strings.Split(util.hostnameList, ",")
params := &cmapi.CreateServicePairParams{
IssuerName: util.issuerName,
IssuerID: util.issuerID,
ServiceCommonName: util.serviceCommonName,
InetAddresses: inetAddresses,
Hostnames: hostnames,
}
res, err = cli.CreateServicePair(ctx, params)
if err != nil {
return res, err
}
certPEM, err := base64.StdEncoding.DecodeString(res.Certificate)
if err != nil {
return res, err
}
res.Certificate = string(certPEM)
keyPEM, err := base64.StdEncoding.DecodeString(res.Key)
if err != nil {
return res, err
}
res.Key = string(keyPEM)
caPEM, err := base64.StdEncoding.DecodeString(res.IssuerCertificate)
if err != nil {
return res, err
}
res.IssuerCertificate = string(caPEM)
return res, err
}
func (util *Util) RevokeServicePair(ctx context.Context) (*cmapi.RevokeServicePairResult, error) {
var err error
res := &cmapi.RevokeServicePairResult{}
cli, err := client.NewClient(&util.access)
if err != nil {
return res, err
}
params := &cmapi.RevokeServicePairParams{
ServiceName: util.serviceName,
ServiceID: util.serviceID,
}
res, err = cli.RevokeServicePair(ctx, params)
if err != nil {
return res, err
}
return res, err
}
func (util *Util) UnrevokeServicePair(ctx context.Context) (*cmapi.UnrevokeServicePairResult, error) {
var err error
res := &cmapi.UnrevokeServicePairResult{}
cli, err := client.NewClient(&util.access)
if err != nil {
return res, err
}
params := &cmapi.UnrevokeServicePairParams{
ServiceName: util.serviceName,
ServiceID: util.serviceID,
}
res, err = cli.UnrevokeServicePair(ctx, params)
if err != nil {
return res, err
}
return res, err
}
func (util *Util) ListServicePairs(ctx context.Context) (*cmapi.ListServicePairsResult, error) {
var err error
res := &cmapi.ListServicePairsResult{}
cli, err := client.NewClient(&util.access)
if err != nil {
return res, err
}
params := &cmapi.ListServicePairsParams{}
res, err = cli.ListServicePairs(ctx, params)
if err != nil {
return res, err
}
return res, err
}
func (util *Util) GetServicePair(ctx context.Context) (*cmapi.GetServicePairResult, error) {
var err error
res := &cmapi.GetServicePairResult{}
cli, err := client.NewClient(&util.access)
if err != nil {
return res, err
}
params := &cmapi.GetServicePairParams{
ServiceID: util.serviceID,
ServiceName: util.serviceName,
}
res, err = cli.GetServicePair(ctx, params)
if err != nil {
return res, err
}
certPEM, err := base64.StdEncoding.DecodeString(res.Certificate)
if err != nil {
return res, err
}
res.Certificate = string(certPEM)
keyPEM, err := base64.StdEncoding.DecodeString(res.Key)
if err != nil {
return res, err
}
res.Key = string(keyPEM)
caPEM, err := base64.StdEncoding.DecodeString(res.IssuerCertificate)
if err != nil {
return res, err
}
res.IssuerCertificate = string(caPEM)
return res, err
}