diff --git a/.github/workflows/test-assistant-api-with-date.yml b/.github/workflows/test-assistant-api-with-date.yml index 58ef2eaf515..658cb69955f 100644 --- a/.github/workflows/test-assistant-api-with-date.yml +++ b/.github/workflows/test-assistant-api-with-date.yml @@ -15,8 +15,6 @@ jobs: run: sleep 1m shell: bash -#... previous steps... - - name: Calculate test date id: calculate_date run: | @@ -25,27 +23,20 @@ jobs: # Get the day of the week of the merged PR (0 for Sunday, 1 for Monday, etc.) MERGE_DAY_OF_WEEK=$(date -u -d "${{ github.event.pull_request.merged_at }}" +"%u") - # Calculate days until the next Wednesday after the merge - DAYS_UNTIL_NEXT_WEDNESDAY=$(( (3 - MERGE_DAY_OF_WEEK + 7) % 7 )) - DAYS_UNTIL_NEXT_THURSDAY=$((DAYS_UNTIL_NEXT_WEDNESDAY + 1)) + # Calculate days until the next Thursday after the merge + # If the merge is on Thursday, this will give 7 (i.e., next week's Thursday) + DAYS_UNTIL_NEXT_THURSDAY=$(( (4 + 7 - MERGE_DAY_OF_WEEK) % 7 )) + + # If DAYS_UNTIL_NEXT_THURSDAY is 0, the merge was on a Thursday, so we set it to 7 to get the next Thursday + if [ $DAYS_UNTIL_NEXT_THURSDAY -eq 0 ]; then + DAYS_UNTIL_NEXT_THURSDAY=7 + fi # Calculate the date for the next Thursday after the merge THURSDAY_AFTER_MERGE=$(date -u -d "${{ github.event.pull_request.merged_at }} + $DAYS_UNTIL_NEXT_THURSDAY days" +"%Y-%m-%d") - NEXT_THURSDAY=$(date -u -d "${{ github.event.pull_request.merged_at }} + $(($DAYS_UNTIL_NEXT_THURSDAY + 7)) days" +"%Y-%m-%d") - - CURRENT_TIMESTAMP=$(date -u +"%s") - WEDNESDAY_AFTER_MERGE_TIMESTAMP=$(date -u -d "${{ github.event.pull_request.merged_at }} + $DAYS_UNTIL_NEXT_WEDNESDAY days" +"%s") - - if [[ "$WEDNESDAY_AFTER_MERGE_TIMESTAMP" -le "$CURRENT_TIMESTAMP" ]]; then - TEST_DATE_MESSAGE="Can be tested from: Thursday, $THURSDAY_AFTER_MERGE" - else - TEST_DATE_MESSAGE="Can be tested from: Thursday, $NEXT_THURSDAY" - fi + TEST_DATE_MESSAGE="Can be tested from: Thursday, $THURSDAY_AFTER_MERGE" echo "TEST_DATE_MESSAGE=${TEST_DATE_MESSAGE}" >> $GITHUB_ENV -#... following steps... - - # Notify Slack Step - name: Notify Slack uses: archive/github-actions-slack@d9dae40827adf93bddf939db6552d1e392259d7d