mirror of https://github.com/databricks/cli.git
Add `--key` flag for generate commands to specify resource key (#1165)
## Changes Add --key for generate commands to specify resource key. Also, resource config files are now not prefixed anymore. ## Tests Integration tests passed --------- Co-authored-by: Pieter Noordhuis <pieter.noordhuis@databricks.com>
This commit is contained in:
parent
5fda017057
commit
b28432afed
|
@ -6,6 +6,8 @@ import (
|
|||
)
|
||||
|
||||
func newGenerateCommand() *cobra.Command {
|
||||
var key string
|
||||
|
||||
cmd := &cobra.Command{
|
||||
Use: "generate",
|
||||
Short: "Generate bundle configuration",
|
||||
|
@ -15,5 +17,6 @@ func newGenerateCommand() *cobra.Command {
|
|||
|
||||
cmd.AddCommand(generate.NewGenerateJobCommand())
|
||||
cmd.AddCommand(generate.NewGeneratePipelineCommand())
|
||||
cmd.PersistentFlags().StringVar(&key, "key", "", `resource key to use for the generated configuration`)
|
||||
return cmd
|
||||
}
|
||||
|
|
|
@ -72,14 +72,18 @@ func TestGeneratePipelineCommand(t *testing.T) {
|
|||
|
||||
srcDir := filepath.Join(root, "src")
|
||||
cmd.Flag("source-dir").Value.Set(srcDir)
|
||||
|
||||
var key string
|
||||
cmd.Flags().StringVar(&key, "key", "test_pipeline", "")
|
||||
|
||||
err := cmd.RunE(cmd, []string{})
|
||||
require.NoError(t, err)
|
||||
|
||||
data, err := os.ReadFile(filepath.Join(configDir, "pipeline_test_pipeline.yml"))
|
||||
data, err := os.ReadFile(filepath.Join(configDir, "test_pipeline.yml"))
|
||||
require.NoError(t, err)
|
||||
require.Equal(t, fmt.Sprintf(`resources:
|
||||
pipelines:
|
||||
pipeline_test_pipeline:
|
||||
test_pipeline:
|
||||
name: test-pipeline
|
||||
libraries:
|
||||
- notebook:
|
||||
|
|
|
@ -63,7 +63,11 @@ func NewGenerateJobCommand() *cobra.Command {
|
|||
return err
|
||||
}
|
||||
|
||||
jobKey := fmt.Sprintf("job_%s", textutil.NormalizeString(job.Settings.Name))
|
||||
jobKey := cmd.Flag("key").Value.String()
|
||||
if jobKey == "" {
|
||||
jobKey = textutil.NormalizeString(job.Settings.Name)
|
||||
}
|
||||
|
||||
result := map[string]dyn.Value{
|
||||
"resources": dyn.V(map[string]dyn.Value{
|
||||
"jobs": dyn.V(map[string]dyn.Value{
|
||||
|
|
|
@ -63,11 +63,15 @@ func NewGeneratePipelineCommand() *cobra.Command {
|
|||
return err
|
||||
}
|
||||
|
||||
jobKey := fmt.Sprintf("pipeline_%s", textutil.NormalizeString(pipeline.Name))
|
||||
pipelineKey := cmd.Flag("key").Value.String()
|
||||
if pipelineKey == "" {
|
||||
pipelineKey = textutil.NormalizeString(pipeline.Name)
|
||||
}
|
||||
|
||||
result := map[string]dyn.Value{
|
||||
"resources": dyn.V(map[string]dyn.Value{
|
||||
"pipelines": dyn.V(map[string]dyn.Value{
|
||||
jobKey: v,
|
||||
pipelineKey: v,
|
||||
}),
|
||||
}),
|
||||
}
|
||||
|
@ -77,7 +81,7 @@ func NewGeneratePipelineCommand() *cobra.Command {
|
|||
return err
|
||||
}
|
||||
|
||||
filename := filepath.Join(configDir, fmt.Sprintf("%s.yml", jobKey))
|
||||
filename := filepath.Join(configDir, fmt.Sprintf("%s.yml", pipelineKey))
|
||||
err = yamlsaver.SaveAsYAML(result, filename, force)
|
||||
if err != nil {
|
||||
return err
|
||||
|
|
|
@ -46,7 +46,7 @@ func TestAccGenerateFromExistingJobAndDeploy(t *testing.T) {
|
|||
_, err = os.Stat(filepath.Join(bundleRoot, "src", "test.py"))
|
||||
require.NoError(t, err)
|
||||
|
||||
matches, err := filepath.Glob(filepath.Join(bundleRoot, "resources", "job_generated_job_*.yml"))
|
||||
matches, err := filepath.Glob(filepath.Join(bundleRoot, "resources", "generated_job_*.yml"))
|
||||
require.NoError(t, err)
|
||||
require.Len(t, matches, 1)
|
||||
|
||||
|
|
|
@ -47,7 +47,7 @@ func TestAccGenerateFromExistingPipelineAndDeploy(t *testing.T) {
|
|||
_, err = os.Stat(filepath.Join(bundleRoot, "src", "test.py"))
|
||||
require.NoError(t, err)
|
||||
|
||||
matches, err := filepath.Glob(filepath.Join(bundleRoot, "resources", "pipeline_generated_pipeline_*.yml"))
|
||||
matches, err := filepath.Glob(filepath.Join(bundleRoot, "resources", "generated_pipeline_*.yml"))
|
||||
require.NoError(t, err)
|
||||
require.Len(t, matches, 1)
|
||||
|
||||
|
|
Loading…
Reference in New Issue