Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions .github/workflows/tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,10 +36,14 @@ jobs:
runs-on: ubuntu-latest

steps:
- name: Install GNU parallel for bats --jobs
run: sudo apt-get install -qq -y parallel

- uses: ddev/github-action-add-on-test@v2
with:
ddev_version: ${{ matrix.ddev_version }}
token: ${{ secrets.GITHUB_TOKEN }}
debug_enabled: ${{ github.event.inputs.debug_enabled }}
addon_repository: ${{ env.GITHUB_REPOSITORY }}
addon_ref: ${{ env.GITHUB_REF }}
test_command: ${{ (github.event_name == 'schedule' || github.event_name == 'workflow_dispatch') && 'bats --jobs 4 tests' || 'bats --jobs 4 tests --filter-tags !release' }}
8 changes: 6 additions & 2 deletions tests/test.bats
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@
# For local tests, install bats-core, bats-assert, bats-file, bats-support
# And run this in the add-on root directory:
# bats ./tests/test.bats
# To run tests in parallel (much faster, requires GNU parallel):
# bats --jobs 4 ./tests/test.bats
# To exclude release tests:
# bats ./tests/test.bats --filter-tags '!release'
# For debugging:
Expand All @@ -24,7 +26,7 @@ setup() {
bats_load_library bats-support

export DIR="$(cd "$(dirname "${BATS_TEST_FILENAME}")/.." >/dev/null 2>&1 && pwd)"
export PROJNAME="test-$(basename "${GITHUB_REPO}")"
export PROJNAME="test-$(basename "${GITHUB_REPO}")-${BATS_TEST_NUMBER:-0}"
mkdir -p "${HOME}/tmp"
export TESTDIR="$(mktemp -d "${HOME}/tmp/${PROJNAME}.XXXXXX")"
export DDEV_NONINTERACTIVE=true
Expand All @@ -35,7 +37,9 @@ setup() {
git clone --depth=1 --branch 11.x https://git.drupalcode.org/project/drupal.git "${TESTDIR}"
cd "${TESTDIR}"

run ddev config --project-name="${PROJNAME}" --project-tld=ddev.site --project-type=drupal11 --php-version=8.3
# Omit ddev-ssh-agent so parallel 'ddev start' calls don't race on the
# shared container name; tests use HTTPS for any git operations.
run ddev config --project-name="${PROJNAME}" --project-tld=ddev.site --project-type=drupal11 --php-version=8.3 --omit-containers=ddev-ssh-agent
assert_success
run ddev start -y
assert_success
Expand Down
Loading