diff --git a/.github/workflows/job-precommit-java-mqtt-io.yml b/.github/workflows/job-precommit-java-mqtt-io.yml new file mode 100644 index 000000000000..bda11e41bee7 --- /dev/null +++ b/.github/workflows/job-precommit-java-mqtt-io.yml @@ -0,0 +1,55 @@ +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you 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 +# +# http://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. + +# This workflow will run MQTT IO Unit Tests in Java SDK + +name: Java MQTT IO + +on: + schedule: + - cron: '0 */6 * * *' + push: + branches: ['master', 'release-*'] + tags: ['v*'] + pull_request: + branches: ['master', 'release-*'] + tags: ['v*'] +# paths: ['sdks/java/io/mqtt/**'] +permissions: read-all + +jobs: + java-mqtt-io: + name: Run Java MQTT IO + runs-on: self-hosted + timeout-minutes: 60 + steps: + - name: Checkout code + uses: actions/checkout@v3 + with: + persist-credentials: false + submodules: recursive + - name: Setup environment + uses: ./.github/actions/setup-self-hosted-action + with: + requires-py-37: false + requires-py-38: false + requires-py-39: false + requires-go-18: false + - name: Run :sdks:java:io:mqtt:test + uses: ./.github/actions/gradle-command-self-hosted-action + with: + gradle-command: :sdks:java:io:mqtt:test \ No newline at end of file diff --git a/.github/workflows/job-precommit-java-parquet-io.yml b/.github/workflows/job-precommit-java-parquet-io.yml new file mode 100644 index 000000000000..455b5c23729e --- /dev/null +++ b/.github/workflows/job-precommit-java-parquet-io.yml @@ -0,0 +1,55 @@ +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you 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 +# +# http://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. + +# This workflow will run Parquet IO Unit Tests in Java SDK + +name: Java Parquet IO + +on: + schedule: + - cron: '0 */6 * * *' + push: + branches: ['master', 'release-*'] + tags: ['v*'] + pull_request: + branches: ['master', 'release-*'] + tags: ['v*'] +# paths: ['sdks/java/io/parquet/**'] +permissions: read-all + +jobs: + java-parquet-io: + name: Run Java Parquet IO + runs-on: self-hosted + timeout-minutes: 60 + steps: + - name: Checkout code + uses: actions/checkout@v3 + with: + persist-credentials: false + submodules: recursive + - name: Setup environment + uses: ./.github/actions/setup-self-hosted-action + with: + requires-py-37: false + requires-py-38: false + requires-py-39: false + requires-go-18: false + - name: Run :sdks:java:io:parquet:test + uses: ./.github/actions/gradle-command-self-hosted-action + with: + gradle-command: :sdks:java:io:parquet:test \ No newline at end of file diff --git a/.github/workflows/job-precommit-java-pulsar-io.yml b/.github/workflows/job-precommit-java-pulsar-io.yml new file mode 100644 index 000000000000..a00352794539 --- /dev/null +++ b/.github/workflows/job-precommit-java-pulsar-io.yml @@ -0,0 +1,55 @@ +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you 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 +# +# http://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. + +# This workflow will run Pulsar IO Unit Tests in Java SDK + +name: Java Pulsar IO + +on: + schedule: + - cron: '0 */6 * * *' + push: + branches: ['master', 'release-*'] + tags: ['v*'] + pull_request: + branches: ['master', 'release-*'] + tags: ['v*'] +# paths: ['sdks/java/io/pulsar/**'] +permissions: read-all + +jobs: + java-pulsar-io: + name: Run Java Pulsar IO + runs-on: self-hosted + timeout-minutes: 60 + steps: + - name: Checkout code + uses: actions/checkout@v3 + with: + persist-credentials: false + submodules: recursive + - name: Setup environment + uses: ./.github/actions/setup-self-hosted-action + with: + requires-py-37: false + requires-py-38: false + requires-py-39: false + requires-go-18: false + - name: Run :sdks:java:io:pulsar:test + uses: ./.github/actions/gradle-command-self-hosted-action + with: + gradle-command: :sdks:java:io:pulsar:test \ No newline at end of file diff --git a/.github/workflows/job-precommit-java-rabbitmq-io.yml b/.github/workflows/job-precommit-java-rabbitmq-io.yml new file mode 100644 index 000000000000..371398386db9 --- /dev/null +++ b/.github/workflows/job-precommit-java-rabbitmq-io.yml @@ -0,0 +1,55 @@ +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you 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 +# +# http://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. + +# This workflow will run RabbitMQ IO Unit Tests in Java SDK + +name: Java RabbitMQ IO + +on: + schedule: + - cron: '0 */6 * * *' + push: + branches: ['master', 'release-*'] + tags: ['v*'] + pull_request: + branches: ['master', 'release-*'] + tags: ['v*'] +# paths: ['sdks/java/io/rabbitmq/**'] +permissions: read-all + +jobs: + java-rabbitmq-io: + name: Run Java RabbitMQ IO + runs-on: self-hosted + timeout-minutes: 60 + steps: + - name: Checkout code + uses: actions/checkout@v3 + with: + persist-credentials: false + submodules: recursive + - name: Setup environment + uses: ./.github/actions/setup-self-hosted-action + with: + requires-py-37: false + requires-py-38: false + requires-py-39: false + requires-go-18: false + - name: Run :sdks:java:io:rabbitmq:test + uses: ./.github/actions/gradle-command-self-hosted-action + with: + gradle-command: :sdks:java:io:rabbitmq:test \ No newline at end of file diff --git a/.github/workflows/job-precommit-java-redis-io.yml b/.github/workflows/job-precommit-java-redis-io.yml new file mode 100644 index 000000000000..b7b2c922ccb7 --- /dev/null +++ b/.github/workflows/job-precommit-java-redis-io.yml @@ -0,0 +1,55 @@ +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you 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 +# +# http://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. + +# This workflow will run Redis IO Unit Tests in Java SDK + +name: Java Redis IO + +on: + schedule: + - cron: '0 */6 * * *' + push: + branches: ['master', 'release-*'] + tags: ['v*'] + pull_request: + branches: ['master', 'release-*'] + tags: ['v*'] +# paths: ['sdks/java/io/redis/**'] +permissions: read-all + +jobs: + java-redis-io: + name: Run Java Redis IO + runs-on: self-hosted + timeout-minutes: 60 + steps: + - name: Checkout code + uses: actions/checkout@v3 + with: + persist-credentials: false + submodules: recursive + - name: Setup environment + uses: ./.github/actions/setup-self-hosted-action + with: + requires-py-37: false + requires-py-38: false + requires-py-39: false + requires-go-18: false + - name: Run :sdks:java:io:redis:test + uses: ./.github/actions/gradle-command-self-hosted-action + with: + gradle-command: :sdks:java:io:redis:test \ No newline at end of file diff --git a/CI.md b/CI.md index ed75a4dd4433..65da4eac8aab 100644 --- a/CI.md +++ b/CI.md @@ -125,6 +125,33 @@ Service Account shall have following permissions ([IAM roles](https://cloud.goog | Java Wordcount Direct Runner | Runs Java WordCount example with Direct Runner. | Yes | Yes | Yes | - | | Java Wordcount Dataflow | Runs Java WordCount example with DataFlow Runner. | - | Yes | Yes | Yes | +### PreCommit Workflows + +#### Java MQTT IO - [job-precommit-java-mqtt-io.yml](.github/workflows/job-precommit-java-mqtt-io.yml) +| Job | Description | Pull Request Run | Direct Push/Merge Run | Scheduled Run | Requires GCP Credentials | +|------------------|------------------------------|------------------|-----------------------|---------------|--------------------------| +| Run Java MQTT IO | Runs Java MQTT IO Unit Tests | Yes | Yes | Yes | - | + +#### Java Parquet IO - [job-precommit-java-parquet-io.yml](.github/workflows/job-precommit-java-parquet-io.yml) +| Job | Description | Pull Request Run | Direct Push/Merge Run | Scheduled Run | Requires GCP Credentials | +|---------------------|---------------------------------|------------------|-----------------------|---------------|--------------------------| +| Run Java Parquet IO | Runs Java Parquet IO Unit Tests | Yes | Yes | Yes | - | + +#### Java Pulsar IO - [job-precommit-java-pulsar-io.yml](.github/workflows/job-precommit-java-pulsar-io.yml) +| Job | Description | Pull Request Run | Direct Push/Merge Run | Scheduled Run | Requires GCP Credentials | +|--------------------|--------------------------------|------------------|-----------------------|---------------|--------------------------| +| Run Java Pulsar IO | Runs Java Pulsar IO Unit Tests | Yes | Yes | Yes | - | + +#### Java RabbitMQ IO - [job-precommit-java-rabbitmq-io.yml](.github/workflows/job-precommit-java-rabbitmq-io.yml) +| Job | Description | Pull Request Run | Direct Push/Merge Run | Scheduled Run | Requires GCP Credentials | +|----------------------|----------------------------------|------------------|-----------------------|---------------|--------------------------| +| Run Java RabbitMQ IO | Runs Java RabbitMQ IO Unit Tests | Yes | Yes | Yes | - | + +#### Java Redis IO - [job-precommit-java-redis-io.yml](.github/workflows/job-precommit-java-redis-io.yml) +| Job | Description | Pull Request Run | Direct Push/Merge Run | Scheduled Run | Requires GCP Credentials | +|-------------------|-------------------------------|------------------|-----------------------|---------------|--------------------------| +| Run Java Redis IO | Runs Java Redis IO Unit Tests | Yes | Yes | Yes | - | + ### GitHub Action Tips * If you introduce changes to the workflow it is possible that your changes will not be present in the check run triggered in Pull Request.