Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/bestpractical/rt.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJim Brandt <jbrandt@bestpractical.com>2021-05-25 16:28:27 +0300
committersunnavy <sunnavy@bestpractical.com>2021-05-28 00:26:18 +0300
commite3ff35b4d6742a55d111f59b8dee6fab46e8bb51 (patch)
treec7486f0fd633dea965f7a20688ba67d559e24a59 /.github
parentb53b91a923b7c12472f9955994b1f8a5e766df87 (diff)
Calculate run time for tests for slack message
Diffstat (limited to '.github')
-rw-r--r--.github/workflows/github-action.yml44
1 files changed, 38 insertions, 6 deletions
diff --git a/.github/workflows/github-action.yml b/.github/workflows/github-action.yml
index 265aca7e1a..e2c1fa73ae 100644
--- a/.github/workflows/github-action.yml
+++ b/.github/workflows/github-action.yml
@@ -7,6 +7,11 @@ jobs:
rt_test_sqlite:
runs-on: ubuntu-latest
steps:
+ - name: Set up for tests
+ shell: bash
+ run: |
+ echo "RT_BRANCH_NAME=${GITHUB_REF#refs/heads/}" >> $GITHUB_ENV
+ echo "RT_GA_START_TIME=$(date +%s)" >> $GITHUB_ENV
- name: Check out RT
uses: actions/checkout@v2
- name: Build RT
@@ -21,6 +26,17 @@ jobs:
- name: Run RT tests
shell: bash
run: docker exec -e RT_TEST_PARALLEL=1 rt bash -c "cd /rt && prove -lj6 t/*"
+ - name: Get run time
+ shell: bash
+ run: |
+ export RT_GA_END_TIME=$(date +%s)
+ echo RT_GA_START_TIME ${{ env.RT_GA_START_TIME }}
+ echo RT_GA_END_TIME $RT_GA_END_TIME
+ echo "RT_GA_END_TIME=$RT_GA_END_TIME" >> $GITHUB_ENV
+ export RT_GA_TEST_TIME=$(( RT_GA_END_TIME - ${{ env.RT_GA_START_TIME }} ))
+ # Convert seconds to HH::MM::SS
+ export RT_GA_TEST_TIME=$(date -u -d @"$RT_GA_TEST_TIME" +"%T")
+ echo "RT_GA_TEST_TIME=$RT_GA_TEST_TIME" >> $GITHUB_ENV
- name: Post results to Slack
if: always()
uses: edge/simple-slack-notify@v1.1.1
@@ -29,15 +45,20 @@ jobs:
with:
channel: '#github'
status: ${{ job.status }}
- success_text: '${env.GITHUB_WORKFLOW} (${env.GITHUB_RUN_NUMBER}) tests completed successfully'
- failure_text: '${env.GITHUB_WORKFLOW} (${env.GITHUB_RUN_NUMBER}) tests failed'
- cancelled_text: '${env.GITHUB_WORKFLOW} (${env.GITHUB_RUN_NUMBER}) tests cancelled'
+ success_text: '${env.RT_BRANCH_NAME} (${env.GITHUB_RUN_NUMBER}) tests completed successfully in ${env.RT_GA_TEST_TIME}'
+ failure_text: '${env.RT_BRANCH_NAME} (${env.GITHUB_RUN_NUMBER}) tests failed in ${env.RT_GA_TEST_TIME}'
+ cancelled_text: '${env.RT_BRANCH_NAME} (${env.GITHUB_RUN_NUMBER}) tests cancelled in ${env.RT_GA_TEST_TIME}'
fields: |
[{ "title": "Configuration", "value": "RT Server, SQLite", "short": true },
{ "title": "URL", "value": "${env.GITHUB_SERVER_URL}/${env.GITHUB_REPOSITORY}/actions/runs/${env.GITHUB_RUN_ID}?check_suite_focus=true", "short": true }]
rt_test_mariadb:
runs-on: ubuntu-latest
steps:
+ - name: Set up for tests
+ shell: bash
+ run: |
+ echo "RT_BRANCH_NAME=${GITHUB_REF#refs/heads/}" >> $GITHUB_ENV
+ echo "RT_GA_START_TIME=$(date +%s)" >> $GITHUB_ENV
- name: Checkout RT
uses: actions/checkout@v2
- name: Build RT
@@ -61,6 +82,17 @@ jobs:
DB_VERSION_TAG: 10.3
shell: bash
run: docker exec -e RT_TEST_PARALLEL=1 -e RT_DBA_USER=root -e RT_DBA_PASSWORD=password rt bash -c "cd /rt && prove -lj6 t/*"
+ - name: Get run time
+ shell: bash
+ run: |
+ export RT_GA_END_TIME=$(date +%s)
+ echo RT_GA_START_TIME ${{ env.RT_GA_START_TIME }}
+ echo RT_GA_END_TIME $RT_GA_END_TIME
+ echo "RT_GA_END_TIME=$RT_GA_END_TIME" >> $GITHUB_ENV
+ export RT_GA_TEST_TIME=$(( RT_GA_END_TIME - ${{ env.RT_GA_START_TIME }} ))
+ # Convert seconds to HH::MM::SS
+ export RT_GA_TEST_TIME=$(date -u -d @"$RT_GA_TEST_TIME" +"%T")
+ echo "RT_GA_TEST_TIME=$RT_GA_TEST_TIME" >> $GITHUB_ENV
- name: Post results to Slack
if: always()
uses: edge/simple-slack-notify@v1.1.1
@@ -69,9 +101,9 @@ jobs:
with:
channel: '#github'
status: ${{ job.status }}
- success_text: '${env.GITHUB_WORKFLOW} (${env.GITHUB_RUN_NUMBER}) tests completed successfully'
- failure_text: '${env.GITHUB_WORKFLOW} (${env.GITHUB_RUN_NUMBER}) tests failed'
- cancelled_text: '${env.GITHUB_WORKFLOW} (${env.GITHUB_RUN_NUMBER}) tests cancelled'
+ success_text: '${env.RT_BRANCH_NAME} (${env.GITHUB_RUN_NUMBER}) tests completed successfully in ${env.RT_GA_TEST_TIME}'
+ failure_text: '${env.RT_BRANCH_NAME} (${env.GITHUB_RUN_NUMBER}) tests failed in ${env.RT_GA_TEST_TIME}'
+ cancelled_text: '${env.RT_BRANCH_NAME} (${env.GITHUB_RUN_NUMBER}) tests cancelled in ${env.RT_GA_TEST_TIME}'
fields: |
[{ "title": "Configuration", "value": "RT Server, MariaDB 10.3", "short": true },
{ "title": "URL", "value": "${env.GITHUB_SERVER_URL}/${env.GITHUB_REPOSITORY}/actions/runs/${env.GITHUB_RUN_ID}?check_suite_focus=true", "short": true }]