Class: Google::Apis::CloudbuildV1::BuildTrigger

Inherits:
Object
  • Object
show all
Includes:
Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
Defined in:
lib/google/apis/cloudbuild_v1/classes.rb,
lib/google/apis/cloudbuild_v1/representations.rb,
lib/google/apis/cloudbuild_v1/representations.rb

Overview

Configuration for an automated build in response to source repository changes.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ BuildTrigger

Returns a new instance of BuildTrigger.



1542
1543
1544
# File 'lib/google/apis/cloudbuild_v1/classes.rb', line 1542

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#approval_configGoogle::Apis::CloudbuildV1::ApprovalConfig

ApprovalConfig describes configuration for manual approval of a build. Corresponds to the JSON property approvalConfig



1355
1356
1357
# File 'lib/google/apis/cloudbuild_v1/classes.rb', line 1355

def approval_config
  @approval_config
end

#autodetectBoolean Also known as: autodetect?

Autodetect build configuration. The following precedence is used (case insensitive): 1. cloudbuild.yaml 2. cloudbuild.yml 3. cloudbuild.json 4. Dockerfile Currently only available for GitHub App Triggers. Corresponds to the JSON property autodetect

Returns:

  • (Boolean)


1362
1363
1364
# File 'lib/google/apis/cloudbuild_v1/classes.rb', line 1362

def autodetect
  @autodetect
end

#bitbucket_server_trigger_configGoogle::Apis::CloudbuildV1::BitbucketServerTriggerConfig

BitbucketServerTriggerConfig describes the configuration of a trigger that creates a build whenever a Bitbucket Server event is received. Corresponds to the JSON property bitbucketServerTriggerConfig



1369
1370
1371
# File 'lib/google/apis/cloudbuild_v1/classes.rb', line 1369

def bitbucket_server_trigger_config
  @bitbucket_server_trigger_config
end

#buildGoogle::Apis::CloudbuildV1::Build

A build resource in the Cloud Build API. At a high level, a Build describes where to find source code, how to build it (for example, the builder image to run on the source), and where to store the built artifacts. Fields can include the following variables, which will be expanded when the build is created: - $ PROJECT_ID: the project ID of the build. - $PROJECT_NUMBER: the project number of the build. - $LOCATION: the location/region of the build. - $BUILD_ID: the autogenerated ID of the build. - $REPO_NAME: the source repository name specified by RepoSource. - $BRANCH_NAME: the branch name specified by RepoSource. - $TAG_NAME: the tag name specified by RepoSource. - $REVISION_ID or $COMMIT_SHA: the commit SHA specified by RepoSource or resolved from the specified branch or tag. - $SHORT_SHA: first 7 characters of $REVISION_ID or $ COMMIT_SHA. Corresponds to the JSON property build



1385
1386
1387
# File 'lib/google/apis/cloudbuild_v1/classes.rb', line 1385

def build
  @build
end

#create_timeString

Output only. Time when the trigger was created. Corresponds to the JSON property createTime

Returns:

  • (String)


1390
1391
1392
# File 'lib/google/apis/cloudbuild_v1/classes.rb', line 1390

def create_time
  @create_time
end

#descriptionString

Human-readable description of this trigger. Corresponds to the JSON property description

Returns:

  • (String)


1395
1396
1397
# File 'lib/google/apis/cloudbuild_v1/classes.rb', line 1395

def description
  @description
end

#developer_connect_event_configGoogle::Apis::CloudbuildV1::DeveloperConnectEventConfig

The configuration of a trigger that creates a build whenever an event from the DeveloperConnect API is received. Corresponds to the JSON property developerConnectEventConfig



1401
1402
1403
# File 'lib/google/apis/cloudbuild_v1/classes.rb', line 1401

def developer_connect_event_config
  @developer_connect_event_config
end

#disabledBoolean Also known as: disabled?

If true, the trigger will never automatically execute a build. Corresponds to the JSON property disabled

Returns:

  • (Boolean)


1406
1407
1408
# File 'lib/google/apis/cloudbuild_v1/classes.rb', line 1406

def disabled
  @disabled
end

#event_typeString

EventType allows the user to explicitly set the type of event to which this BuildTrigger should respond. This field will be validated against the rest of the configuration if it is set. Corresponds to the JSON property eventType

Returns:

  • (String)


1414
1415
1416
# File 'lib/google/apis/cloudbuild_v1/classes.rb', line 1414

def event_type
  @event_type
end

#filenameString

Path, from the source root, to the build configuration file (i.e. cloudbuild. yaml). Corresponds to the JSON property filename

Returns:

  • (String)


1420
1421
1422
# File 'lib/google/apis/cloudbuild_v1/classes.rb', line 1420

