Add DCO Documentation and github configurations #129
This file contains hidden or 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
| name: CI | |
| on: | |
| # Called when code gets pushed to the main branch | |
| push: | |
| branches: | |
| - main | |
| paths-ignore: | |
| - '.github/**' | |
| # Called by UI | |
| workflow_dispatch: | |
| # Called by the CI PR workflow (invokes main CI but skips publish and push) | |
| workflow_call: | |
| inputs: | |
| maven-build-only: | |
| type: boolean | |
| description: Skip Artifactory publish and Docker push for all apps | |
| required: false | |
| default: false | |
| secrets: | |
| JF_ARTIFACTORY_SPRING: | |
| description: 'encoded JFrog server id configuration' | |
| required: false | |
| DOCKER_USERNAME: | |
| description: 'docker username' | |
| required: false | |
| DOCKER_TOKEN: | |
| description: 'docker password' | |
| required: false | |
| jobs: | |
| kafka-samples: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v2 | |
| - uses: ./.github/actions/build-sample-app | |
| with: | |
| app-dir: 'kafka-samples' | |
| mvn-build-commands: '-B clean verify -Pspring' | |
| artifactory-publish: ${{ inputs.maven-build-only != true }} | |
| jf-artifactory-spring: ${{ secrets.JF_ARTIFACTORY_SPRING }} | |
| restaurant-stream-apps-customer: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v2 | |
| - uses: ./.github/actions/build-sample-app | |
| with: | |
| app-dir: 'restaurant-stream-apps/scdf-app-customer' | |
| mvn-build-commands: '-B clean install spring-boot:build-image' | |
| artifactory-publish: ${{ inputs.maven-build-only != true }} | |
| jf-artifactory-spring: ${{ secrets.JF_ARTIFACTORY_SPRING }} | |
| docker-push: ${{ inputs.maven-build-only != true }} | |
| docker-username: ${{ secrets.DOCKERHUB_USERNAME }} | |
| docker-password: ${{ secrets.DOCKERHUB_TOKEN }} | |
| docker-images: 'springcloudstream/scdf-app-customer:1.0.0-SNAPSHOT' | |
| restaurant-stream-apps-kitchen: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v2 | |
| - uses: ./.github/actions/build-sample-app | |
| with: | |
| app-dir: 'restaurant-stream-apps/scdf-app-kitchen' | |
| mvn-build-commands: '-B clean install spring-boot:build-image' | |
| artifactory-publish: ${{ inputs.maven-build-only != true }} | |
| jf-artifactory-spring: ${{ secrets.JF_ARTIFACTORY_SPRING }} | |
| docker-push: ${{ inputs.maven-build-only != true }} | |
| docker-username: ${{ secrets.DOCKERHUB_USERNAME }} | |
| docker-password: ${{ secrets.DOCKERHUB_TOKEN }} | |
| docker-images: 'springcloudstream/scdf-app-kitchen:1.0.0-SNAPSHOT' | |
| restaurant-stream-apps-waitron: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v2 | |
| - uses: ./.github/actions/build-sample-app | |
| with: | |
| app-dir: 'restaurant-stream-apps/scdf-app-waitron' | |
| mvn-build-commands: '-B clean install spring-boot:build-image' | |
| artifactory-publish: ${{ inputs.maven-build-only != true }} | |
| jf-artifactory-spring: ${{ secrets.JF_ARTIFACTORY_SPRING }} | |
| docker-push: ${{ inputs.maven-build-only != true }} | |
| docker-username: ${{ secrets.DOCKERHUB_USERNAME }} | |
| docker-password: ${{ secrets.DOCKERHUB_TOKEN }} | |
| docker-images: 'springcloudstream/scdf-app-waitron:1.0.0-SNAPSHOT' | |
| multi-io-ticktock: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v2 | |
| - uses: ./.github/actions/build-sample-app | |
| with: | |
| app-dir: 'multi-io-samples/ticktock' | |
| mvn-build-commands: '-B clean install -Dmaven.javadoc.skip=true spring-boot:build-image -pl multi-output-time-rabbit,multi-input-log-rabbit,multi-output-time-kafka,multi-input-log-kafka' | |
| multi-io-http-purchase-orders: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v2 | |
| - uses: ./.github/actions/build-sample-app | |
| with: | |
| app-dir: 'multi-io-samples/purchase-orders/http-purchase-orders' | |
| mvn-build-commands: '-B clean install spring-boot:build-image' | |
| docker-push: ${{ inputs.maven-build-only != true }} | |
| docker-username: ${{ secrets.DOCKERHUB_USERNAME }} | |
| docker-password: ${{ secrets.DOCKERHUB_TOKEN }} | |
| docker-images: >- | |
| springcloudstream/multi-io-sample-http-purchase-orders:2.0.0-SNAPSHOT | |
| user-clicks-per-region-12x: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v2 | |
| - uses: ./.github/actions/build-sample-app | |
| with: | |
| app-dir: 'multi-io-samples/kafka-streams/user-clicks-per-region-1.2.x' | |
| mvn-build-commands: '-B clean install spring-boot:build-image -pl http-click-ingest,http-region-ingest,http-clicks-and-region-ingest,user-clicks-per-region-processor,log-user-clicks-per-region' | |
| artifactory-publish: ${{ inputs.maven-build-only != true }} | |
| jf-artifactory-spring: ${{ secrets.JF_ARTIFACTORY_SPRING }} | |
| docker-push: ${{ inputs.maven-build-only != true }} | |
| docker-username: ${{ secrets.DOCKERHUB_USERNAME }} | |
| docker-password: ${{ secrets.DOCKERHUB_TOKEN }} | |
| docker-images: >- | |
| springcloudstream/multi-io-sample-http-click-ingest:2.0.0-SNAPSHOT | |
| springcloudstream/multi-io-sample-http-region-ingest:2.0.0-SNAPSHOT | |
| springcloudstream/multi-io-sample-http-clicks-and-region-ingest:2.0.0-SNAPSHOT | |
| springcloudstream/multi-io-sample-user-clicks-per-region-processor:2.0.0-SNAPSHOT | |
| springcloudstream/multi-io-sample-log-user-clicks-per-region:2.0.0-SNAPSHOT | |
| function-samples: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v2 | |
| - uses: ./.github/actions/build-sample-app | |
| with: | |
| app-dir: 'function-samples' | |
| mvn-build-commands: '-B clean verify -Pspring' | |
| artifactory-publish: ${{ inputs.maven-build-only != true }} | |
| jf-artifactory-spring: ${{ secrets.JF_ARTIFACTORY_SPRING }} | |
| function-samples-uppercase-processor: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v2 | |
| - uses: ./.github/actions/build-sample-app | |
| with: | |
| app-dir: 'function-samples/uppercase-processor' | |
| mvn-build-commands: '-B clean install spring-boot:build-image' | |
| artifactory-publish: ${{ inputs.maven-build-only != true }} | |
| jf-artifactory-spring: ${{ secrets.JF_ARTIFACTORY_SPRING }} | |
| docker-push: ${{ inputs.maven-build-only != true }} | |
| docker-username: ${{ secrets.DOCKERHUB_USERNAME }} | |
| docker-password: ${{ secrets.DOCKERHUB_TOKEN }} | |
| docker-images: >- | |
| springcloudstream/uppercase-processor:2.0.0-SNAPSHOT | |
| stream-dev-guides-standalone-stream-kafka: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v2 | |
| - uses: ./.github/actions/build-sample-app | |
| with: | |
| app-dir: 'dataflow-website/stream-developer-guides/streams/standalone-stream-sample' | |
| mvn-build-commands: '-B clean install spring-boot:build-image' | |
| artifactory-publish: ${{ inputs.maven-build-only != true }} | |
| jf-artifactory-spring: ${{ secrets.JF_ARTIFACTORY_SPRING }} | |
| docker-push: ${{ inputs.maven-build-only != true }} | |
| docker-username: ${{ secrets.DOCKERHUB_USERNAME }} | |
| docker-password: ${{ secrets.DOCKERHUB_TOKEN }} | |
| docker-images: >- | |
| springcloudstream/usage-detail-sender-kafka:2.0.0-SNAPSHOT | |
| springcloudstream/usage-cost-processor-kafka:2.0.0-SNAPSHOT | |
| springcloudstream/usage-cost-logger-kafka:2.0.0-SNAPSHOT | |
| stream-dev-guides-standalone-stream-rabbitmq: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v2 | |
| - uses: ./.github/actions/build-sample-app | |
| with: | |
| app-dir: 'dataflow-website/stream-developer-guides/streams/standalone-stream-sample' | |
| mvn-build-commands: '-B clean install -Prabbit spring-boot:build-image' | |
| artifactory-publish: ${{ inputs.maven-build-only != true }} | |
| jf-artifactory-spring: ${{ secrets.JF_ARTIFACTORY_SPRING }} | |
| jf-mvn-build-commands: '-B clean install -Prabbit -DskipTests' | |
| docker-push: ${{ inputs.maven-build-only != true }} | |
| docker-username: ${{ secrets.DOCKERHUB_USERNAME }} | |
| docker-password: ${{ secrets.DOCKERHUB_TOKEN }} | |
| docker-images: >- | |
| springcloudstream/usage-detail-sender-rabbit:2.0.0-SNAPSHOT | |
| springcloudstream/usage-cost-processor-rabbit:2.0.0-SNAPSHOT | |
| springcloudstream/usage-cost-logger-rabbit:2.0.0-SNAPSHOT | |
| batch-dev-guides-batchsamples: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v2 | |
| - uses: ./.github/actions/build-sample-app | |
| with: | |
| app-dir: 'dataflow-website/batch-developer-guides/batch/batchsamples' | |
| mvn-build-commands: '-B clean install spring-boot:build-image' | |
| artifactory-publish: ${{ inputs.maven-build-only != true }} | |
| jf-artifactory-spring: ${{ secrets.JF_ARTIFACTORY_SPRING }} | |
| docker-push: ${{ inputs.maven-build-only != true }} | |
| docker-username: ${{ secrets.DOCKERHUB_USERNAME }} | |
| docker-password: ${{ secrets.DOCKERHUB_TOKEN }} | |
| docker-images: >- | |
| springcloudtask/billsetuptask:2.0.0-SNAPSHOT | |
| stream-dev-guides-composed-http-transformer-kafka: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v2 | |
| - uses: ./.github/actions/build-sample-app | |
| with: | |
| app-dir: 'dataflow-website/stream-developer-guides/feature-guides/streams/function-composition/composed-http-transformer-kafka' | |
| mvn-build-commands: '-B clean install spring-boot:build-image' | |
| artifactory-publish: ${{ inputs.maven-build-only != true }} | |
| jf-artifactory-spring: ${{ secrets.JF_ARTIFACTORY_SPRING }} | |
| docker-push: ${{ inputs.maven-build-only != true }} | |
| docker-username: ${{ secrets.DOCKERHUB_USERNAME }} | |
| docker-password: ${{ secrets.DOCKERHUB_TOKEN }} | |
| docker-images: >- | |
| springcloudstream/composed-http-transformer-kafka:2.0.0-SNAPSHOT | |
| stream-dev-guides-composed-http-transformer-kotlin-kafka: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v2 | |
| - uses: ./.github/actions/build-sample-app | |
| with: | |
| app-dir: 'dataflow-website/stream-developer-guides/feature-guides/streams/function-composition/composed-http-transformer-kotlin-kafka' | |
| mvn-build-commands: '-B clean install spring-boot:build-image' | |
| artifactory-publish: ${{ inputs.maven-build-only != true }} | |
| jf-artifactory-spring: ${{ secrets.JF_ARTIFACTORY_SPRING }} | |
| docker-push: ${{ inputs.maven-build-only != true }} | |
| docker-username: ${{ secrets.DOCKERHUB_USERNAME }} | |
| docker-password: ${{ secrets.DOCKERHUB_TOKEN }} | |
| docker-images: >- | |
| springcloudstream/composed-http-transformer-kotlin-kafka:2.0.0-SNAPSHOT | |
| stream-dev-guides-composed-http-transformer-rabbitmq: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v2 | |
| - uses: ./.github/actions/build-sample-app | |
| with: | |
| app-dir: 'dataflow-website/stream-developer-guides/feature-guides/streams/function-composition/composed-http-transformer-rabbitmq' | |
| mvn-build-commands: '-B clean install spring-boot:build-image' | |
| artifactory-publish: ${{ inputs.maven-build-only != true }} | |
| jf-artifactory-spring: ${{ secrets.JF_ARTIFACTORY_SPRING }} | |
| docker-push: ${{ inputs.maven-build-only != true }} | |
| docker-username: ${{ secrets.DOCKERHUB_USERNAME }} | |
| docker-password: ${{ secrets.DOCKERHUB_TOKEN }} | |
| docker-images: >- | |
| springcloudstream/composed-http-transformer-rabbitmq:2.0.0-SNAPSHOT | |
| stream-dev-guides-composed-http-transformer-kotlin-rabbitmq: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v2 | |
| - uses: ./.github/actions/build-sample-app | |
| with: | |
| app-dir: 'dataflow-website/stream-developer-guides/feature-guides/streams/function-composition/composed-http-transformer-kotlin-rabbitmq' | |
| mvn-build-commands: '-B clean install spring-boot:build-image' | |
| artifactory-publish: ${{ inputs.maven-build-only != true }} | |
| jf-artifactory-spring: ${{ secrets.JF_ARTIFACTORY_SPRING }} | |
| docker-push: ${{ inputs.maven-build-only != true }} | |
| docker-username: ${{ secrets.DOCKERHUB_USERNAME }} | |
| docker-password: ${{ secrets.DOCKERHUB_TOKEN }} | |
| docker-images: >- | |
| springcloudstream/composed-http-transformer-kotlin-rabbitmq:2.0.0-SNAPSHOT | |
| task-demo-metrics-prometheus: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v2 | |
| - uses: ./.github/actions/build-sample-app | |
| with: | |
| app-dir: 'monitoring-samples/task-apps/task-demo-metrics-prometheus' | |
| mvn-build-commands: '-B clean install spring-boot:build-image' | |
| artifactory-publish: ${{ inputs.maven-build-only != true }} | |
| jf-artifactory-spring: ${{ secrets.JF_ARTIFACTORY_SPRING }} | |
| docker-push: ${{ inputs.maven-build-only != true }} | |
| docker-username: ${{ secrets.DOCKERHUB_USERNAME }} | |
| docker-password: ${{ secrets.DOCKERHUB_TOKEN }} | |
| docker-images: 'springcloudtask/task-demo-metrics-prometheus:2.0.1-SNAPSHOT' | |
| scenario-task: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v2 | |
| - uses: ./.github/actions/build-sample-app | |
| with: | |
| app-dir: 'scenario-task' | |
| mvn-build-commands: '-B clean install spring-boot:build-image' | |
| artifactory-publish: ${{ inputs.maven-build-only != true }} | |
| jf-artifactory-spring: ${{ secrets.JF_ARTIFACTORY_SPRING }} | |
| docker-push: ${{ inputs.maven-build-only != true }} | |
| docker-username: ${{ secrets.DOCKERHUB_USERNAME }} | |
| docker-password: ${{ secrets.DOCKERHUB_TOKEN }} | |
| docker-images: >- | |
| springcloudtask/scenario-task:2.0.0 | |
| scenario-task-3: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v2 | |
| - uses: ./.github/actions/build-sample-app | |
| with: | |
| app-dir: 'scenario-task-3' | |
| mvn-build-commands: '-B clean install spring-boot:build-image' | |
| java-version: '17' | |
| artifactory-publish: ${{ inputs.maven-build-only != true }} | |
| jf-artifactory-spring: ${{ secrets.JF_ARTIFACTORY_SPRING }} | |
| jf-mvn-build-commands: '-B clean install -DskipTests' | |
| docker-push: ${{ inputs.maven-build-only != true }} | |
| docker-username: ${{ secrets.DOCKERHUB_USERNAME }} | |
| docker-password: ${{ secrets.DOCKERHUB_TOKEN }} | |
| docker-images: >- | |
| springcloudtask/scenario-task:3.0.0 | |
| timestamp-task-30x: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v2 | |
| - uses: ./.github/actions/build-sample-app | |
| with: | |
| app-dir: 'timestamp-task-3.0.x' | |
| mvn-build-commands: '-B clean install spring-boot:build-image -Pnative' | |
| artifactory-publish: ${{ inputs.maven-build-only != true }} | |
| jf-artifactory-spring: ${{ secrets.JF_ARTIFACTORY_SPRING }} | |
| artifactory-repo-deploy-releases: 'libs-milestone-local' | |
| docker-push: ${{ inputs.maven-build-only != true }} | |
| docker-username: ${{ secrets.DOCKERHUB_USERNAME }} | |
| docker-password: ${{ secrets.DOCKERHUB_TOKEN }} | |
| java-version: '17' | |
| docker-images: 'springcloudtask/timestamp-task:3.0.0' | |
| timestamp-batch-30x: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v2 | |
| - uses: ./.github/actions/build-sample-app | |
| with: | |
| app-dir: 'timestamp-batch-3.0.x' | |
| mvn-build-commands: '-B clean install spring-boot:build-image -Pnative' | |
| artifactory-publish: ${{ inputs.maven-build-only != true }} | |
| jf-artifactory-spring: ${{ secrets.JF_ARTIFACTORY_SPRING }} | |
| artifactory-repo-deploy-releases: 'libs-milestone-local' | |
| docker-push: ${{ inputs.maven-build-only != true }} | |
| docker-username: ${{ secrets.DOCKERHUB_USERNAME }} | |
| docker-password: ${{ secrets.DOCKERHUB_TOKEN }} | |
| java-version: '17' | |
| docker-images: 'springcloudtask/timestamp-batch-task:3.0.0' | |
| timestamp-task-20x: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v2 | |
| - uses: ./.github/actions/build-sample-app | |
| with: | |
| app-dir: 'timestamp-task-2.0.x' | |
| mvn-build-commands: '-B clean install spring-boot:build-image' | |
| artifactory-publish: ${{ inputs.maven-build-only != true }} | |
| jf-artifactory-spring: ${{ secrets.JF_ARTIFACTORY_SPRING }} | |
| artifactory-repo-deploy-releases: 'libs-milestone-local' | |
| docker-push: ${{ inputs.maven-build-only != true }} | |
| docker-username: ${{ secrets.DOCKERHUB_USERNAME }} | |
| docker-password: ${{ secrets.DOCKERHUB_TOKEN }} | |
| java-version: '8' | |
| docker-images: 'springcloudtask/timestamp-task:2.0.2' | |
| timestamp-batch-20x: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v2 | |
| - uses: ./.github/actions/build-sample-app | |
| with: | |
| app-dir: 'timestamp-batch-2.0.x' | |
| mvn-build-commands: '-B clean install spring-boot:build-image' | |
| artifactory-publish: ${{ inputs.maven-build-only != true }} | |
| jf-artifactory-spring: ${{ secrets.JF_ARTIFACTORY_SPRING }} | |
| artifactory-repo-deploy-releases: 'libs-milestone-local' | |
| docker-push: ${{ inputs.maven-build-only != true }} | |
| docker-username: ${{ secrets.DOCKERHUB_USERNAME }} | |
| docker-password: ${{ secrets.DOCKERHUB_TOKEN }} | |
| java-version: '8' | |
| docker-images: 'springcloudtask/timestamp-batch-task:2.0.2' | |
| completed: | |
| runs-on: ubuntu-latest | |
| needs: | |
| - kafka-samples | |
| - restaurant-stream-apps-customer | |
| - restaurant-stream-apps-kitchen | |
| - restaurant-stream-apps-waitron | |
| - multi-io-ticktock | |
| - multi-io-http-purchase-orders | |
| - user-clicks-per-region-12x | |
| - function-samples | |
| - function-samples-uppercase-processor | |
| - stream-dev-guides-standalone-stream-kafka | |
| - stream-dev-guides-standalone-stream-rabbitmq | |
| - batch-dev-guides-batchsamples | |
| - stream-dev-guides-composed-http-transformer-kafka | |
| - stream-dev-guides-composed-http-transformer-kotlin-kafka | |
| - stream-dev-guides-composed-http-transformer-rabbitmq | |
| - stream-dev-guides-composed-http-transformer-kotlin-rabbitmq | |
| - task-demo-metrics-prometheus | |
| - scenario-task | |
| - scenario-task-3 | |
| - timestamp-task-30x | |
| - timestamp-batch-30x | |
| - timestamp-task-20x | |
| - timestamp-batch-20x | |
| steps: | |
| - name: 'Completed' | |
| shell: bash | |
| run: echo "::info ::completed" |