Skip to content

Lint

Lint #922

Workflow file for this run

# Copyright 2023 The StableHLO Authors.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# https://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
name: Lint
on:
pull_request:
branches: [ main ]
push:
branches: [ main ]
schedule:
# Run once a day
- cron: '0 12 * * *'
workflow_dispatch:
env:
# Have `go install` place binaries in $PATH
GOBIN: "/usr/local/bin"
jobs:
clang-format:
# This job can only be run on pull_request since GITHUB_BASE_REF is only set on PR.
# In forks, run this on public GH runners. 64core infra will ignore jobs from forks.
if: "github.event_name == 'pull_request'"
runs-on: ${{ github.repository == 'openxla/stablehlo' && 'ubuntu-22.04-64core' || 'ubuntu-22.04' }}
steps:
- name: Checking out repository
uses: actions/checkout@v4
- name: Run clang-format
run: |
git fetch --no-tags --prune --depth=1 origin "${GITHUB_BASE_REF?}:${GITHUB_BASE_REF?}"
./build_tools/github_actions/lint_clang_format.sh -b "${GITHUB_BASE_REF}"
whitespace-checks:
if: "github.event_name == 'pull_request'"
runs-on: ${{ github.repository == 'openxla/stablehlo' && 'ubuntu-22.04-64core' || 'ubuntu-22.04' }}
steps:
- name: Checking out repository
uses: actions/checkout@v4
- name: Run Whitespace Checks
run: |
git fetch --no-tags --prune --depth=1 origin "${GITHUB_BASE_REF?}:${GITHUB_BASE_REF?}"
./build_tools/github_actions/lint_whitespace_checks.sh
version-checks:
if: "github.event_name == 'pull_request'"
runs-on: ${{ github.repository == 'openxla/stablehlo' && 'ubuntu-22.04-64core' || 'ubuntu-22.04' }}
steps:
- name: Checking out repository
uses: actions/checkout@v4
- name: Run Version Checks
run: |
./build_tools/github_actions/lint_version.sh
buildifier-check:
if: "github.event_name == 'pull_request'"
runs-on: ${{ github.repository == 'openxla/stablehlo' && 'ubuntu-22.04-64core' || 'ubuntu-22.04' }}
defaults:
run:
shell: bash
steps:
- name: Checking out repository
uses: actions/checkout@v4
- name: Install buildifier
run: go install github.com/bazelbuild/buildtools/buildifier@433ea85 # 6.4.0
- name: Run buildifier checks
run: ./build_tools/github_actions/lint_buildifier.sh
license-check:
if: "github.event_name == 'pull_request'"
runs-on: ${{ github.repository == 'openxla/stablehlo' && 'ubuntu-22.04-64core' || 'ubuntu-22.04' }}
defaults:
run:
shell: bash
steps:
- name: Checking out repository
uses: actions/checkout@v4
- name: Run license checks
run: |
git fetch --no-tags --prune --depth=1 origin "${GITHUB_BASE_REF?}:${GITHUB_BASE_REF?}"
./build_tools/github_actions/lint_check_license.sh -b "${GITHUB_BASE_REF}"
shell-script-check:
if: "github.event_name == 'pull_request'"
runs-on: ${{ github.repository == 'openxla/stablehlo' && 'ubuntu-22.04-64core' || 'ubuntu-22.04' }}
defaults:
run:
shell: bash
steps:
- name: Checking out repository
uses: actions/checkout@v4
# shellcheck is installed by default on Ubuntu runners: https://github.com/actions/runner-images/blob/37a171e44de1f134793d7f0cbff137ca481942ab/images/ubuntu/Ubuntu2204-Readme.md
- name: Run shellcheck
run: ./build_tools/github_actions/lint_shellcheck.sh