def filename
  @filename
end

#filterString

A Common Expression Language string. Corresponds to the JSON property filter

Returns:

  • (String)


1425
1426
1427
# File 'lib/google/apis/cloudbuild_v1/classes.rb', line 1425

def filter
  @filter
end

#git_file_sourceGoogle::Apis::CloudbuildV1::GitFileSource

GitFileSource describes a file within a (possibly remote) code repository. Corresponds to the JSON property gitFileSource



1430
1431
1432
# File 'lib/google/apis/cloudbuild_v1/classes.rb', line 1430

def git_file_source
  @git_file_source
end

#githubGoogle::Apis::CloudbuildV1::GitHubEventsConfig

GitHubEventsConfig describes the configuration of a trigger that creates a build whenever a GitHub event is received. Corresponds to the JSON property github



1436
1437
1438
# File 'lib/google/apis/cloudbuild_v1/classes.rb', line 1436

def github
  @github
end

#gitlab_enterprise_events_configGoogle::Apis::CloudbuildV1::GitLabEventsConfig

Deprecated: CloudBuild GitLab V1 integration is deprecated. GitLabEventsConfig describes the configuration of a trigger that creates a build whenever a GitLab event is received. Corresponds to the JSON property gitlabEnterpriseEventsConfig



1443
1444
1445
# File 'lib/google/apis/cloudbuild_v1/classes.rb', line 1443

def gitlab_enterprise_events_config
  @gitlab_enterprise_events_config
end

#idString

Output only. Unique identifier of the trigger. Corresponds to the JSON property id

Returns:

  • (String)


1448
1449
1450
# File 'lib/google/apis/cloudbuild_v1/classes.rb', line 1448

def id
  @id
end

#ignored_filesArray<String>

ignored_files and included_files are file glob matches using https://golang. org/pkg/path/filepath/#Match extended with support for "**". If ignored_files and changed files are both empty, then they are not used to determine whether or not to trigger a build. If ignored_files is not empty, then we ignore any files that match any of the ignored_file globs. If the change has no files that are outside of the ignored_files globs, then we do not trigger a build. Corresponds to the JSON property ignoredFiles

Returns:

  • (Array<String>)


1458
1459
1460
# File 'lib/google/apis/cloudbuild_v1/classes.rb', line 1458

def ignored_files
  @ignored_files
end

#include_build_logsString

If set to INCLUDE_BUILD_LOGS_WITH_STATUS, log url will be shown on GitHub page when build status is final. Setting this field to INCLUDE_BUILD_LOGS_WITH_STATUS for non GitHub triggers results in INVALID_ARGUMENT error. Corresponds to the JSON property includeBuildLogs

Returns:

  • (String)


1466
1467
1468
# File 'lib/google/apis/cloudbuild_v1/classes.rb', line 1466

def include_build_logs
  @include_build_logs
end

#included_filesArray<String>

If any of the files altered in the commit pass the ignored_files filter and included_files is empty, then as far as this filter is concerned, we should trigger the build. If any of the files altered in the commit pass the ignored_files filter and included_files is not empty, then we make sure that at least one of those files matches a included_files glob. If not, then we do not trigger a build. Corresponds to the JSON property includedFiles

Returns:

  • (Array<String>)


1476
1477
1478
# File 'lib/google/apis/cloudbuild_v1/classes.rb', line 1476

def included_files
  @included_files
end

#nameString

User-assigned name of the trigger. Must be unique within the project. Trigger names must meet the following requirements: + They must contain only alphanumeric characters and dashes. + They can be 1-64 characters long. + They must begin and end with an alphanumeric character. Corresponds to the JSON property name

Returns:

  • (String)


1484
1485
1486
# File 'lib/google/apis/cloudbuild_v1/classes.rb', line 1484

def name
  @name
end

#pubsub_configGoogle::Apis::CloudbuildV1::PubsubConfig

PubsubConfig describes the configuration of a trigger that creates a build whenever a Pub/Sub message is published. Corresponds to the JSON property pubsubConfig



1490
1491
1492
# File 'lib/google/apis/cloudbuild_v1/classes.rb', line 1490

def pubsub_config
  @pubsub_config
end

#repository_event_configGoogle::Apis::CloudbuildV1::RepositoryEventConfig

The configuration of a trigger that creates a build whenever an event from Repo API is received. Corresponds to the JSON property repositoryEventConfig



1496
1497
1498
# File 'lib/google/apis/cloudbuild_v1/classes.rb', line 1496

def repository_event_config
  @repository_event_config
end

#resource_nameString

The Trigger name with format: projects/project/locations/location/ triggers/trigger`, wheretriggeris a unique identifier generated by the service. Corresponds to the JSON propertyresourceName`

