Skip to content

Commit

Permalink
Merge pull request #277 from CleverTap/develop
Browse files Browse the repository at this point in the history
[SDK-1648] Release clevertap-xps v1.4.0 and clevertap-core v4.5.0
  • Loading branch information
piyush-kukadiya authored Jun 3, 2022
2 parents 9c3a3b1 + e8c6ab3 commit 465c6ec
Show file tree
Hide file tree
Showing 83 changed files with 3,598 additions and 301 deletions.
16 changes: 16 additions & 0 deletions .github/mini_flows/s1_mandatory_filechanges/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
runs:
using: "composite"
steps:
- name: Setup Path Filter task and Execute
uses: dorny/paths-filter@v2
id: filter
with:
filters: |
md: ['CHANGELOG.md']
- name: FAIL if mandatory files are not changed
if: ${{ steps.filter.outputs.md == 'false' }}
uses: actions/github-script@v3
with:
script: |
core.setFailed('Mandatory markdown files were not changed')
9 changes: 9 additions & 0 deletions .github/mini_flows/s2_setup_jdk/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
runs:
using: "composite"
steps:
- name: Setup JDK 11
uses: actions/setup-java@v2
with:
java-version: '11'
distribution: 'temurin'
cache: gradle
18 changes: 18 additions & 0 deletions .github/mini_flows/s3_lint/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
runs:
using: "composite"
steps:
- name: Check lint
shell: bash
run: ./gradlew :clevertap-core:lint :clevertap-geofence:lint :clevertap-hms:lint :clevertap-pushTemplates:lint :clevertap-xps:lint

- name: Upload Lint results
if: always()
uses: actions/upload-artifact@v2
with:
name: lint_results
path: |
clevertap-core/build/reports/lint-results.html
clevertap-hms/build/reports/lint-results.html
clevertap-xps/build/reports/lint-results.html
clevertap-geofence/build/reports/lint-results.html
clevertap-pushTemplates/build/reports/lint-results.html
19 changes: 19 additions & 0 deletions .github/mini_flows/s4_detekt/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
runs:
using: "composite"
steps:
- name: CodeAnalysis via detekt
shell: bash
run: ./gradlew :clevertap-core:detekt :clevertap-geofence:detekt :clevertap-hms:detekt :clevertap-pushTemplates:detekt :clevertap-xps:detekt

- name: Upload detekt results
if: always()
uses: actions/upload-artifact@v2
with:
name: detekt_results
path: |
clevertap-core/build/reports/detekt
clevertap-hms/build/reports/detekt
clevertap-xps/build/reports/detekt
clevertap-geofence/build/reports/detekt
clevertap-pushTemplates/build/reports/detekt
20 changes: 20 additions & 0 deletions .github/mini_flows/s5_checkstyle/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
runs:
using: "composite"
steps:

- name: CodeAnalysis via checkstyle
shell: bash
run: ./gradlew :clevertap-core:checkstyle :clevertap-geofence:checkstyle :clevertap-hms:checkstyle :clevertap-pushTemplates:checkstyle :clevertap-xps:checkstyle

- name: Upload checkstyle results
if: always()
uses: actions/upload-artifact@v2
with:
name: checkstyle_results
path: |
clevertap-core/build/reports/checkstyle
clevertap-hms/build/reports/checkstyle
clevertap-xps/build/reports/checkstyle
clevertap-geofence/build/reports/checkstyle
clevertap-pushTemplates/build/reports/checkstyle
36 changes: 36 additions & 0 deletions .github/mini_flows/s6_test_coverage/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
runs:
using: "composite"
steps:

- name: Run Unit Tests And Code Coverage (DEBUG)
shell: bash
run: ./gradlew :clevertap-core:jacocoTestReportDebug :clevertap-geofence:jacocoTestReportDebug :clevertap-hms:jacocoTestReportDebug :clevertap-pushTemplates:jacocoTestReportDebug :clevertap-xps:jacocoTestReportDebug

- name: Run Unit Tests And Code Coverage (RELEASE)
shell: bash
run: ./gradlew :clevertap-core:jacocoTestReportRelease :clevertap-geofence:jacocoTestReportRelease :clevertap-hms:jacocoTestReportRelease :clevertap-pushTemplates:jacocoTestReportRelease :clevertap-xps:jacocoTestReportRelease

