name: Build Check on: push: branches: [ main ] pull_request: branches: [ main ] jobs: docker-pull: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - run: make docker-pull gen-cpp: needs: docker-pull runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - run: make gen-cpp gen-csharp: needs: docker-pull runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - run: make gen-csharp gen-go: needs: docker-pull runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - run: make gen-go gen-java: needs: docker-pull runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - run: make gen-java gen-objc: needs: docker-pull runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - run: make gen-objc gen-openapi: needs: docker-pull runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - run: make gen-openapi gen-php: needs: docker-pull runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - run: make gen-php gen-python: needs: docker-pull runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - run: make gen-python gen-ruby: needs: docker-pull runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - run: make gen-ruby gen-kotlin: needs: docker-pull runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - run: make gen-kotlin breaking-change: needs: docker-pull runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 # breaking-change checks against last published release which is determined # using the last published tag - name: Get tags run: git fetch --tags origin - name: Run make breaking-change with json output to annotate PR # Formats JSON output into Github workflow commands # https://docs.github.com/en/actions/using-workflows/workflow-commands-for-github-actions#setting-an-error-message run: > BUF_FLAGS="--error-format json" make -s breaking-change | jq -rs '.[] | "::error file=\(.path),line=\(.start_line),endLine=\(.end_line),title=Buf detected breaking change \(.type)::\(.message)"' ; (exit ${PIPESTATUS[0]}) markdown-link-check: runs-on: ubuntu-latest steps: - name: check out code uses: actions/checkout@v2 - name: install dependencies run: npm install - name: run markdown-link-check run: make markdown-link-check markdownlint: runs-on: ubuntu-latest steps: - name: check out code uses: actions/checkout@v2 - name: install dependencies run: npm install - name: run markdownlint run: make markdownlint