diff --git a/.github/workflows/sdk-component-yaml.yml b/.github/workflows/sdk-component-yaml.yml new file mode 100644 index 00000000000..316ce85caca --- /dev/null +++ b/.github/workflows/sdk-component-yaml.yml @@ -0,0 +1,56 @@ +name: KFP Component YAML Test + +on: + push: + branches: [master] + + pull_request: + paths: + - 'components/**/*.yaml' + - 'test/presubmit-component-yaml.sh' + - 'sdk/python/**' + - 'api/v2alpha1/**' + - '.github/workflows/sdk-component-yaml.yml' + +jobs: + test-component-yaml-kfp: + runs-on: ubuntu-24.04 + steps: + - name: Checkout code + uses: actions/checkout@v4 + + - name: Set up Python + uses: actions/setup-python@v4 + with: + python-version: 3.8 + + - name: apt-get update + run: sudo apt-get update + + - name: Install protobuf-compiler + run: sudo apt-get install protobuf-compiler -y + + - name: Install setuptools + run: | + pip3 install setuptools + pip3 freeze + + - name: Install Wheel + run: pip3 install wheel==0.42.0 + + - name: Install protobuf + run: pip3 install protobuf==4.25.3 + + - name: Generate API proto files + working-directory: ./api + run: make clean python + + - name: Install kfp-pipeline-spec from source + run: | + python3 -m pip install api/v2alpha1/python + + - name: Install requirements + run: pip install -r ./test/sdk-execution-tests/requirements.txt + + - name: Run component YAML tests + run: ./test/presubmit-component-yaml.sh diff --git a/.github/workflows/sdk-docformatter.yml b/.github/workflows/sdk-docformatter.yml new file mode 100644 index 00000000000..83b583ca3aa --- /dev/null +++ b/.github/workflows/sdk-docformatter.yml @@ -0,0 +1,26 @@ +name: KFP SDK Docformatter Test + +on: + push: + branches: [master] + + pull_request: + paths: + - 'sdk/python/**' + - 'test/presubmit-docformatter-sdk.sh' + - '.github/workflows/sdk-docformatter.yml' + +jobs: + test-docformatter-kfp-sdk: + runs-on: ubuntu-24.04 + steps: + - name: Checkout code + uses: actions/checkout@v4 + + - name: Set up Python + uses: actions/setup-python@v4 + with: + python-version: 3.8 + + - name: Run docformatter tests + run: ./test/presubmit-docformatter-sdk.sh diff --git a/.github/workflows/sdk-isort.yml b/.github/workflows/sdk-isort.yml new file mode 100644 index 00000000000..05124d19378 --- /dev/null +++ b/.github/workflows/sdk-isort.yml @@ -0,0 +1,26 @@ +name: KFP SDK Isort Test + +on: + push: + branches: [master] + + pull_request: + paths: + - 'sdk/python/**' + - 'test/presubmit-isort-sdk.sh' + - '.github/workflows/sdk-isort.yml' + +jobs: + test-isort-kfp-sdk: + runs-on: ubuntu-24.04 + steps: + - name: Checkout code + uses: actions/checkout@v4 + + - name: Set up Python + uses: actions/setup-python@v4 + with: + python-version: 3.8 + + - name: Run isort tests + run: ./test/presubmit-isort-sdk.sh