summaryrefslogtreecommitdiff
path: root/third_party/googleapis/.github/workflows/diregapic.yaml
blob: 7e1d3db3e13288e95a5b219047e7074527b2414c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
---
name: DIREGAPIC Updater
on:  # yamllint disable-line rule:truthy
  schedule:
  - cron: '19 */8 * * *'
  workflow_dispatch:

jobs:
  regenerate-compute:
    runs-on: ubuntu-latest
    container: gcr.io/gapic-images/googleapis:20220711
    steps:
    - name: Checkout master
      uses: actions/checkout@v3
      with:
        ref: master
    - name: Download discovery docs
      run: |
        curl https://www.googleapis.com/discovery/v1/apis/compute/v1/rest --output google/cloud/compute/v1/compute.v1.json
        echo compute_revision=$(grep -oP '"revision":\s*"\d+"' google/cloud/compute/v1/compute.v1.json | grep -oP '\d+') >> $GITHUB_ENV
    - name: Regenerate API definitions
      run: |
        bazel build //google/cloud/compute/v1:compute_gen
        cp bazel-bin/google/cloud/compute/v1/compute_gen.proto google/cloud/compute/v1/compute.proto
        bazel build //google/cloud/compute/v1:compute_grpc_service_config_gen
        cp bazel-bin/google/cloud/compute/v1/compute_grpc_service_config_gen.json google/cloud/compute/v1/compute_grpc_service_config.json
        bazel build //google/cloud/compute/v1:compute_gapic_gen
        cp bazel-bin/google/cloud/compute/v1/compute_gapic_gen.yaml google/cloud/compute/v1/compute_gapic.yaml
        echo api_changes=$(git diff-index --shortstat HEAD) >> $GITHUB_ENV
    - name: Build GAPIC clients
      if: contains(env.api_changes, 'file')
      run: |
        bazel build //google/cloud/compute/v1/...
        bazel build //google/cloud/compute/v1/...
    - name: Create PR
      uses: googleapis/code-suggester@v2
      env:
        ACCESS_TOKEN: ${{ secrets.YOSHI_CODE_BOT_TOKEN }}
      with:
        command: pr
        upstream_owner: googleapis
        upstream_repo: googleapis
        title: 'feat: [DIREGAPIC] Update API definitions'
        description: 'feat: Update Compute Engine API to revision ${{ env.compute_revision }}'
        message: 'feat: Update Compute Engine API to revision ${{ env.compute_revision }}'
        primary: 'master'
        branch: diregapic
        git_dir: '.'
        force: true
        fork: true