diff --git a/.github/scripts/update_generation_config.sh b/.github/scripts/update_generation_config.sh index 24d97abee3..f448fafd7d 100644 --- a/.github/scripts/update_generation_config.sh +++ b/.github/scripts/update_generation_config.sh @@ -48,13 +48,14 @@ function update_config() { } # Update an action to a new version in GitHub action. +# the second argument must have the git tag (including "v"). function update_action() { local key_word=$1 local new_value=$2 local file=$3 echo "Update ${key_word} to ${new_value} in ${file}" # use a different delimiter because the key_word contains "/". - sed -i -e "s|${key_word}@v.*$|${key_word}@v${new_value}|" "${file}" + sed -i -e "s|${key_word}@[^ ]*$|${key_word}@${new_value}|" "${file}" } # The parameters of this script is: @@ -143,12 +144,16 @@ rm -rf tmp-googleapis update_config "googleapis_commitish" "${latest_commit}" "${generation_config}" # Update gapic-generator-java version to the latest -latest_version=$(get_latest_released_version "com.google.api" "gapic-generator-java") -update_config "gapic_generator_version" "${latest_version}" "${generation_config}" - -# Update composite action version to latest gapic-generator-java version +latest_gapic_generator_version=$(get_latest_released_version "com.google.api" "gapic-generator-java") +update_config "gapic_generator_version" "${latest_gapic_generator_version}" "${generation_config}" + +# Update the GitHub Actions reference to the latest. +# After the google-cloud-java monorepo migration of sdk-platform-java, +# we cannot rely on the gapic-generator-java version tag. Let's use +# the gapic-libraries-bom version +latest_gapic_libraries_bom_version=$(get_latest_released_version "com.google.cloud" "gapic-libraries-bom") update_action "googleapis/google-cloud-java/sdk-platform-java/.github/scripts" \ - "${latest_version}" \ + "v${latest_gapic_libraries_bom_version}" \ "${workflow}" # Update libraries-bom version to the latest diff --git a/.github/workflows/renovate_config_check.yaml b/.github/workflows/renovate_config_check.yaml index 47b9e87c98..8c922936b9 100644 --- a/.github/workflows/renovate_config_check.yaml +++ b/.github/workflows/renovate_config_check.yaml @@ -4,6 +4,7 @@ on: pull_request: paths: - 'renovate.json' + - '.github/workflows/renovate_config_check.yaml' jobs: renovate_bot_config_validation: @@ -18,8 +19,6 @@ jobs: with: node-version: '22' - - name: Install Renovate and Config Validator + - name: Run Renovate Config Validator run: | - npm install -g npm@latest - npm install --global renovate - renovate-config-validator + npx --package renovate@43.136.0 renovate-config-validator diff --git a/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/BaseBigtableInstanceAdminClient.java b/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/BaseBigtableInstanceAdminClient.java index aadfd5b638..d78b81d216 100644 --- a/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/BaseBigtableInstanceAdminClient.java +++ b/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/BaseBigtableInstanceAdminClient.java @@ -777,7 +777,7 @@ public class BaseBigtableInstanceAdminClient implements BackgroundResource { private final OperationsClient operationsClient; /** Constructs an instance of BaseBigtableInstanceAdminClient with default settings. */ - public static final BaseBigtableInstanceAdminClient create() throws IOException { + public static BaseBigtableInstanceAdminClient create() throws IOException { return create(BaseBigtableInstanceAdminSettings.newBuilder().build()); } @@ -786,8 +786,8 @@ public static final BaseBigtableInstanceAdminClient create() throws IOException * channels are created based on the settings passed in, or defaults for any settings that are not * set. */ - public static final BaseBigtableInstanceAdminClient create( - BaseBigtableInstanceAdminSettings settings) throws IOException { + public static BaseBigtableInstanceAdminClient create(BaseBigtableInstanceAdminSettings settings) + throws IOException { return new BaseBigtableInstanceAdminClient(settings); } @@ -795,7 +795,7 @@ public static final BaseBigtableInstanceAdminClient create( * Constructs an instance of BaseBigtableInstanceAdminClient, using the given stub for making * calls. This is for advanced usage - prefer using create(BaseBigtableInstanceAdminSettings). */ - public static final BaseBigtableInstanceAdminClient create(BigtableInstanceAdminStub stub) { + public static BaseBigtableInstanceAdminClient create(BigtableInstanceAdminStub stub) { return new BaseBigtableInstanceAdminClient(stub); } diff --git a/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/BaseBigtableTableAdminClient.java b/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/BaseBigtableTableAdminClient.java index 7caa206d32..444b628018 100644 --- a/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/BaseBigtableTableAdminClient.java +++ b/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/BaseBigtableTableAdminClient.java @@ -870,7 +870,7 @@ public class BaseBigtableTableAdminClient implements BackgroundResource { private final OperationsClient operationsClient; /** Constructs an instance of BaseBigtableTableAdminClient with default settings. */ - public static final BaseBigtableTableAdminClient create() throws IOException { + public static BaseBigtableTableAdminClient create() throws IOException { return create(BaseBigtableTableAdminSettings.newBuilder().build()); } @@ -878,7 +878,7 @@ public static final BaseBigtableTableAdminClient create() throws IOException { * Constructs an instance of BaseBigtableTableAdminClient, using the given settings. The channels * are created based on the settings passed in, or defaults for any settings that are not set. */ - public static final BaseBigtableTableAdminClient create(BaseBigtableTableAdminSettings settings) + public static BaseBigtableTableAdminClient create(BaseBigtableTableAdminSettings settings) throws IOException { return new BaseBigtableTableAdminClient(settings); } @@ -887,7 +887,7 @@ public static final BaseBigtableTableAdminClient create(BaseBigtableTableAdminSe * Constructs an instance of BaseBigtableTableAdminClient, using the given stub for making calls. * This is for advanced usage - prefer using create(BaseBigtableTableAdminSettings). */ - public static final BaseBigtableTableAdminClient create(BigtableTableAdminStub stub) { + public static BaseBigtableTableAdminClient create(BigtableTableAdminStub stub) { return new BaseBigtableTableAdminClient(stub); } diff --git a/owlbot.py b/owlbot.py index f3f71fd2aa..e0f7994078 100644 --- a/owlbot.py +++ b/owlbot.py @@ -67,6 +67,14 @@ def make_internal_only(sources): if os.path.exists("owl-bot-staging/v2/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/package-info.java"): os.remove("owl-bot-staging/v2/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/package-info.java") + # Remove the 'final' modifier from all static create() factory methods in the Base Admin clients + # This allows our handwritten Selective GAPIC subclasses to hide these methods. + s.replace( + f"{library}/**/BaseBigtable*AdminClient.java", + r"public static final BaseBigtable(.*)AdminClient create\(", + r"public static BaseBigtable\1AdminClient create(" + ) + s.move(library) s.remove_staging_dirs()