Skip to content

Commit

Permalink
fix(tekton): Trigger updates
Browse files Browse the repository at this point in the history
  • Loading branch information
briangleeson authored and hkantare committed Aug 30, 2023
1 parent 8a55d99 commit f4cf624
Show file tree
Hide file tree
Showing 24 changed files with 452 additions and 288 deletions.
2 changes: 1 addition & 1 deletion go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ require (
github.com/IBM/cloudant-go-sdk v0.0.43
github.com/IBM/code-engine-go-sdk v0.0.0-20230606173928-4863db061918
github.com/IBM/container-registry-go-sdk v1.1.0
github.com/IBM/continuous-delivery-go-sdk v1.1.1
github.com/IBM/continuous-delivery-go-sdk v1.1.2
github.com/IBM/event-notifications-go-admin-sdk v0.2.4
github.com/IBM/eventstreams-go-sdk v1.2.0
github.com/IBM/go-sdk-core/v5 v5.13.4
Expand Down
4 changes: 2 additions & 2 deletions go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -121,8 +121,8 @@ github.com/IBM/code-engine-go-sdk v0.0.0-20230606173928-4863db061918 h1:RfHezAVs
github.com/IBM/code-engine-go-sdk v0.0.0-20230606173928-4863db061918/go.mod h1:IP6U/1NxgxzPeYdyiEwMaZyzelTw82JGHWl7bY78eQM=
github.com/IBM/container-registry-go-sdk v1.1.0 h1:sYyknIod8R4RJZQqAheiduP6wbSTphE9Ag8ho28yXjc=
github.com/IBM/container-registry-go-sdk v1.1.0/go.mod h1:4TwsCnQtVfZ4Vkapy/KPvQBKFc3VOyUZYkwRU4FTPrs=
github.com/IBM/continuous-delivery-go-sdk v1.1.1 h1:bYrK0+rJgoWfBmIJAlAfo/AxI5vOr8DSLJPrM3iEOzQ=
github.com/IBM/continuous-delivery-go-sdk v1.1.1/go.mod h1:A9rI1HPbccBBFgwJxXB999yXXpj1l+MnlE+rsxKtxw0=
github.com/IBM/continuous-delivery-go-sdk v1.1.2 h1:UHwwak2RVTSZGtIV+SjH0vALqSvA+Vwkd1PHAbGgGrc=
github.com/IBM/continuous-delivery-go-sdk v1.1.2/go.mod h1:A9rI1HPbccBBFgwJxXB999yXXpj1l+MnlE+rsxKtxw0=
github.com/IBM/event-notifications-go-admin-sdk v0.2.4 h1:WWUxwrKQxvExEK+xaAQOs6gP54LvJDPi3KatDTMfwh0=
github.com/IBM/event-notifications-go-admin-sdk v0.2.4/go.mod h1:1TlGAFP47DybbovJfHtYYgSI8xpLL8Q0wao6vsAlb6c=
github.com/IBM/eventstreams-go-sdk v1.2.0 h1:eP0afHArMGjwhGqvZAhhu/3EDKRch2JehpveqF1TUjs=
Expand Down
24 changes: 22 additions & 2 deletions ibm/service/cdtektonpipeline/data_source_ibm_cd_tekton_pipeline.go
Original file line number Diff line number Diff line change
Expand Up @@ -281,7 +281,7 @@ func DataSourceIBMCdTektonPipeline() *schema.Resource {
"worker": &schema.Schema{
Type: schema.TypeList,
Computed: true,
Description: "Worker used to run the trigger. If not specified the trigger will use the default pipeline worker.",
Description: "Details of the worker used to run the trigger.",
Elem: &schema.Resource{
Schema: map[string]*schema.Schema{
"name": &schema.Schema{
Expand Down Expand Up @@ -312,6 +312,11 @@ func DataSourceIBMCdTektonPipeline() *schema.Resource {
Computed: true,
Description: "Flag whether the trigger is enabled.",
},
"favorite": &schema.Schema{
Type: schema.TypeBool,
Computed: true,
Description: "Mark the trigger as a favorite.",
},
"source": &schema.Schema{
Type: schema.TypeList,
Computed: true,
Expand Down Expand Up @@ -437,7 +442,7 @@ func DataSourceIBMCdTektonPipeline() *schema.Resource {
"worker": &schema.Schema{
Type: schema.TypeList,
Computed: true,
Description: "Default pipeline worker used to run the pipeline.",
Description: "Details of the worker used to run the pipeline.",
Elem: &schema.Resource{
Schema: map[string]*schema.Schema{
"name": &schema.Schema{
Expand Down Expand Up @@ -779,6 +784,9 @@ func dataSourceIBMCdTektonPipelineTriggerToMap(model cdtektonpipelinev2.TriggerI
if model.Enabled != nil {
modelMap["enabled"] = model.Enabled
}
if model.Favorite != nil {
modelMap["favorite"] = model.Favorite
}
if model.Source != nil {
sourceMap, err := dataSourceIBMCdTektonPipelineTriggerSourceToMap(model.Source)
if err != nil {
Expand Down Expand Up @@ -928,6 +936,9 @@ func dataSourceIBMCdTektonPipelineTriggerManualTriggerToMap(model *cdtektonpipel
modelMap["max_concurrent_runs"] = flex.IntValue(model.MaxConcurrentRuns)
}
modelMap["enabled"] = model.Enabled
if model.Favorite != nil {
modelMap["favorite"] = model.Favorite
}
return modelMap, nil
}

Expand Down Expand Up @@ -965,6 +976,9 @@ func dataSourceIBMCdTektonPipelineTriggerScmTriggerToMap(model *cdtektonpipeline
modelMap["max_concurrent_runs"] = flex.IntValue(model.MaxConcurrentRuns)
}
modelMap["enabled"] = model.Enabled
if model.Favorite != nil {
modelMap["favorite"] = model.Favorite
}
if model.Source != nil {
sourceMap, err := dataSourceIBMCdTektonPipelineTriggerSourceToMap(model.Source)
if err != nil {
Expand Down Expand Up @@ -1012,6 +1026,9 @@ func dataSourceIBMCdTektonPipelineTriggerTimerTriggerToMap(model *cdtektonpipeli
modelMap["max_concurrent_runs"] = flex.IntValue(model.MaxConcurrentRuns)
}
modelMap["enabled"] = model.Enabled
if model.Favorite != nil {
modelMap["favorite"] = model.Favorite
}
if model.Cron != nil {
modelMap["cron"] = model.Cron
}
Expand Down Expand Up @@ -1055,6 +1072,9 @@ func dataSourceIBMCdTektonPipelineTriggerGenericTriggerToMap(model *cdtektonpipe
modelMap["max_concurrent_runs"] = flex.IntValue(model.MaxConcurrentRuns)
}
modelMap["enabled"] = model.Enabled
if model.Favorite != nil {
modelMap["favorite"] = model.Favorite
}
if model.Secret != nil {
secretMap, err := dataSourceIBMCdTektonPipelineGenericSecretToMap(model.Secret)
if err != nil {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -37,16 +37,16 @@ func TestAccIBMCdTektonPipelinePropertyDataSourceBasic(t *testing.T) {

func TestAccIBMCdTektonPipelinePropertyDataSourceAllArgs(t *testing.T) {
propertyName := fmt.Sprintf("tf_name_%d", acctest.RandIntRange(10, 100))
propertyType := "text"
propertyValue := fmt.Sprintf("tf_value_%d", acctest.RandIntRange(10, 100))
propertyType := "text"
propertyPath := fmt.Sprintf("tf_path_%d", acctest.RandIntRange(10, 100))

resource.Test(t, resource.TestCase{
PreCheck: func() { acc.TestAccPreCheck(t) },
Providers: acc.TestAccProviders,
Steps: []resource.TestStep{
resource.TestStep{
Config: testAccCheckIBMCdTektonPipelinePropertyDataSourceConfig("", propertyName, propertyType, propertyValue, propertyPath),
Config: testAccCheckIBMCdTektonPipelinePropertyDataSourceConfig("", propertyName, propertyValue, propertyType, propertyPath),
Check: resource.ComposeTestCheckFunc(
resource.TestCheckResourceAttrSet("data.ibm_cd_tekton_pipeline_property.cd_tekton_pipeline_property", "id"),
resource.TestCheckResourceAttrSet("data.ibm_cd_tekton_pipeline_property.cd_tekton_pipeline_property", "pipeline_id"),
Expand Down Expand Up @@ -104,7 +104,7 @@ func testAccCheckIBMCdTektonPipelinePropertyDataSourceConfigBasic(propertyPipeli
`, rgName, tcName)
}

func testAccCheckIBMCdTektonPipelinePropertyDataSourceConfig(propertyPipelineID string, propertyName string, propertyType string, propertyValue string, propertyPath string) string {
func testAccCheckIBMCdTektonPipelinePropertyDataSourceConfig(propertyPipelineID string, propertyName string, propertyValue string, propertyType string, propertyPath string) string {
rgName := acc.CdResourceGroupName
tcName := fmt.Sprintf("tf_name_%d", acctest.RandIntRange(10, 100))
return fmt.Sprintf(`
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -104,7 +104,7 @@ func DataSourceIBMCdTektonPipelineTrigger() *schema.Resource {
"worker": &schema.Schema{
Type: schema.TypeList,
Computed: true,
Description: "Worker used to run the trigger. If not specified the trigger will use the default pipeline worker.",
Description: "Details of the worker used to run the trigger.",
Elem: &schema.Resource{
Schema: map[string]*schema.Schema{
"name": &schema.Schema{
Expand Down Expand Up @@ -135,6 +135,11 @@ func DataSourceIBMCdTektonPipelineTrigger() *schema.Resource {
Computed: true,
Description: "Flag whether the trigger is enabled.",
},
"favorite": &schema.Schema{
Type: schema.TypeBool,
Computed: true,
Description: "Mark the trigger as a favorite.",
},
"source": &schema.Schema{
Type: schema.TypeList,
Computed: true,
Expand Down Expand Up @@ -340,6 +345,10 @@ func dataSourceIBMCdTektonPipelineTriggerRead(context context.Context, d *schema
return diag.FromErr(fmt.Errorf("Error setting enabled: %s", err))
}

if err = d.Set("favorite", trigger.Favorite); err != nil {
return diag.FromErr(fmt.Errorf("Error setting favorite: %s", err))
}

source := []map[string]interface{}{}
if trigger.Source != nil {
modelMap, err := dataSourceIBMCdTektonPipelineTriggerTriggerSourceToMap(trigger.Source)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,16 +36,16 @@ func TestAccIBMCdTektonPipelineTriggerPropertyDataSourceBasic(t *testing.T) {

func TestAccIBMCdTektonPipelineTriggerPropertyDataSourceAllArgs(t *testing.T) {
triggerPropertyName := fmt.Sprintf("tf_name_%d", acctest.RandIntRange(10, 100))
triggerPropertyType := "text"
triggerPropertyValue := fmt.Sprintf("tf_value_%d", acctest.RandIntRange(10, 100))
triggerPropertyType := "text"
triggerPropertyPath := fmt.Sprintf("tf_path_%d", acctest.RandIntRange(10, 100))

resource.Test(t, resource.TestCase{
PreCheck: func() { acc.TestAccPreCheck(t) },
Providers: acc.TestAccProviders,
Steps: []resource.TestStep{
resource.TestStep{
Config: testAccCheckIBMCdTektonPipelineTriggerPropertyDataSourceConfig("", "", triggerPropertyName, triggerPropertyType, triggerPropertyValue, triggerPropertyPath),
Config: testAccCheckIBMCdTektonPipelineTriggerPropertyDataSourceConfig("", "", triggerPropertyName, triggerPropertyValue, triggerPropertyType, triggerPropertyPath),
Check: resource.ComposeTestCheckFunc(
resource.TestCheckResourceAttrSet("data.ibm_cd_tekton_pipeline_trigger_property.cd_tekton_pipeline_trigger_property", "id"),
resource.TestCheckResourceAttrSet("data.ibm_cd_tekton_pipeline_trigger_property.cd_tekton_pipeline_trigger_property", "property_name"),
Expand Down Expand Up @@ -133,7 +133,7 @@ func testAccCheckIBMCdTektonPipelineTriggerPropertyDataSourceConfigBasic(trigger
`, rgName, tcName)
}

func testAccCheckIBMCdTektonPipelineTriggerPropertyDataSourceConfig(triggerPropertyPipelineID string, triggerPropertyTriggerID string, triggerPropertyName string, triggerPropertyType string, triggerPropertyValue string, triggerPropertyPath string) string {
func testAccCheckIBMCdTektonPipelineTriggerPropertyDataSourceConfig(triggerPropertyPipelineID string, triggerPropertyTriggerID string, triggerPropertyName string, triggerPropertyValue string, triggerPropertyType string, triggerPropertyPath string) string {
rgName := acc.CdResourceGroupName
tcName := fmt.Sprintf("tf_name_%d", acctest.RandIntRange(10, 100))
return fmt.Sprintf(`
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,7 @@ func TestAccIBMCdTektonPipelineTriggerDataSourceAllArgs(t *testing.T) {
triggerEventListener := fmt.Sprintf("tf_event_listener_%d", acctest.RandIntRange(10, 100))
triggerMaxConcurrentRuns := fmt.Sprintf("%d", acctest.RandIntRange(10, 100))
triggerEnabled := "false"
triggerFavorite := "true"
triggerCron := fmt.Sprintf("tf_cron_%d", acctest.RandIntRange(10, 100))
triggerTimezone := fmt.Sprintf("tf_timezone_%d", acctest.RandIntRange(10, 100))

Expand All @@ -50,7 +51,7 @@ func TestAccIBMCdTektonPipelineTriggerDataSourceAllArgs(t *testing.T) {
Providers: acc.TestAccProviders,
Steps: []resource.TestStep{
resource.TestStep{
Config: testAccCheckIBMCdTektonPipelineTriggerDataSourceConfig(triggerPipelineID, triggerType, triggerName, triggerEventListener, triggerMaxConcurrentRuns, triggerEnabled, triggerCron, triggerTimezone),
Config: testAccCheckIBMCdTektonPipelineTriggerDataSourceConfig(triggerPipelineID, triggerType, triggerName, triggerEventListener, triggerMaxConcurrentRuns, triggerEnabled, triggerFavorite, triggerCron, triggerTimezone),
Check: resource.ComposeTestCheckFunc(
resource.TestCheckResourceAttrSet("data.ibm_cd_tekton_pipeline_trigger.cd_tekton_pipeline_trigger", "id"),
resource.TestCheckResourceAttrSet("data.ibm_cd_tekton_pipeline_trigger.cd_tekton_pipeline_trigger", "pipeline_id"),
Expand All @@ -63,6 +64,7 @@ func TestAccIBMCdTektonPipelineTriggerDataSourceAllArgs(t *testing.T) {
resource.TestCheckResourceAttrSet("data.ibm_cd_tekton_pipeline_trigger.cd_tekton_pipeline_trigger", "worker.#"),
resource.TestCheckResourceAttrSet("data.ibm_cd_tekton_pipeline_trigger.cd_tekton_pipeline_trigger", "max_concurrent_runs"),
resource.TestCheckResourceAttrSet("data.ibm_cd_tekton_pipeline_trigger.cd_tekton_pipeline_trigger", "enabled"),
resource.TestCheckResourceAttrSet("data.ibm_cd_tekton_pipeline_trigger.cd_tekton_pipeline_trigger", "favorite"),
resource.TestCheckResourceAttrSet("data.ibm_cd_tekton_pipeline_trigger.cd_tekton_pipeline_trigger", "source.#"),
resource.TestCheckResourceAttrSet("data.ibm_cd_tekton_pipeline_trigger.cd_tekton_pipeline_trigger", "secret.#"),
),
Expand Down Expand Up @@ -138,7 +140,7 @@ func testAccCheckIBMCdTektonPipelineTriggerDataSourceConfigBasic(triggerPipeline
`, rgName, tcName, triggerType, triggerName, triggerEventListener)
}

func testAccCheckIBMCdTektonPipelineTriggerDataSourceConfig(triggerPipelineID string, triggerType string, triggerName string, triggerEventListener string, triggerMaxConcurrentRuns string, triggerEnabled string, triggerCron string, triggerTimezone string) string {
func testAccCheckIBMCdTektonPipelineTriggerDataSourceConfig(triggerPipelineID string, triggerType string, triggerName string, triggerEventListener string, triggerMaxConcurrentRuns string, triggerEnabled string, triggerFavorite string, triggerCron string, triggerTimezone string) string {
rgName := acc.CdResourceGroupName
tcName := fmt.Sprintf("tf_name_%d", acctest.RandIntRange(10, 100))
return fmt.Sprintf(`
Expand Down
Loading

0 comments on commit f4cf624

Please sign in to comment.