- name: Upload Unit tests
if: always()
uses: actions/upload-artifact@v2
with:
name: unit-tests-results.zip
path: |
clevertap-core/build/reports/tests
clevertap-core/build/reports/jacoco
clevertap-hms/build/reports/tests
clevertap-hms/build/reports/jacoco
clevertap-xps/build/reports/tests
clevertap-xps/build/reports/jacoco
clevertap-geofence/build/reports/tests
clevertap-geofence/build/reports/jacoco
clevertap-pushTemplates/build/reports/tests
clevertap-pushTemplates/build/reports/jacoco
#todo : set success/failure as output and use slack action to send message . setting success failure: https://docs.github.com/en/actions/creating-actions/metadata-syntax-for-github-actions#outputs-for-composite-actions
24 changes: 24 additions & 0 deletions .github/mini_flows/s7_build/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
runs:
using: "composite"
steps:

- name: Generate AAR files
shell: bash
run: ./gradlew :clevertap-core:assembleDebug :clevertap-geofence:assembleDebug :clevertap-hms:assembleDebug :clevertap-pushTemplates:assembleDebug :clevertap-xps:assembleDebug

- name: Upload AAR and apk files
if: always()
uses: actions/upload-artifact@v2
with:
name: aars_and_apks.zip
path: |
clevertap-core/build/outputs/aar
clevertap-hms/build/outputs/aar
clevertap-xps/build/outputs/aar
clevertap-geofence/build/outputs/aar
clevertap-pushTemplates/build/outputs/aar
# - name: Set Output
# if: always()
# shell: bash
# run: echo "slack_msg=build code--🔜" >> $GITHUB_ENV
23 changes: 23 additions & 0 deletions .github/mini_flows/s8_maven_release/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# step for calling :
# - name: Release to maven central
# uses: ./.github/mini_flows/s8_maven_release
runs:
using: "composite"
steps:
- name: check commit..
shell: bash
run: echo "hello ${{env.slack_msg}}"

# - name: Publish to MavenCentral
# if: ${{ contains(github.event.head_commit.message, '[UPLOAD]') }}
# shell: bash
# run: ./gradlew publishToSonatype --max-workers 1 closeAndReleaseSonatypeStagingRepository
# env:
# OSSRH_USERNAME: ${{ secrets.OSSRH_USERNAME }}
# OSSRH_PASSWORD: ${{ secrets.OSSRH_PASSWORD }}
# SIGNING_KEY_ID: ${{ secrets.SIGNING_KEY_ID }}
# SIGNING_PASSWORD: ${{ secrets.SIGNING_PASSWORD }}
# SIGNING_KEY: ${{ secrets.SIGNING_KEY }}
# SONATYPE_STAGING_PROFILE_ID: ${{ secrets.SONATYPE_STAGING_PROFILE_ID }}


20 changes: 20 additions & 0 deletions .github/mini_flows/s9_git_release/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
#step for calling ::
# - name: Relase to github
# uses: ./.github/mini_flows/s9_git_release
runs:
using: "composite"
steps:
- name: Release on Github.
shell: bash
run: echo "hello"
# uses: "marvinpinto/action-automatic-releases@latest"
# with:
# repo_token: "${{ secrets.GITHUB_TOKEN }}"
# draft: true
# prerelease: false
# automatic_release_tag: ${{ github.event.inputs.tag_name }}
# title: ${{ github.event.inputs.title }}
# files: |
# dog_network/build/outputs/aar


87 changes: 87 additions & 0 deletions .github/mini_flows/ss1_slack/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,87 @@
# Step to call:
#- name: Slack Status Notification
# if: always()
# uses: ./.github/mini_flows/ss1_slack
# with:
# SLACK_WEBHOOK_URL: ${{ secrets.GITHUB_TOKEN }}
# LAST_RUN_TASK: "Check out code"

inputs:
SLACK_WEBHOOK_URL:
required: false
LAST_RUN_TASK:
required: false

runs:
using: "composite"
steps:
- name: Release on Github.
shell: bash
run: echo "${{inputs.LAST_RUN_TASK}} - ${{ job.status }}"


