Skip to content

Fix data store bug where late arrival of submitted message would cause backwards state change #10261

Fix data store bug where late arrival of submitted message would cause backwards state change

Fix data store bug where late arrival of submitted message would cause backwards state change #10261

Workflow file for this run

# Workflow for testing multiple bash versions with Docker
name: bash
on:
workflow_dispatch:
pull_request:
paths-ignore:
- '.github/workflows/*.ya?ml'
- '!.github/workflows/bash.yml'
- 'cylc/flow/etc/syntax/**'
- 'etc/syntax/**'
- 'tests/unit/**'
- 'tests/integration/**'
- '**.md'
- '**/README*/**'
push:
branches:
- master
- '8.*.x'
paths-ignore:
- '.github/workflows/*.ya?ml'
- '!.github/workflows/bash.yml'
- 'cylc/flow/etc/syntax/**'
- 'etc/syntax/**'
- 'tests/unit/**'
- 'tests/integration/**'
- '**.md'
- '**/README*/**'
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
defaults:
run:
shell: bash
env:
FORCE_COLOR: 2
PIP_PROGRESS_BAR: off
jobs:
bash-docker:
runs-on: ubuntu-latest
timeout-minutes: 15
strategy:
fail-fast: false
matrix:
bash-version:
- '3.2'
- '4.2'
# if you use a value like 5.0, YAML will round it to 5, which will cause an error later on
- '5.0'
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Run Docker container
run: |
docker pull ghcr.io/cylc/cylc-bash-testing:master
docker run --name bash -v $(pwd -P):/root/cylc-flow --rm -t -d -m 1G --memory-swap 1G ghcr.io/cylc/cylc-bash-testing:master /bin/bash
docker ps -a
- name: Install Cylc dependencies in the container
run: |
docker exec bash python3.7 -m pip install six==1.12
docker exec -w /root/cylc-flow bash python3.7 -m pip install .[all]
- name: Set the container bash version
run: docker exec bash update-alternatives --set bash /bash/bash-${{ matrix.bash-version }}
- name: Run functional tests that validate or are related to how Cylc uses bash
run: |
docker exec -w /root/cylc-flow bash \
./etc/bin/run-functional-tests -v \
tests/functional/broadcast/00-simple.t \
tests/functional/cylc-poll/11-event-time.t \
tests/functional/cylc-poll/15-job-st-file-no-batch.t \
tests/functional/events/28-inactivity.t \
tests/functional/events/34-task-abort.t \
tests/functional/job-file-trap/00-sigusr1.t \
tests/functional/job-file-trap/02-pipefail.t \
tests/functional/job-file-trap/03-user-trap.t \
tests/functional/jobscript/00-torture.t \
tests/functional/pause-resume/12-pause-then-retry.t \
tests/functional/shutdown/09-now2.t \
tests/functional/shutdown/13-no-port-file-check.t \
tests/functional/shutdown/14-no-dir-check.t
- name: Copy cylc-run out of container
if: failure()
run: |
docker cp bash:/root/cylc-run .
- name: Upload artifact
if: failure()
uses: actions/upload-artifact@v4
with:
name: 'cylc-run (bash-${{ matrix.bash-version }})'
path: cylc-run
include-hidden-files: true