vitess.io/vitess@v0.16.2/.github/workflows/check_make_vtadmin_authz_testgen.yml (about)

     1  name: check_make_vtadmin_authz_testgen
     2  on: [push, pull_request]
     3  jobs:
     4  
     5    build:
     6      name: Check Make vtadmin_authz_testgen
     7      runs-on: ubuntu-22.04
     8      steps:
     9      - name: Skip CI
    10        run: |
    11          if [[ "${{contains( github.event.pull_request.labels.*.name, 'Skip CI')}}" == "true" ]]; then
    12            echo "skipping CI due to the 'Skip CI' label"
    13            exit 1
    14          fi
    15  
    16      - name: Check if workflow needs to be skipped
    17        id: skip-workflow
    18        run: |
    19          skip='false'
    20          if [[ "${{github.event.pull_request}}" ==  "" ]] && [[ "${{github.ref}}" != "refs/heads/main" ]] && [[ ! "${{github.ref}}" =~ ^refs/heads/release-[0-9]+\.[0-9]$ ]] && [[ ! "${{github.ref}}" =~ "refs/tags/.*" ]]; then
    21            skip='true'
    22          fi
    23          echo Skip ${skip}
    24          echo "skip-workflow=${skip}" >> $GITHUB_OUTPUT
    25  
    26      - name: Check out code
    27        if: steps.skip-workflow.outputs.skip-workflow == 'false'
    28        uses: actions/checkout@v3
    29  
    30      - name: Check for changes in relevant files
    31        if: steps.skip-workflow.outputs.skip-workflow == 'false'
    32        uses: frouioui/paths-filter@main
    33        id: changes
    34        with:
    35          token: ''
    36          filters: |
    37            vtadmin_changes:
    38              - 'bootstrap.sh'
    39              - 'tools/**'
    40              - 'build.env'
    41              - 'go.sum'
    42              - 'go.mod'
    43              - 'Makefile'
    44              - 'go/vt/vtadmin/**'
    45              - '.github/workflows/check_make_vtadmin_authz_testgen.yml'
    46  
    47      - name: Set up Go
    48        uses: actions/setup-go@v3
    49        if: steps.skip-workflow.outputs.skip-workflow == 'false' && steps.changes.outputs.vtadmin_changes == 'true'
    50        with:
    51          go-version: 1.20.3
    52  
    53      - name: Tune the OS
    54        if: steps.skip-workflow.outputs.skip-workflow == 'false' && steps.changes.outputs.vtadmin_changes == 'true'
    55        run: |
    56          sudo sysctl -w net.ipv4.ip_local_port_range="22768 65535"
    57  
    58      - name: Get dependencies
    59        if: steps.skip-workflow.outputs.skip-workflow == 'false' && steps.changes.outputs.vtadmin_changes == 'true'
    60        run: |
    61          sudo apt-get update
    62          sudo apt-get install -y make unzip g++ etcd curl git wget
    63          sudo service etcd stop
    64          go mod download
    65          go install golang.org/x/tools/cmd/goimports@latest
    66  
    67      - name: Run make minimaltools
    68        if: steps.skip-workflow.outputs.skip-workflow == 'false' && steps.changes.outputs.vtadmin_changes == 'true'
    69        run: |
    70          make minimaltools
    71  
    72      - name: check_make_vtadmin_authz_testgen
    73        if: steps.skip-workflow.outputs.skip-workflow == 'false' && steps.changes.outputs.vtadmin_changes == 'true'
    74        run: |
    75          tools/check_make_vtadmin_authz_testgen.sh