Fix: vela show panic for component markdown format (#4706)

* Fix: vela show panic for component markdown format

Signed-off-by: qiaozp <qiaozhongpei.qzp@alibaba-inc.com>

* move code

Signed-off-by: Qiaozp <qiaozhongpei.qzp@alibaba-inc.com>

Signed-off-by: qiaozp <qiaozhongpei.qzp@alibaba-inc.com>
Signed-off-by: Qiaozp <qiaozhongpei.qzp@alibaba-inc.com>
This commit is contained in:
qiaozp
2022-09-14 16:29:25 +08:00
committed by GitHub
parent ac52f4aba8
commit 682c76b8c0
4 changed files with 28 additions and 7 deletions

View File

@@ -186,4 +186,14 @@ var (
})
})
}
ShowCapabilityReferenceMarkdown = func(context string, capabilityName string) bool {
return ginkgo.Context(context, func() {
ginkgo.It("should show capability reference in markdown", func() {
cli := fmt.Sprintf("vela show %s --format=markdown", capabilityName)
_, err := Exec(cli)
gomega.Expect(err).Should(gomega.BeNil())
})
})
}
)

View File

@@ -28,6 +28,7 @@ var _ = ginkgo.Describe("Trait", func() {
var _ = ginkgo.Describe("Test vela show", func() {
e2e.ShowCapabilityReference("show ingress", "ingress")
e2e.ShowCapabilityReferenceMarkdown("show ingress markdown", "ingress")
env := "namespace-xxxfwrr23erfm"
e2e.EnvInitWithNamespaceOptionContext("env init", env, env)

View File

@@ -37,6 +37,7 @@ var _ = Describe("Workload", func() {
var _ = Describe("Test vela show", func() {
e2e.ShowCapabilityReference("show webservice", "webservice")
e2e.ShowCapabilityReferenceMarkdown("show webservice markdown", "webservice")
env := "namespace-xxxfwrr23erfm"
e2e.EnvInitWithNamespaceOptionContext("env init", env, env)

View File

@@ -171,13 +171,6 @@ func startReferenceDocsSite(ctx context.Context, ns string, c common.Args, ioStr
if err != nil {
return err
}
ref := &docgen.MarkdownReference{
ParseReference: docgen.ParseReference{
Client: cli,
I18N: &docgen.En,
},
}
config, err := c.GetConfig()
if err != nil {
return err
@@ -186,6 +179,18 @@ func startReferenceDocsSite(ctx context.Context, ns string, c common.Args, ioStr
if err != nil {
return err
}
dm, err := c.GetDiscoveryMapper()
if err != nil {
return err
}
ref := &docgen.MarkdownReference{
ParseReference: docgen.ParseReference{
Client: cli,
I18N: &docgen.En,
},
DiscoveryMapper: dm,
}
if err := ref.CreateMarkdown(ctx, capabilities, docsPath, true, pd); err != nil {
return err
}
@@ -454,6 +459,10 @@ func ShowReferenceMarkdown(ctx context.Context, c common.Args, ioStreams cmdutil
return err
}
ref.ParseReference = paserRef
ref.DiscoveryMapper, err = c.GetDiscoveryMapper()
if err != nil {
return err
}
if err := ref.GenerateReferenceDocs(ctx, c, outputPath); err != nil {
return errors.Wrap(err, "failed to generate reference docs")
}