#runs:
# using: "composite"
# steps:
# - name: Send custom JSON data to Slack workflow.
# id: slack
#
# uses: slackapi/slack-github-action@v1.18.0
# env:
# SLACK_WEBHOOK_URL: ${{ inputs.SLACK_WEBHOOK_URL }} #${{ secrets.SLACK_WEBHOOK_URL }}
# SLACK_WEBHOOK_TYPE: INCOMING_WEBHOOK
# with:
# payload: |
# {
# "attachments": [
# {
# "color": "#4ddbff",
# "blocks": [
# {
# "type": "section",
# "text": {
# "type": "mrkdwn",
# "text": "*GitHub Action build results* ℹ️️"
# }
# },
# {
# "type": "section",
# "text": {
# "type": "mrkdwn",
# "text": "• step info ${{env.slack_msg}}"
# }
# },
# {
# "type": "divider"
# },
# {
# "type": "section",
# "text": {
# "type": "mrkdwn",
# "text": "• commit info : <${{ github.event.pull_request.html_url || github.event.head_commit.url }}|${{github.event.head_commit.message}}>"
# }
# },
#
# {
# "type": "section",
# "text": {
# "type": "mrkdwn",
# "text": "• Job Status: '${{ job.status }}'"
# }
# },
#
# {
# "type": "section",
# "text": {
# "type": "mrkdwn",
# "text": "• Full Runner URL: '${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}'"
# }
# }
#
# ]
# }
# ]
# }
#
#
#
38 changes: 38 additions & 0 deletions .github/mini_flows/ss2_commit_check/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
# step to call :
# - name: Commit Rules Enforcement
# uses: ./.github/mini_flows/ss2_commit_check

runs:
using: "composite"
steps:
- name: check commit..
shell: bash
run: echo "hello ${{env.slack_msg}}"

#runs:
# using: "composite"
# steps:
# - name: check commit.
# run: echo "hello"
# shell: bash
#
# - name: Set Output
# if: always()
# uses: actions/github-script@v3
# run: |
# echo "slack_msg= xyz--🔜" >> $GITHUB_ENV
# shell: bash
#

# - name: validate commit format -- Check if HEAD commit message contains [xyz] or FAIL
# uses: gsactions/commit-message-checker@v1
# with:
# excludeDescription: 'true' # optional: this excludes the description body of a pull request
# excludeTitle: 'true' # optional: this excludes the title of a pull request
# pattern: '^\[[^]]+\].+' # this pattern will take all commits as input and check weather the head commit have one [..] block
# flags: 'g' # more discussion here : https://github.com/GsActions/commit-message-checker/discussions/61,
# error: 'Your head commit must contain `[..]` like "[BUGFIX] or [SDK-974]".'
# checkAllCommitMessages: 'true' # optional: this checks all commits associated with a pull request
# accessToken: ${{ secrets.GITHUB_TOKEN }} # github access token is only required if checkAllCommitMessages is true
# #pattern: '^[^#].{74}' error: 'The maximum line length of 74 characters is exceeded.'
# #pattern: '^.+(Resolves|Fixes): \#[0-9]+$' # Check for Resolves / Fixes
37 changes: 37 additions & 0 deletions .github/workflows/on_pr_from_develop_to_master.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
name: validate PR raised from develop branched to master branch
on:
pull_request:
branches: [ master ]

jobs:
lint-static_checks-test-build:
if: github.head_ref == 'develop'
runs-on: ubuntu-latest
permissions:
contents: read
packages: write

steps:
- name: Checkout the code from Repo
uses: actions/checkout@v2

- name: Mandatory File Changes
uses: ./.github/mini_flows/s1_mandatory_filechanges

- name: Setup JDK 11.
uses: ./.github/mini_flows/s2_setup_jdk

- name: Run lint tests and Upload results
uses: ./.github/mini_flows/s3_lint

- name: Static Code Check Via detekt
uses: ./.github/mini_flows/s4_detekt

- name: Static Code Check Via checkstyle
uses: ./.github/mini_flows/s5_checkstyle

- name: Unit Tests and Jacoco Coverage (DEBUG AND RELEASE)
uses: ./.github/mini_flows/s6_test_coverage

- name: Build Code
uses: ./.github/mini_flows/s7_build
34 changes: 34 additions & 0 deletions .github/workflows/on_pr_from_task_to_develop.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
name: validate PR raised from task/** branched to develop branch
on:
pull_request:
branches: [ develop ]

jobs:
lint-staticChecks-test-build:
if: startsWith(github.head_ref, 'task/')
runs-on: ubuntu-latest
permissions:
contents: read
packages: write

steps:
- name: Checkout the code from Repo
uses: actions/checkout@v2

- name: Setup JDK 11.
uses: ./.github/mini_flows/s2_setup_jdk

- name: Run lint tests and Upload results
uses: ./.github/mini_flows/s3_lint

- name: Static Code Check Via detekt
uses: ./.github/mini_flows/s4_detekt

- name: Static Code Check Via checkstyle
uses: ./.github/mini_flows/s5_checkstyle

- name: Unit Tests and Jacoco Coverage (DEBUG AND RELEASE)
uses: ./.github/mini_flows/s6_test_coverage

- name: Build Code
uses: ./.github/mini_flows/s7_build
Loading

0 comments on commit 465c6ec

Please sign in to comment.