Returns:

  • (String)


1503
1504
1505
# File 'lib/google/apis/cloudbuild_v1/classes.rb', line 1503

def resource_name
  @resource_name
end

#service_accountString

The service account used for all user-controlled operations including UpdateBuildTrigger, RunBuildTrigger, CreateBuild, and CancelBuild. If no service account is set and the legacy Cloud Build service account ([ PROJECT_NUM]@cloudbuild.gserviceaccount.com) is the default for the project then it will be used instead. Format: projects/PROJECT_ID/serviceAccounts/ ACCOUNT_ID_OR_EMAIL` Corresponds to the JSON propertyserviceAccount`

Returns:

  • (String)


1513
1514
1515
# File 'lib/google/apis/cloudbuild_v1/classes.rb', line 1513

def 
  @service_account
end

#source_to_buildGoogle::Apis::CloudbuildV1::GitRepoSource

GitRepoSource describes a repo and ref of a code repository. Corresponds to the JSON property sourceToBuild



1518
1519
1520
# File 'lib/google/apis/cloudbuild_v1/classes.rb', line 1518

def source_to_build
  @source_to_build
end

#substitutionsHash<String,String>

Substitutions for Build resource. The keys must match the following regular expression: ^_[A-Z0-9_]+$. Corresponds to the JSON property substitutions

Returns:

  • (Hash<String,String>)


1524
1525
1526
# File 'lib/google/apis/cloudbuild_v1/classes.rb', line 1524

def substitutions
  @substitutions
end

#tagsArray<String>

Tags for annotation of a BuildTrigger Corresponds to the JSON property tags

Returns:

  • (Array<String>)


1529
1530
1531
# File 'lib/google/apis/cloudbuild_v1/classes.rb', line 1529

def tags
  @tags
end

#trigger_templateGoogle::Apis::CloudbuildV1::RepoSource

Location of the source in a Google Cloud Source Repository. Corresponds to the JSON property triggerTemplate



1534
1535
1536
# File 'lib/google/apis/cloudbuild_v1/classes.rb', line 1534

def trigger_template
  @trigger_template
end

#webhook_configGoogle::Apis::CloudbuildV1::WebhookConfig

WebhookConfig describes the configuration of a trigger that creates a build whenever a webhook is sent to a trigger's webhook URL. Corresponds to the JSON property webhookConfig



1540
1541
1542
# File 'lib/google/apis/cloudbuild_v1/classes.rb', line 1540

def webhook_config
  @webhook_config
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
# File 'lib/google/apis/cloudbuild_v1/classes.rb', line 1547

def update!(**args)
  @approval_config = args[:approval_config] if args.key?(:approval_config)
  @autodetect = args[:autodetect] if args.key?(:autodetect)
  @bitbucket_server_trigger_config = args[:bitbucket_server_trigger_config] if args.key?(:bitbucket_server_trigger_config)
  @build = args[:build] if args.key?(:build)
  @create_time = args[:create_time] if args.key?(:create_time)
  @description = args[:description] if args.key?(:description)
  @developer_connect_event_config = args[:developer_connect_event_config] if args.key?(:developer_connect_event_config)
  @disabled = args[:disabled] if args.key?(:disabled)
  @event_type = args[:event_type] if args.key?(:event_type)
  @filename = args[:filename] if args.key?(:filename)
  @filter = args[:filter] if args.key?(:filter)
  @git_file_source = args[:git_file_source] if args.key?(:git_file_source)
  @github = args[:github] if args.key?(:github)
  @gitlab_enterprise_events_config = args[:gitlab_enterprise_events_config] if args.key?(:gitlab_enterprise_events_config)
  @id = args[:id] if args.key?(:id)
  @ignored_files = args[:ignored_files] if args.key?(:ignored_files)
  @include_build_logs = args[:include_build_logs] if args.key?(:include_build_logs)
  @included_files = args[:included_files] if args.key?(:included_files)
  @name = args[:name] if args.key?(:name)
  @pubsub_config = args[:pubsub_config] if args.key?(:pubsub_config)
  @repository_event_config = args[:repository_event_config] if args.key?(:repository_event_config)
  @resource_name = args[:resource_name] if args.key?(:resource_name)
  @service_account = args[:service_account] if args.key?(:service_account)
  @source_to_build = args[:source_to_build] if args.key?(:source_to_build)
  @substitutions = args[:substitutions] if args.key?(:substitutions)
  @tags = args[:tags] if args.key?(:tags)
  @trigger_template = args[:trigger_template] if args.key?(:trigger_template)
  @webhook_config = args[:webhook_config] if args.key?(:webhook_config)
end