ci: Stub out CI for new python package #2263
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# TODO: Use Makefile provided in CI (might have to move to docker builds in CI or drop docker in Makefile) | |
# TODO: Move ent generation out of build jon. Tried but something was off with cacing and builds would fail | |
on: | |
pull_request: | |
branches: [ main ] | |
push: | |
branches: [ main ] | |
merge_group: | |
branches: [ main ] | |
# In cases of concurrent workflows running (consecutive pushes to PR) | |
# leave the latest workflow and cancel the other (older) workflows | |
# See https://docs.github.com/en/actions/using-jobs/using-concurrency | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }} | |
cancel-in-progress: true | |
permissions: | |
actions: write | |
contents: read | |
name: CLI Client CI | |
jobs: | |
cli_client_skip: | |
name: CLI Client Skip Duplicates | |
continue-on-error: true # Uncomment once integration is finished | |
runs-on: ubuntu-latest | |
# Map a step output to a job output | |
outputs: | |
should_skip: ${{ steps.skip_check.outputs.should_skip }} | |
run_id: ${{ fromJSON(steps.skip_check.outputs.skipped_by).id }} | |
steps: | |
- id: skip_check | |
uses: fkirc/skip-duplicate-actions@v5 | |
with: | |
concurrent_skipping: "never" | |
skip_after_successful_duplicate: "true" | |
paths: '["clients/cli/**", "proto/**/*.proto"]' | |
do_not_skip: '["workflow_dispatch", "schedule"]' | |
cli_client_build_and_test: | |
name: Build and Unit Test CLI Client | |
needs: [cli_client_skip] | |
if: needs.cli_client_skip.outputs.should_skip != 'true' | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout sources | |
uses: actions/checkout@v3 | |
- name: Install Buf | |
uses: bufbuild/[email protected] | |
with: | |
version: "1.17.0" | |
buf_user: ${{ secrets.BUF_USER }} | |
buf_api_token: ${{ secrets.BUF_API_TOKEN }} | |
github_token: ${{ secrets.GITHUB_TOKEN }} | |
- name: Generate Protos | |
run: buf generate | |
working-directory: proto | |
- name: Install GoLang | |
uses: actions/setup-go@v3 | |
with: | |
go-version: "1.19" | |
cache: true | |
cache-dependency-path: clients/cli/go.sum | |
- name: Copy NOTICE | |
run: cp NOTICE ./clients/cli/ | |
- name: Build | |
run: go build main.go | |
working-directory: clients/cli | |
- name: Unit Tests | |
run: go test ./... | |
working-directory: clients/cli |